高级实战场景 · 场景4

RAG 实战

面向企业知识库、私有文档助手和长代码分析场景,掌握从语料准备、检索链路设计到效果评估与持续优化的完整 RAG 落地流程,真正把 RAG 做成可迭代的工程系统。

学习目标

理解 RAG-DD 的端到端落地流程,并能把问题拆到语料、检索、生成各层验证
能够设计知识库分块、元数据、更新机制与权限边界
掌握检索、重排序、上下文组装之间的关键权衡
能够通过评估集与失败复盘持续优化 RAG 效果

方法论

RAG-DD 工作流

1
问题定义明确用户问题类型、可接受延迟、回答可信度要求,以及是否需要引用来源。
2
语料治理清理文档、去重、打标签、建立更新时间和权限边界,避免把脏数据直接送进知识库。
3
检索设计决定分块策略、向量检索或混合检索、是否需要重排序,以及最终注入模型的上下文结构。
4
评估迭代通过命中率、召回率、答案准确率与失败样本复盘,持续优化分块、召回和 Prompt。

检索链路设计

知识分块

  • • 以语义完整性优先,不要只按固定字数粗暴切片
  • • 为每个 chunk 增加来源、时间、业务域、权限等元数据
  • • 对架构文档、接口文档、代码说明书使用不同的分块策略

检索与重排序

  • • 通用问答优先考虑混合检索,兼顾语义召回与关键词精确匹配
  • • 对长代码分析场景,重排序通常比单纯增加 top-k 更有效
  • • 上下文组装时要保留来源和层级,避免片段脱离原语境

实践原则:先做“能解释为什么答成这样”的 RAG,再追求“看起来更聪明”的回答质量。

评估与治理

  • 召回评估:问题对应的正确文档是否被检索出来
  • 答案评估:回答是否准确、完整、是否引用了正确来源
  • 失败复盘:区分是检索失败、上下文污染还是生成阶段幻觉
  • 权限治理:按知识域和用户身份隔离文档,避免越权召回

AI工具应用

用 Claude 设计评估集

让 AI 从历史 FAQ、工单、文档目录中生成评估问题集,覆盖查询改写、模糊问法和长尾场景。

重点不是“让 AI 评自己”,而是让 AI 帮你快速构造覆盖面更广的测试样本。

用向量数据库和重排序模型优化召回

  • • 向量数据库负责初步召回,尽量保证“找得到”
  • • 重排序模型负责把最相关的文档排到前面,保证“送得准”
  • • 对失败样本做 Top-K 对比,比盲目调 Prompt 更有价值

实战案例

案例1:企业内部知识库问答

目标:让员工用自然语言查询制度、流程、FAQ 和架构文档,并返回带出处的答案。

  • • 语料来源:制度文档、Wiki、FAQ、SOP
  • • 关键设计:文档分域、权限控制、版本更新时间
  • • 核心指标:命中率、引用正确率、问题解决率

案例2:大型代码仓库检索增强助手

目标:结合代码注释、README、架构设计文档和模块边界信息,辅助开发者快速定位实现逻辑。

  • • 语料来源:代码说明、架构文档、接口契约、变更记录
  • • 关键设计:按模块和上下游关系组织上下文,而不是只塞代码片段
  • • 失败重点:召回到过期文档、缺失模块边界、片段脱离语义上下文

学习成果检查清单

能够根据场景设计 RAG 的语料、分块和检索链路
理解向量检索、混合检索和重排序的适用边界
能够建立最小可用的 RAG 评估集与失败复盘机制
知道如何处理来源引用、权限隔离和知识更新问题
能把 RAG 作为工程系统而不是单次 Prompt 技巧来设计