检索有帮助;但它并不能保证给出正确答案
检索增强生成(RAG)会在语言模型回答之前为其提供选定的文档。它可以让答案与企业的信息更加相关,但系统仍然可能检索到错误的段落、遗漏某个例外情况,或生成来源并不支持的论断。
从一个明确定义的任务开始:例如,帮助支持人员找到当前的退货政策。确定哪些来源是权威的、由谁维护它们,以及什么情况下答案需要人工审查。一条笼统的“使用我们的文档”的指令并不是一条验收标准。
准备并检索可用的证据
在把文档划分为段落时,保留标题、文档身份、版本和来源链接。让例外情况与其所限定的规则保持在一起。针对有代表性的问题,比较关键词检索、向量检索和组合检索,而不要假定某一种方法或某个固定的分块大小总是最佳。分别测试所需证据是否出现在检索结果中,以及最终响应是否准确地使用了它。参见 Microsoft 的 RAG 架构概览.
在文本到达模型之前应用权限
使用经过身份验证的用户的租户和文档权限来限制检索。一条告诉模型隐藏机密资料的提示并不是一个授权边界。来源链接、生成的摘要、对话历史和缓存的答案也都需要进行访问检查。权限更改和文档删除必须传播到索引以及任何派生存储中。
关于一个实现示例, Azure AI Search 记录了查询时的权限过滤。它特定于平台的能力和预览版限制需要针对预期的部署进行核查。
把无依据的问题作为一个明确的结果
展示支撑某项实质性论断的段落,并让用户能够查看它。只有当引用确实支持答案时,它才是有用的。如果来源缺失、相互矛盾或已过时,请说明哪些内容无法得到确认,并提供一个相关的搜索结果或转交。不要把一个较弱的检索分数变成一个编造的置信度百分比。
示例: 某项政策规定未开封的商品可以在 30 天内退货,但对国际退货邮费只字未提。对于“你们会报销我的海外邮费吗?”,一个合适的答案会指出这一缺失的信息,并指向该政策或支持团队。重复那条 30 天的规则并不能回答这个问题。
评估完整的行为
- 纳入可回答的、含糊的、过时的以及故意设为无依据的问题。
- 对于每种情况,记录预期的证据、允许的用户角色,以及可接受的回答或弃答。
- 分别检查检索覆盖率、单项主张的支持情况、引用准确性、权限泄漏、延迟和成本。
- 在更改文档、检索设置、提示词或模型后,重复运行该测试集。在移除不必要的个人数据后,补充真实的失败案例。
这是一种建议的评估方法,而非对某个历史客户数据集的主张。没有任何有限的测试集能够证明未来的答案永远正确。高影响的操作需要与该工作流相适应的额外控制、审批或人工审查。
对于应用内的 AI 功能,可以了解 LLM 集成;对于跨多个系统的任务,可以了解 工作流自动化。开发工具环境与已部署产品的数据流是两个需要分别考虑的决策。


