Documentation Index
Fetch the complete documentation index at: https://langchain-zh.cn/llms.txt
Use this file to discover all available pages before exploring further.
MongoDB Atlas 是一个完全托管的云
数据库,支持 AWS、Azure 和 GCP。它现在支持在 MongoDB 文档数据上原生
进行向量搜索。
安装和设置
请查看 详细配置说明。
我们需要安装 langchain-mongodb Python 包。
pip install langchain-mongodb
向量存储
请查看 使用示例。
from langchain_mongodb import MongoDBAtlasVectorSearch
检索器
全文搜索检索器
Hybrid Search Retriever 使用 Lucene 的标准(BM25)分析器执行全文搜索。
from langchain_mongodb.retrievers import MongoDBAtlasFullTextSearchRetriever
混合搜索检索器
Hybrid Search Retriever 结合向量和全文搜索,并通过 Reciprocal Rank Fusion(RRF)算法对它们进行加权。
from langchain_mongodb.retrievers import MongoDBAtlasHybridSearchRetriever
模型缓存
MongoDBCache
这是一个在 MongoDB 中存储简单缓存的抽象。它不使用语义缓存,也不需要在生成前在集合上创建索引。
要导入此缓存:
from langchain_mongodb.cache import MongoDBCache
要在您的 LLM 中使用此缓存:
from langchain_core.globals import set_llm_cache
# use any embedding provider...
from tests.integration_tests.vectorstores.fake_embeddings import FakeEmbeddings
mongodb_atlas_uri = "<YOUR_CONNECTION_STRING>"
COLLECTION_NAME="<YOUR_CACHE_COLLECTION_NAME>"
DATABASE_NAME="<YOUR_DATABASE_NAME>"
set_llm_cache(MongoDBCache(
connection_string=mongodb_atlas_uri,
collection_name=COLLECTION_NAME,
database_name=DATABASE_NAME,
))
MongoDBAtlasSemanticCache
语义缓存允许用户根据用户输入与之前缓存结果之间的语义相似度来检索缓存的提示。底层它将 MongoDB Atlas 同时作为缓存和向量存储使用。
MongoDBAtlasSemanticCache 继承自 MongoDBAtlasVectorSearch,并且需要定义 Atlas 向量搜索索引才能工作。请查看 使用示例 了解如何设置索引。
要导入此缓存:
from langchain_mongodb.cache import MongoDBAtlasSemanticCache
要在您的 LLM 中使用此缓存:
from langchain_core.globals import set_llm_cache
# use any embedding provider...
from tests.integration_tests.vectorstores.fake_embeddings import FakeEmbeddings
mongodb_atlas_uri = "<YOUR_CONNECTION_STRING>"
COLLECTION_NAME="<YOUR_CACHE_COLLECTION_NAME>"
DATABASE_NAME="<YOUR_DATABASE_NAME>"
set_llm_cache(MongoDBAtlasSemanticCache(
embedding=FakeEmbeddings(),
connection_string=mongodb_atlas_uri,
collection_name=COLLECTION_NAME,
database_name=DATABASE_NAME,
))