llm-gpt4all
llm-cluster
llm-gpt4all | llm-cluster | |
---|---|---|
3 | 3 | |
184 | 60 | |
- | - | |
6.9 | 4.9 | |
12 days ago | 3 months ago | |
Python | Python | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
llm-gpt4all
-
LLM now provides tools for working with embeddings
I'm still iterating on that. Plugins get complete control over the prompts, so they can handle the various weirdnesses of them. Here's some relevant code:
https://github.com/simonw/llm-gpt4all/blob/0046e2bf5d0a9c369...
https://github.com/simonw/llm-mlc/blob/b05eec9ba008e700ecc42...
https://github.com/simonw/llm-llama-cpp/blob/29ee8d239f5cfbf...
I'm not completely happy with this yet. Part of the problem is that different models on the same architecture may have completely different prompting styles.
I expect I'll eventually evolve the plugins to allow them to be configured in an easier and more flexible way. Ideally I'd like you to be able to run new models on existing architectures using an existing plugin.
-
Accessing Llama 2 from the command-line with the LLM-replicate plugin
My LLM tool can be used for both. That's what the plugins are for.
It can talk to OpenAI, PaLM 2 and Llama / other models on Replicate via API, using API keys.
It can run local models on your own machine using these two plugins: https://github.com/simonw/llm-gpt4all and https://github.com/simonw/llm-mpt30b
-
The Problem with LangChain
Yeah I haven't figured out how to have it reuse the models from the desktop GPT4All installation yet, issue here: https://github.com/simonw/llm-gpt4all/issues/5
llm-cluster
-
Embeddings: What they are and why they matter
I'm trying to understand the clustering code but not doing too well.
https://github.com/simonw/llm-cluster/blob/main/llm_cluster....
So does this take each row from the DB, convert to a numpy array (?), then uses an existing model called MiniBatchKMeans (?) to go over that array and generate a bunch of labels. Then add it to a dictionary and print to console.
-
LLM now provides tools for working with embeddings
I imagine there are all kinds of improvements that could be made to this kind of thing.
I'd love to understand if there's a good way to automatically pick an interesting number of clusters, as opposed to picking a number at the start.
https://github.com/simonw/llm-cluster/blob/main/llm_cluster....
What are some alternatives?
ollama - Get up and running with Llama 3, Mistral, Gemma, and other large language models.
telekinesis - Control Objects and Functions Remotely
gchain - Composable LLM Application framework inspired by langchain
roadmap - This is the public roadmap for Salesforce Heroku services.
llm-mlc - LLM plugin for running models using MLC
DBoW2 - Enhanced hierarchical bag-of-word library for C++
simpleaichat - Python package for easily interfacing with chat apps, with robust features and minimal code complexity.
datasette-faiss - Maintain a FAISS index for specified Datasette tables
multi-gpt - A Clojure interface into the GPT API with advanced tools like conversational memory, task management, and more
DP_means - Dirichlet Process K-means
llama.cpp - LLM inference in C/C++
bert - TensorFlow code and pre-trained models for BERT