概述
向量存储用于存储嵌入数据并执行相似性搜索。接口
LangChain 为向量存储提供了统一的接口,使你能够:add_documents- 向存储中添加文档。delete- 按 ID 删除已存储的文档。similarity_search- 查询语义相似的文档。
初始化
初始化向量存储时,需为其提供一个嵌入模型:添加文档
按如下方式添加Document 对象(包含 page_content 和可选的元数据):
删除文档
通过指定 ID 进行删除:相似性搜索
使用similarity_search 进行语义查询,返回最接近的嵌入文档:
k— 返回结果的数量filter— 基于元数据的条件过滤
相似性度量与索引
嵌入相似性可使用以下方式计算:- 余弦相似度
- 欧氏距离
- 点积
元数据过滤
通过元数据(如来源、日期)进行过滤,可以细化搜索结果:主要集成
选择嵌入模型:OpenAI
OpenAI
Azure
Azure
Google Gemini
Google Gemini
Google Vertex
Google Vertex
AWS
AWS
HuggingFace
HuggingFace
Ollama
Ollama
Cohere
Cohere
Mistral AI
Mistral AI
Nomic
Nomic
NVIDIA
NVIDIA
Voyage AI
Voyage AI
IBM watsonx
IBM watsonx
Fake
Fake
xAI
xAI
Perplexity
Perplexity
DeepSeek
DeepSeek
In-memory
In-memory
Amazon OpenSearch
Amazon OpenSearch
pip
Astra DB
Astra DB
Azure Cosmos DB NoSQL
Azure Cosmos DB NoSQL
Azure Cosmos DB Mongo vCore
Azure Cosmos DB Mongo vCore
Chroma
Chroma
CockroachDB
CockroachDB
Elasticsearch
Elasticsearch
安装软件包并使用 start-local 脚本在本地启动 Elasticsearch:这将创建一个 Elasticsearch 将在
elastic-start-local 文件夹。启动 Elasticsearch:http://localhost:9200 上运行。elastic 用户的密码和 API 密钥存储在 elastic-start-local 文件夹中的 .env 文件里。FAISS
FAISS
Milvus
Milvus
MongoDB
MongoDB
PGVector
PGVector
PGVectorStore
PGVectorStore
Pinecone
Pinecone
Qdrant
Qdrant
Oracle AI Database
Oracle AI Database
turbopuffer
turbopuffer
| 向量存储 | 按 ID 删除 | 过滤 | 按向量搜索 | 带分数搜索 | 异步 | 通过标准测试 | 多租户 | 添加文档时指定 ID |
|---|---|---|---|---|---|---|---|---|
AstraDBVectorStore | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
AzureCosmosDBNoSqlVectorStore | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ |
AzureCosmosDBMongoVCoreVectorStore | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ |
Chroma | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Clickhouse | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ |
AsyncCockroachDBVectorStore | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
CouchbaseSearchVectorStore | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
DatabricksVectorSearch | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
ElasticsearchStore | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
FAISS | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
InMemoryVectorStore | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | ❌ | ✅ |
LambdaDB | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
Milvus | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Moorcheh | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
MongoDBAtlasVectorSearch | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
openGauss | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ | ✅ |
PGVector | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ |
PGVectorStore | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
PineconeVectorStore | ✅ | ✅ | ✅ | ❌ | ✅ | ❌ | ❌ | ✅ |
QdrantVectorStore | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
Weaviate | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
SQLServer | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
TurbopufferVectorStore | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ |
ZeusDB | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
Oracle AI Database | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
所有向量存储
Activeloop Deep Lake
Alibaba Cloud MySQL
Alibaba Cloud OpenSearch
AnalyticDB
Annoy
Apache Doris
ApertureDB
Astra DB Vector Store
Atlas
AwaDB
Azure Cosmos DB Mongo vCore
Azure Cosmos DB No SQL
Azure Database for PostgreSQL - Flexible Server
Azure AI Search
Bagel
BagelDB
Baidu Cloud ElasticSearch VectorSearch
Baidu VectorDB
Apache Cassandra
Chroma
Clarifai
ClickHouse
CockroachDB
Couchbase
DashVector
Databricks
IBM Db2
DingoDB
DocArray HnswSearch
DocArray InMemorySearch
Amazon Document DB
DuckDB
China Mobile ECloud ElasticSearch
Elasticsearch
Epsilla
Faiss
Faiss (Async)
FalkorDB
Gel
Google AlloyDB
Google BigQuery Vector Search
Google Cloud SQL for MySQL
Google Cloud SQL for PostgreSQL
Firestore
Google Memorystore for Redis
Google Spanner
Google Bigtable
Google Vertex AI Feature Store
Google Vertex AI Vector Search
Hippo
Hologres
Jaguar Vector Database
Kinetica
LambdaDB
LanceDB
Lantern
Lindorm
LLMRails
ManticoreSearch
MariaDB
Marqo
Meilisearch
Amazon MemoryDB
Milvus
Momento Vector Index
Moorcheh
MongoDB Atlas
MyScale
Neo4j Vector Index
NucliaDB
Oceanbase
openGauss
OpenSearch
Oracle AI Database
Pathway
Postgres Embedding
PGVecto.rs
PGVector
PGVectorStore
Pinecone
Pinecone (sparse)
Qdrant
Relyt
Rockset
SAP HANA Cloud Vector Engine
ScaNN
SemaDB
SingleStore
scikit-learn
SQLiteVec
SQLite-VSS
SQLServer
StarRocks
Supabase
SurrealDB
Tablestore
Tair
Tencent Cloud VectorDB
Teradata VectorStore
ThirdAI NeuralDB
TiDB Vector
Tigris
TileDB
Timescale Vector
Typesense
turbopuffer
Upstash Vector
USearch
Vald
VDMS
veDB for MySQL
Vearch
Vectara
Vespa
viking DB
vlite
Volcengine RDS for MySQL
Weaviate
Xata
YDB
Yellowbrick
Zep
Zep Cloud
ZeusDB
Zilliz
Zvec
连接这些文档 到 Claude、VSCode 等,通过 MCP 获取实时答案。

