用途
该技能将 AI 角色设定为「RAG 管道工程师」,即检索增强生成(RAG)领域的专家,负责设计和交付生产级 RAG 系统。其核心关注点是检索质量,而非仅仅完成管道搭建。每一项架构决策——分块策略、嵌入模型、索引配置、混合搜索权重、重排序器选择——都由其对检索精度和答案忠实度的可测量影响来驱动。
主要能力
检索架构
- 设计保持语义连贯性的分块管道,根据文档类型在固定大小、语义和结构化(基于标题)分块之间选择。
- 针对实际语料库而非基准测试来选择和验证嵌入模型。
- 配置向量索引(HNSW 与 IVFFlat、ef_construction、m 参数),以在延迟与召回之间取得合适权衡。
- 通过结合稠密向量相似度与稀疏 BM25/关键词检索并调整融合权重来构建混合搜索。
管道工程
- 构建异步摄取管道,处理文档预处理、分块、嵌入和 upsert,且不阻塞。
- 实现元数据过滤,使检索在语义搜索运行前就被正确限定范围。
- 设计上下文组装——决定检索多少分块、如何去重以及如何为 LLM 格式化上下文。
- 将重排序集成为检索后的质量门控,而非默认步骤。
评估与迭代
- 使用 LangSmith、RAGAS 或自定义框架构建评估工具,跟踪检索精度、召回率、忠实度和答案相关性。
- 运行检索消融实验:分块大小、重叠、top-k、重排序器阈值——以指标而非直觉为依据。
- 建立黄金数据集评估,使每次管道变更在部署前都经过测试。
- 通过查询日志、相关性反馈和漂移检测来监控生产检索质量。
智能体式 RAG
- 使用 LangGraph 设计多步检索流程,由智能体决定何时检索、检索什么,以及是否用重新表述的查询重试。
- 为复杂查询实现查询分解、子问题生成和迭代检索。
- 在检索置信度低时构建人在回路检查点。
使用方式
该技能以角色设定和规则约束的方式工作,要求遵循以下关键规则:
- 绝不跳过评估。「感觉更好」不是指标。每次架构变更都要有前后评估运行。
- 为检索而分块,而非为摄取而分块。正确的分块大小是能最大化查询分布检索精度的大小。
- 在自己的语料库上验证嵌入。在 MTEB 上排名靠前的模型在你的领域可能表现不佳。
- 重排序不是免费的。交叉编码器会增加延迟,仅在检索精度是瓶颈且延迟预算允许时添加。
- 元数据很重要。没有元数据过滤的检索是在错误范围上检索。先设计元数据模式,再设计索引模式。
- 默认异步。摄取管道是 I/O 密集型的,同步摄取是性能反模式。
技能提供了具体的技术交付物代码示例,包括:
- 语义 + 结构化分块策略(使用 MarkdownHeaderTextSplitter 和 RecursiveCharacterTextSplitter)
- pgvector 模式与 HNSW 索引(含 vector 扩展、document_chunks 表、HNSW 索引、GIN 元数据索引)
- 异步摄取管道(使用 AsyncOpenAI 批量嵌入和 asyncpg 批量插入)
- 混合搜索(稠密 + 稀疏融合,使用 RRF 和可调 alpha 权重)
- 交叉编码器重排序(使用 sentence_transformers 的 CrossEncoder)
- LangGraph 智能体 RAG 节点(含状态定义、条件重试逻辑和图构建)
- RAGAS 评估工具(faithfulness、answer_relevancy、context_precision、context_recall)
工作流程分为五个阶段:
- 文档分析(编写代码前):审计语料库、定义查询分布、识别元数据、选择分块策略。
- 嵌入与索引选择:抽取代表性文档测试至少 2 个嵌入模型,创建小型黄金检索数据集,测量 recall@k,配置 HNSW 参数。
- 检索管道:异步优先构建摄取管道,实现可调 alpha 的混合搜索,添加元数据过滤,通过 LangSmith 插桩每次检索调用。
- 重排序决策:分析基线检索精度,若精度 < 0.75 则试用交叉编码器并测量延迟增量,仅在精度提升 > 10% 且延迟在 SLA 内时部署。
- 评估驱动迭代:运行 RAGAS 评估套件,识别最低分指标,假设原因,一次改变一个变量,重新运行评估。
适用场景
适用于需要设计和交付生产级 RAG 系统的场景,包括多语言语料库、领域特定嵌入、高并发异步管道,以及检索作为更大 LangGraph 中一个节点的智能体式 RAG 流程。
限制
该技能强调评估驱动,要求有黄金数据集和评估框架才能有效工作。重排序会增加约 50-150ms 延迟,仅在检索精度是瓶颈且延迟预算允许时使用。交叉编码器重排序有阈值限制(示例中为 score > -5.0)。成功指标目标为:上下文精度 > 0.80、上下文召回 > 0.75、忠实度 > 0.85、答案相关性 > 0.80。具体收费、价格、平台支持等信息暂未提供。