dexaai / dexter

LLM tools used in production at Dexa
https://dexter.dexa.ai
MIT License
69 stars 4 forks source link

[Feature Request] Support alternative vector DB's other than Pinecone #12

Open atbe opened 10 months ago

atbe commented 10 months ago

Hi there,

Congrats on the launch! The library looks very clean, and I like the interfaces. I would love to see some alternative stores implemented, and would be happy to contribute some myself.

Is there anything I/we (other contributors) should be aware of when thinking about submitting a PR like this?

Thanks again!

transitive-bullshit commented 10 months ago

Hey Ibrahim 👋

Support for more vector DBs and model providers is definitely high up on the priority list, and PRs are more than welcome 😄

I added some notes to the contributing guidelines on getting the dev env setup, but aside from that, I don't have any specific guidance.

When I find some time, I'll try to create issues tracking some of the low hanging fruit.

Thanks!

rileytomasek commented 10 months ago

Hey @atbe — thanks for your interest in contributing :)

You can see the methods that a Datastore implementation needs to provide here and an example of an implementation for Pinecone here.

A good starting point would be to duplicate /src/datastore/pinecone/ and update/delete as needed. The trickiest part may be the QueryFilter type because most vector stores have poor support for generic metadata/payload types.