MongoDB Atlas
MongoDB Atlas 是一个完全托管的云数据库,可在 AWS、Azure 和 GCP 上使用。它现在支持在 MongoDB 文档数据上进行原生向量搜索。
安装与设置
请参阅 详细配置说明。
我们需要安装 langchain-mongodb
python 包。
pip install langchain-mongodb
向量存储
查看 使用示例。
from langchain_mongodb import MongoDBAtlasVectorSearch
LLM 缓存
MongoDBCache
一个用于在MongoDB中存储简单缓存的抽象。这不使用语义缓存,也不要求在生成之前在集合上创建索引。
要导入此缓存:
from langchain_mongodb.cache import MongoDBCache
要将此缓存与您的LLM一起使用:
from langchain_core.globals import set_llm_cache
# 使用任何嵌入提供者...
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
语义缓存允许用户根据用户输入与先前缓存结果之间的语义相似性检索缓存提示。其底层将MongoDBAtlas作为缓存和向量存储进行融合。
MongoDBAtlasSemanticCache继承自MongoDBAtlasVectorSearch
,需要定义一个Atlas向量搜索索引才能工作。请查看使用示例以了解如何设置索引。
要导入此缓存:
from langchain_mongodb.cache import MongoDBAtlasSemanticCache
要将此缓存与您的LLMs一起使用:
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,
))