在大模型(尤其 RAG 检索增强生成)领域,召回(Recall) 就是:根据用户问题,从海量外部知识库中快速“捞回”一批可能相关的文档/片段,先粗筛、再交给后面环节精排与生成。
一、通俗理解
- 召:从库里把相关信息“召唤”出来
- 回:返回给大模型使用
- 目标:尽量不漏掉有用信息(宁多勿缺),而不是一步到位最准。
二、在 RAG 里的位置(核心一步)
标准 RAG 流程:
- 建库:文档 → 分块 → 向量化 → 存入向量库
- 召回:用户问题 → 向量检索 → 选出 Top-N 相关片段
- 重排:对召回结果二次精排,提升相关性
- 生成:把精选片段+问题一起交给大模型,输出答案
三、“召回”的两层含义
动作(检索召回)
用向量检索/全文检索/混合检索,从库中取出相关内容;常见工具:FAISS、Chroma、Elasticsearch 等。-
指标(召回率 Recall)
衡量效果:真实相关的文档里,被成功找出来的比例
[
\text{召回率} = \frac{\text{找出的相关文档数}}{\text{库里所有相关文档数}}
]- 召回率 100% = 没漏掉任何相关内容(理想)
- 召回率低 = 有用信息丢了,回答容易不准/幻觉。
四、召回 vs 搜索 vs 精确率
- 召回 ≈ 搜索:但召回更强调“找得全”(粗筛)
- 精确率(Precision):强调“找得准”(重排阶段)
- 口诀:召回负责不漏,重排负责不杂。
五、为什么召回很重要
大模型有三大痛点:知识过时、会幻觉、无私有数据;召回通过实时调取外部知识,从根源上缓解这些问题,让回答更准、可追溯。