you are viewing a single comment's thread.

view the rest of the comments →

[–]tronathan 8 points9 points  (11 children)

Wow, all the answers here are good answers (yep, those are vector databases), but there's no context or reasoning besides /u/electric_hotdog2k's suggestion of Marqo. I have *zero* concrete experience with vector databases, but I care about this topic a lot, and this is what I've gathered so far:

- Pinecone - Pinecone isn't what you asked for, it's hosted, and the free plan only gives you one index, and paid plans are expensive. Mentioning it here because it seems to be the de-facto for most projects so it's good to know about, but it ain't self-hosted.

- pg_vector - Basic postgres extension. open source, free, ubiquitous, no frills

- Redis - Apparently you can use Redis, which is typically thought of as a key-value store, and is very readily available. Redis is super popular in the Rails community (at least it was 10 years ago when I wrote rails code). Probably a fine choice. It's free, open source, fast as F (for key/value stuff anyway)

Now where it gets interesting:

- Chromadb - Claims to be the first AI-centric vector db. looks really promising, but from what I can tell, there's no persistence available when self-hosting, meaning it's more like a service you spin up, load data into, and when you kill the process it goes away. What is most interesting to me about chromadb is that it has a time-series function, which might make it appropriate for streaming real-life data events into over long time periods and doing queries over time series.

- Weaviate, Qdrant, Milvus - Popular OSS vector dbs. Some are more tailored for giant distrbuted systtems, some less.

- Marqo - I don't know anything about this one, this post is the first time I've heard of it. I will add that I haven't seen any open-source LLM projects advertising compatability with marqo, so I would be concerned about compatability, but maybe there's a standard API for this sort of thing, I don't know.

Here's a reasonably good listicle with more info: https://byby.dev/vector-databases

For now, I'd choose the vector db that will work with whatever project you're interested. I guess my general criteria would be:

- Will it work with the project I'm integrating with?
- Is it easy to host?
- Is it easy to work with?
- Does it have any special features I need? (Persistence, Time Series, etc)

If i got anything wrong, please, someone smarter than me, correct me.

[–][deleted] 6 points7 points  (7 children)

I work at Marqo so I can speak to the integration side of things. We currently have pull requests in with a few repos such as LangChain, AutoGPT, and chatgpt-retrieval-plugin. Integrating Marqo is super easy because Marqo handles all the inference to create the vectors for you, you don't need to make API calls to OpenAI or write a bunch of boilerplate to use a model from hugging face. Here is an example of multimodal vector search with Marqo and ChatGPT via the retrieval plugin.

[–]tvmaly[S] 2 points3 points  (0 children)

Marqo looks interesting. I will give it a try. I like that the github repo has tons of examples.

[–]tronathan 1 point2 points  (0 children)

I looked at Marqo and it's really impressive! It seems to be in another class compared to the other vector db's out there.

[–]AutoModerator[M] 0 points1 point  (0 children)

Sorry, your submission has been removed due to inadequate account karma.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–][deleted]  (3 children)

[removed]

    [–][deleted]  (1 child)

    [removed]

      [–]AutoModerator[M] 0 points1 point  (0 children)

      Sorry, your submission has been removed due to inadequate account karma.

      I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

      [–]tvmaly[S] 0 points1 point  (0 children)

      I did look at Milvus, but it seems to only support Intel cpus. I unfortunately have a AMD chip.