langchain/docs/extras/modules/data_connection/vectorstores/integrations
Stefano Lottini 22af93d851
Vector store support for Cassandra (#6426)
This addresses #6291 adding support for using Cassandra (and compatible
databases, such as DataStax Astra DB) as a [Vector
Store](https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-30%3A+Approximate+Nearest+Neighbor(ANN)+Vector+Search+via+Storage-Attached+Indexes).

A new class `Cassandra` is introduced, which complies with the contract
and interface for a vector store, along with the corresponding
integration test, a sample notebook and modified dependency toml.

Dependencies: the implementation relies on the library `cassio`, which
simplifies interacting with Cassandra for ML- and LLM-oriented
workloads. CassIO, in turn, uses the `cassandra-driver` low-lever
drivers to communicate with the database. The former is added as
optional dependency (+ in `extended_testing`), the latter was already in
the project.

Integration testing relies on a locally-running instance of Cassandra.
[Here](https://cassio.org/more_info/#use-a-local-vector-capable-cassandra)
a detailed description can be found on how to compile and run it (at the
time of writing the feature has not made it yet to a release).

During development of the integration tests, I added a new "fake
embedding" class for what I consider a more controlled way of testing
the MMR search method. Likewise, I had to amend what looked like a
glitch in the behaviour of `ConsistentFakeEmbeddings` whereby an
`embed_query` call would have bypassed storage of the requested text in
the class cache for use in later repeated invocations.

@dev2049 might be the right person to tag here for a review. Thank you!

---------

Co-authored-by: rlm <pexpresss31@gmail.com>
2023-06-20 10:46:20 -07:00
..
faiss_index Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
alibabacloud_opensearch.ipynb Add Alibaba Cloud OpenSearch as a new vector store (#6154) 2023-06-20 10:07:40 -07:00
analyticdb.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
annoy.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
atlas.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
awadb.ipynb Improve the performance of add_texts interface and upgrade the AwaDB from 0.3.2 to 0.3.3 (#6316) 2023-06-16 16:50:01 -07:00
azuresearch.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
cassandra.ipynb Vector store support for Cassandra (#6426) 2023-06-20 10:46:20 -07:00
chroma.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
deeplake.ipynb Harrison/deeplake new features (#6263) 2023-06-16 17:53:55 -07:00
docarray_hnsw.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
docarray_in_memory.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
elasticsearch.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
faiss.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
hologres.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
lancedb.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
matchingengine.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
milvus.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
myscale.ipynb Harrison/myscale self query (#6376) 2023-06-18 16:53:10 -07:00
opensearch.ipynb Harrison/mmr support for opensearch (#6349) 2023-06-17 12:22:37 -07:00
pgvector.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
pinecone.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
qdrant.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
redis.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
singlestoredb.ipynb Update SinglStoreDB vectorstore (#6423) 2023-06-19 22:08:58 -07:00
sklearn.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
supabase.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
tair.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
tigris.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
typesense.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
vectara.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
weaviate.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00
zilliz.ipynb Doc refactor (#6300) 2023-06-16 11:52:56 -07:00