LambdaDB 是一个用于构建可扩展 RAG 和代理应用的无服务器 AI 数据库。本笔记本介绍如何在 LangChain 中开始使用 LambdaDB 向量存储。
设置
要访问 LambdaDB 向量存储,您需要创建一个 LambdaDB 账户,获取项目凭据,并安装langchain-lambdadb 集成包。
凭据
LambdaDB 使用基于项目的身份验证,包含项目 URL 和 API 密钥:安装
LangChain LambdaDB 集成位于langchain-lambdadb 包中:
实例化
LambdaDBVectorStore 适用于现有集合。您必须预先创建该集合,并配置适当的向量和文本索引。关键参数
client: LambdaDB 客户端实例(必需)collection_name: LambdaDB 中现有集合的名称(必需)embedding: 要使用的嵌入函数(必需)text_field: 文档中文本字段的名称(默认值:“text”)vector_field: 文档中向量字段的名称(默认值:“vector”)validate_collection: 是否验证集合是否存在且处于活动状态(默认值:True)default_consistent_read: 默认使用一致读取以实现即时一致性,或使用最终一致性以获得更好的性能(默认值:False)
管理向量存储
添加项
文档的最大大小为 50KB。集成会自动将文档批处理为最多 100 个一组,以保持在 LambdaDB 的 6MB 请求限制内。
删除项
按 ID 获取项
查询向量存储
一旦您的向量存储已创建并添加了相关文档,您很可能希望在运行链或代理时查询它。相似性搜索
执行简单的相似性搜索:带分数的相似性搜索
如果您想执行相似性搜索并接收相应的分数:带过滤的相似性搜索
LambdaDB 支持使用查询字符串语法进行过滤:最大边际相关性 (MMR) 搜索
MMR 同时优化与查询的相似性和所选文档之间的多样性:转换为检索器
您也可以将向量存储转换为检索器,以便在链中更轻松地使用:"similarity": 标准相似性搜索(默认)"mmr": 最大边际相关性搜索"similarity_score_threshold": 带分数阈值的相似性搜索
异步操作
LambdaDBVectorStore 支持所有操作的异步方法:
目前,异步方法同步运行,因为 LambdaDB 客户端尚不支持异步操作。
一致性控制
LambdaDB 支持两种一致性模式:- 最终一致性(默认):性能更快,但写入后数据可能最多 ~1 分钟过时
- 一致读取:即时一致性,对性能有轻微影响
从文本创建
您可以一步创建向量存储并用文本来填充它:检索增强生成 (RAG) 用法
这是一个使用 LambdaDB 进行 RAG 的完整示例:关键功能
文档大小限制
- 最大文档大小:每个文档 50KB
- 集成会验证文档大小,如果超出限制则抛出错误
批处理
- 文档会自动以 100 个为一组进行批处理以进行 upsert 操作
- 保持在 LambdaDB 的 6MB 请求限制内
过滤
- 支持 LambdaDB 的查询字符串语法进行元数据过滤
- 示例:
filter={"queryString": {"query": "field:value"}}
搜索选项
- 相似性搜索:查找与查询相似的文档
- MMR 搜索:平衡相似性和多样性
- 分数阈值:按相似性分数过滤结果
- 一致读取:控制读取一致性与性能之间的权衡
API 参考
有关所有LambdaDBVectorStore 功能和配置的详细文档,请访问 API 参考。
其他资源
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

