Agent 工程

从检索到 RAG

Search 返回“可能相关的片段”,RAG 还要把它们变成有来源、有边界、能被评测的回答依据。

本课在哪一层:向量检索的入门在本主题前面的长期记忆:向量检索,RAG 的产品视角在第一篇章的RAG 检索增强生成RAG 的代价与优化策略。本课不重复这些基础,只讲 Milvus 检索如何进入可靠的 RAG 链路;把检索封成 Agent 工具则在第四篇章的Milvus 作为 Agent 知识库工具
在线链路
1

Embed Query

用写入时同一个模型编码问题。

2

Retrieve

租户/权限过滤 + Top-K 向量检索。

3

Rerank

精排、去重,并控制上下文 Token。

4

Generate

要求模型只依据证据回答并给出来源。

离线摄取决定了线上上限

切分

按标题、段落和语义边界切 chunk,保留少量 overlap。太大噪声多,太小上下文断裂。

元数据

保存 source_id、版本、章节、租户、ACL 与更新时间。引用、过滤和删除都依赖它。

版本

内容或 Embedding 模型变化要重算;蓝绿 collection 切换可避免新旧向量混用。

检索质量工具箱
方法 解决什么 注意
标量 Filter 租户、权限、时间、语言约束 权限必须在检索阶段执行,不能只靠 Prompt
向量 + 关键词混合检索 兼顾语义、产品型号、错误码等精确词 两种分数尺度不同,不宜直接相加
RRF 融合 按排名融合多路结果 简单稳健;再用 reranker 精排候选
Partition / TTL 隔离热点或清理过期数据 属于扩展能力,先用清晰的 collection 与 filter 设计
评测分两层:先测检索 Recall@K、MRR / nDCG 与过滤正确性,再测答案的忠实度、引用准确率和拒答率。只看“回答像不像”会掩盖召回失败。
收获 RAG 不是“搜到就塞”。切分、元数据、权限过滤、融合与引用共同决定检索增强是否可靠。