该技能为在 Azure Cosmos DB 上构建 RAG 与 AI 智能体应用提供最佳实践,适用于使用向量搜索、全文搜索或 LangChain/LangGraph 的场景。
向量搜索:使用 VectorDistance 做相似度查询,定义向量嵌入策略,在账户上启用向量搜索功能,在索引策略中配置向量索引类型,为余弦相似度归一化嵌入,并以仓储模式封装向量搜索。
全文搜索:在索引策略中添加全文索引,在容器上定义全文策略,在账户上启用全文搜索能力,将全文谓词与范围或等值过滤组合成混合查询,用 FullTextContains 做关键词匹配,用 FullTextScore 配合 ORDER BY RANK 实现 BM25 相关性排序。
SDK 实践:涉及 LangChain 与 LangGraph,如先用异步容器初始化 CosmosDBSaver、用 CosmosDBSaver 做 LangGraph 检查点、在 JS/TS 中使用聊天历史与语义缓存、配置 Azure OpenAI 嵌入部署名、防止过滤注入、混合搜索前置条件、托管标识、选择正确搜索类型、向量存储初始化,以及持久化 MCP 客户端会话与工具内容格式处理。
设计模式:当 ID 已知时用点读取做 AI 内容接地与 RAG 检索,用后台任务非阻塞存储聊天历史,为 AI 消息标记智能体名称以便归属,将活跃智能体持久化以确定性路由,用 asyncio.to_thread 包装同步 Cosmos 调用,将聊天历史与检查点分开存储,在 FastAPI 启动时初始化智能体并重试,用 LangGraph 中断实现人工确认,用 StateGraph 条件边做多智能体路由,以及从中断后的检查点恢复。具体实现细节与限制请以官方文档为准,本资料未提供价格、性能或平台兼容性信息。