当前位置: 首页 > news >正文

RAG Agent 检索管线:查询改写、混合召回与证据压缩

本文由 AI 辅助生成并经结构化整理,示例仅用于技术说明。

RAG Agent 的瓶颈通常不是模型,而是检索链路。把用户原句直接丢进向量库,只能覆盖最简单场景。更稳的管线应包含:意图识别、查询改写、混合召回、重排、证据压缩和引用校验。

1. 先区分是否需要检索

闲聊、格式转换不必访问知识库;涉及内部制度、动态数据或来源引用时才检索。路由输出应是结构化结果:

{"need_retrieval":true,"domain":"support","freshness":"30d"}

2. 查询改写

多轮对话中的“它”必须补全:

def rewrite(question, history):return llm.structured_output({"standalone_query": "...","keywords": ["..."],"filters": {"product": "..."}})

改写结果要保留用户原意,不能擅自加入结论。

3. 混合召回

向量检索擅长语义相似,BM25 擅长专有名词和错误码。两路结果可用 RRF 合并:

def rrf(rank, k=60):return 1 / (k + rank)

同一文档多块命中要去重,并保留最高分和邻近上下文。

4. 过滤必须前置

租户、权限、语言、产品版本等过滤条件应在数据库查询阶段生效,不能先召回再让模型删除。否则越权内容已经进入上下文和日志。

5. 重排与证据压缩

先召回 30~50 条,再用 reranker 选 5~8 条。证据压缩只抽取与问题直接相关的句子,同时保留文档 ID、段落号和时间戳:

{"doc_id":"D42","section":"3.2","quote":"...","score":0.91}

6. 生成阶段强制引用

提示模型:每个事实必须关联证据编号;证据不足时明确说不知道。生成后再做程序化校验:引用是否存在、租户是否一致、文档是否过期。

7. 用可诊断指标评估

不要只看最终答案分数,至少拆成:

  • Recall@K:正确证据是否召回;
  • MRR/NDCG:正确证据排序是否靠前;
  • Faithfulness:答案是否被证据支持;
  • Citation precision:引用是否真的支撑句子;
  • 拒答准确率:无证据时是否停止编造;
  • 检索延迟和 Token 成本。

8. 最小实现流程

用户问题-> 检索路由-> 查询改写-> 权限过滤-> BM25 + Vector-> RRF 合并-> Rerank-> 证据压缩-> 带引用生成-> 引用校验

常见反模式

  1. Chunk 越小越好:会切断语义;
  2. TopK 越大越好:噪声和成本同步上涨;
  3. 相似度高就是正确:相似不等于能支撑答案;
  4. 把权限交给 Prompt:这不是安全边界;
  5. 只测答案,不测检索:失败时无法定位。

结语

好的 RAG Agent 不是“接一个向量库”,而是一条可评估、可过滤、可追溯的证据生产线。先保证证据正确,再讨论模型如何表达。

http://www.jsqmd.com/news/1292930/

相关文章:

  • 2026天津防水公司推荐榜 不同预算需求适配指南 - 博客万
  • 2026年朝阳配眼镜挑选攻略:海选镜仓及靠谱机构实测梳理 - 资讯在线
  • 2026智能驾驶高端人才招聘网站主流服务商深度盘点、优质机构选型指南及签约避坑实用FAQ大全 - U渠道
  • 2026年浙江实地探寻靠谱缠绕膜源头厂家有哪些 - 起跑123
  • 2026太原下水道堵塞最全解决方法/马桶地漏反水反臭积水倒灌专业修缮指南 - 宅安选房屋修缮
  • 报名表单怎么做?一张能用的报名表从 0 到发出去 - GrowthUME
  • 工业设备配套专用!博盟精工工业抽屉导轨适配多场景设备运行需求 - 优企甄选
  • 2026云手机选购推荐:桃心云、VMOS、小滴云、迅流云性能差别
  • Unity中URDF机器人模型导入与键盘控制实战指南
  • 2026年7月最新合肥雷神笔记本售后网点完整指南(地址+客服电话+到店攻略) - 苹果手机电脑维修
  • 2026土工管袋与土工膜袋差异及适用场景选型全指南 - 博客万
  • 记录一下Windows系统下的命令行参数的字符个数限制
  • 2026年沈阳实验台挑选指南:弘哲实验室等正规企业梳理与避坑要点 - 资讯在线
  • 罗技K75M机械键盘深度评测:轴体手感与编程场景实战解析
  • 北京高收入人群个税争议解决律师哪家靠谱:股权激励与合伙份额 - 品牌深度评测
  • selenium的封装
  • STM32智能小车入门实战:从硬件选型到PWM电机控制
  • 51单片机定时器配置详解:从delay函数到高效中断编程实战
  • 5分钟掌握百度网盘智能提取码查询:告别繁琐搜索的高效解决方案
  • 3分钟搞定Switch游戏安装:Awoo Installer终极救星指南
  • 2026 年线上少儿英语外教一对一平台深度分析与横向对比(客观实测)
  • 2026天津防水公司口碑排名 附满意度返修率参考数据 - 博客万
  • 立创泰山派linux------(led流水灯)
  • 雨花业主必看!2026长沙本地化防水,告别反复渗漏/漏水 - 吉林同城获客
  • 2026 青岛崂山包包回收盘点:爆款包保值率高,旧包出手干货整理 - 奢侈品回收探店ing
  • Qt QMessageBox、QDialogButtonBox中英文翻译动态切换
  • 2026中小服装品牌找羽绒服代工厂:哈哈贝尔实力口碑解析 - 汇聚至此
  • 同一条物料三个系统三种叫法:跨系统数据关联怎么打通
  • 系统设计概述
  • 程序员感觉工作没有成长,怎么破局?