3 ms·
For use with LLMs, I implemented my own vector DB code in Common Lisp and Swift. When I work in Python, my favorite is absolutely Chroma embedded. The article
by mark_l_watson 3y ago
For use with LLMs, I implemented my own vector DB code in Common Lisp and Swift.
When I work in Python, my favorite is absolutely Chroma embedded.
The article is wrong about Chroma embedded being in memory only. It also works fine with write through to a local disk, including maintaining index files.
- fzliu 3y agoShameless self-plug for our embedded vector database milvus-lite (https://github.com/milvus-io/milvus-lite https://github.com/milvus-io/milvus-lite): pip install milvus
- mark_l_watson 3y agoThank you, I will try it. I noticed that you put the entire implementation inside the package’s __init__.py file. Interesting, and I had not seen that done before.
- horstmeyer 3y agoI have seen that pattern before, and for me it's a bit of an antipattern. Usually you wouldn't look for substantial code there, and in most cases it is nicer to organize your code in modules. You can import from those in the __init.py__ file, this way achieving the same effect as having all code live in __init.py__. But it's a matter of preference.
- dmezzetti 3y agoAnother one mentioned below to try is txtai: https://github.com/neuml/txtai https://github.com/neuml/txtai It can run embedded in a single Python instance and has no issues running in production that way.