惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

U
Unit 42
C
Cybersecurity and Infrastructure Security Agency CISA
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Know Your Adversary
Know Your Adversary
S
Securelist
I
Intezer
AWS News Blog
AWS News Blog
L
LINUX DO - 热门话题
P
Privacy International News Feed
Recent Announcements
Recent Announcements
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
博客园 - 聂微东
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Attack and Defense Labs
Attack and Defense Labs
N
News and Events Feed by Topic
The GitHub Blog
The GitHub Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
Schneier on Security
Schneier on Security
N
Netflix TechBlog - Medium
爱范儿
爱范儿
B
Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
C
CERT Recently Published Vulnerability Notes
Hacker News: Ask HN
Hacker News: Ask HN
Google DeepMind News
Google DeepMind News
Engineering at Meta
Engineering at Meta
Blog — PlanetScale
Blog — PlanetScale
WordPress大学
WordPress大学
S
Secure Thoughts
K
Kaspersky official blog
N
News | PayPal Newsroom
O
OpenAI News
Last Week in AI
Last Week in AI
C
Check Point Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Cyberwarzone
Cyberwarzone
Application and Cybersecurity Blog
Application and Cybersecurity Blog
T
Tor Project blog
大猫的无限游戏
大猫的无限游戏
Vercel News
Vercel News
D
Docker
Hugging Face - Blog
Hugging Face - Blog
T
Threat Research - Cisco Blogs
Cisco Talos Blog
Cisco Talos Blog
The Register - Security
The Register - Security
博客园 - 司徒正美
Martin Fowler
Martin Fowler
人人都是产品经理
人人都是产品经理
P
Palo Alto Networks Blog

博客园 - 若-飞

企业AI Agent落地的核心逻辑与路径 基于langchain,Function Call的成功率怎么解决? LangChain Checkpoint(检查点)是什么?—— Agent 的"存档机制" RAG 设计:Embedding 如何切分 AI 客服系统设计:RAG 知识库设计 Go 百万连接服务器设计:从网卡到业务的全链路解析 深度解析 sync.Pool:从设计哲学到生产实践 Goroutine 泄漏:原因、检测与防范 Go Channel 关闭与超时机制完全指南 Go Map 无限增长问题解决方案 LangChain 聊天记录压缩:原理、机制与实战 揭开 sklearn 文本分类的核心原理:从词袋到逻辑回归 大模型“胡说八道”怎么办?一张图读懂检测、评估与修复全方案 企业级AI知识库权限隔离设计:让AI“懂规矩”比“懂知识”更重要 RAG系统设计全解析:从架构到多模态的核心知识图谱 RAG召回率提升全攻略:7大核心方法让检索更精准 RAG召回率提升秘籍:Metadata过滤的底层原理与实践 构建更好的RAG系统:深入理解混合搜索 一文搞懂 RAG 中 Retriever 和 Reranker 的区别 LangChain / LangGraph、MCP、Harness Engineer 与 Claude Code 的对应关系 Agent Harness 技术笔记:从 Trajectory 到 Function Calling Loop BLEU 是什么?——从原理到工程实践 一文讲清:Approve / Permit / Permit2 的本质区别 分库分表后跨分页查询的完整方案 ai如何处理私有数据 ai幻觉是啥,以及如何解决 别再让大模型“凭空瞎猜”了!带你认识AI最强外挂:ChromaDB 用 useQuery 管请求:TanStack React Query 入门小结 HD钱包--BIP44 TRON 四种 API 面怎么选:从节点协议到 JSON-RPC 再到 TronGrid 以太坊节点存储与共识机制全解析 BSC节点发现协议全解析:UDP发现、Bootnode引导与Gossip交易广播 以太坊节点发现背后的分布式哈希表(DHT)与 Kademlia 原理解析 Solidity中的bytes与string:深入理解这两种特殊的动态数组 智能合约自毁:当资产还在,合约死了 —— 深度解析 selfdestruct 导致的资产锁定风险 TDengine CLI (taos) 使用指南 —— Docker 本地开发实战 在 macOS 上用 DBeaver 连接 TDengine:踩坑总结与最终配置指南 Solidity Storage Slot 深度解析 Geth Snapshot Export/Import 深度解析: 不是备份工具,而是数据分析利器 基于BSC 公链的数据备份与 Snapshot 机制深度解析 Docker 共享内存完全指南:从原理到实践,避免常见的理解误区 Docker容器"僵尸状态"问题排查与自动重启方案 SSE协议深度解析:被低估的HTTP服务器推送标准 TDengine vs MySQL:时序数据处理的时代之选 Proxmox 启用 QEMU Guest Agent 实战指南 解决 Blockscout "batch too large" 错误的完整指南 一文讲清楚什么是基准测试(Benchmark) Rust中的宏(Macro):编译时的代码生成魔法 Docker优雅关闭的艺术:为什么stop_grace_period能防止数据丢失 为什么 Go 没有依赖注入和 Bean 机制?语言设计哲学对比
一文搞懂 RAG 的召回率(Recall)是什么?
若-飞 · 2026-07-06 · via 博客园 - 若-飞

一文搞懂 RAG 的召回率(Recall)是什么?

在学习 RAG(Retrieval-Augmented Generation,检索增强生成)时,经常会听到一句话:

"RAG 首先要保证高召回率(High Recall)"

很多初学者都会疑惑:

  • 什么是召回率?

  • 为什么不是准确率?

  • 它和大模型有什么关系?

其实,理解了一个简单的 Demo,就能彻底明白。


什么是召回率?

一句话概括:

召回率(Recall)表示:所有真正相关的文档中,被检索系统成功找出来了多少。

它关注的是:

有没有把真正需要的知识找到。

而不是:

排得是否最准确。


一个简单的 Demo

假设你的知识库中有 100 万个文档。

用户提出一个问题:

Redis 为什么这么快?

实际上,与这个问题真正相关的文档只有下面 5 篇:

① Redis 单线程模型
② Redis 基于内存存储
③ Redis IO 多路复用
④ Redis 高效数据结构
⑤ Redis Pipeline

也就是说:

真正相关文档 = 5 篇

现在,RAG 开始进行向量检索(Retriever)。

假设设置:

Top-K = 3

系统最终返回:

① Redis 单线程模型      ✅
② Redis 基于内存存储    ✅
③ Redis Cluster 集群    ❌

可以看到:

真正相关的文档一共有:

5 篇

但是系统只找到了:

2 篇

因此:

召回率(Recall)

= 找到的相关文档数量
  ─────────────────
  所有相关文档数量

= 2 / 5

= 40%

这就是:

召回率只有 40%。


为什么召回率重要?

因为:

LLM(大模型)只能根据检索出来的内容回答。

继续上面的例子。

真正解释 Redis 为什么快的重要知识是:

Redis IO 多路复用

但是:

Retriever 没有找到。

于是,大模型最终只能看到:

Redis 单线程
Redis 内存
Redis Cluster

它可能回答:

Redis 使用内存存储,因此速度很快。

虽然回答没有错误,但遗漏了:

  • IO 多路复用

  • 高效数据结构

  • Pipeline

所以答案并不完整。

原因不是:

大模型不会。

而是:

大模型根本没有看到这些知识。


什么叫"高召回"?

如果把 Top-K 调整为:

Top-K = 10

系统可能返回:

① Redis 单线程
② Redis 内存
③ Redis IO 多路复用
④ Redis 数据结构
⑤ Redis Pipeline
⑥ Redis Cluster
⑦ Redis 发布订阅
⑧ Redis AOF
⑨ Kafka
⑩ MySQL

可以看到:

真正相关的 5 篇文档全部找到了。

这时:

Recall = 5 / 5 = 100%

虽然里面还有一些无关内容(例如 Kafka、MySQL),但是没关系。

因为:

真正重要的信息已经全部找回来了。

这就是:

高召回(High Recall)。


为什么 RAG 要先追求高召回?

现代 RAG 一般分成两个阶段:

用户问题
      │
      ▼
Retriever(检索)
      │
      ▼
Top20
      │
      ▼
Reranker(重新排序)
      │
      ▼
Top3
      │
      ▼
LLM

第一阶段(Retriever)的目标就是:

宁可多找,也不要漏找。

因为:

如果真正相关的文档都没有找回来,

后面的 Reranker 再厉害,

LLM 再智能,

也无法回答不存在于上下文中的知识。


总结

可以把召回率理解成一句最简单的话:

召回率不是看找得准不准,而是看真正有用的文档有没有被找回来。

对于 RAG 来说:

  • 找不到相关知识(低召回),大模型一定答不好。

  • 找回来之后,再通过 Reranker 重新排序,提高最终答案质量。

因此,在企业级 RAG 中,经常会强调一句话:

Retriever 负责提高 Recall(召回率),Reranker 负责提高 Precision(准确率),LLM 负责生成最终答案。

这也是目前生产级 RAG 最经典的三层架构思想。
:::

如果你继续学习 RAG,下一篇建议写 《RAG 的准确率(Precision)是什么?为什么 Retriever 后面还要加一个 Reranker?》,这两篇结合起来,就能把 RAG 检索链路彻底理解清楚。