Skip to content

Repository files navigation

RAGMap

检索增强生成的设计空间地图
A Design-Space Atlas of Retrieval-Augmented Generation

License: CC BY 4.0 Docs Papers Atlas

如何阅读 · 设计空间 · 论文地图 · 学习路径 · 设计清单 · 术语表


RAG 的下一步不是单点替代,而是分支并存、能力组合,以及自动选路。

RAGMap 是一份写给后来读者、研究者与系统构建者的中文技术地图。它把 Retrieval-Augmented Generation 看成一棵仍在分叉的技术树:先标明每条枝在解决什么问题、付出什么代价,再讨论系统能否根据问题自动选择路线。

不是又一份「从 Naive 到 Advanced」的时间线,也不是某个框架的功能清单。时间线暗示后来者取代先来者;功能清单暗示名词可以当模块直接安装。两者都会让人选错复杂度。

RAGMap 技术发展树:向量、图、记忆 / Agentic、自动选路

RAGMap
├── 向量检索          局部相关、低成本、标准知识库问答
├── 图检索            关系、社区、全局主题、结构路径
├── 记忆 / Agentic    长期记忆、任务分解、检索—推理协同
└── 自动选路          先理解问题,再调度前三条路径

目录


这份地图在主张什么

1. 向量检索没有过时。
它是多数业务的最优解,也是其余分支的底座。过时的是「把所有问题都当成局部近邻」这个假设。

2. 图不是更高级的向量。
图改的是知识组织。它在路径与综括上成立,在频繁更新、强审计原文、抽取不稳时会先被约束否决。

3. Agent 外壳不等于 Agentic RAG。
这一枝要显式化的是:何时检索、检索什么、失败后如何改写、证据如何累积、何时停止。记忆则是另一问:新经验如何被索引、关联、在不重训的前提下再激活。

4. 真正可扩展的系统需要路由。
能力模块可以并存;调度必须被设计、被日志、被评估。默认走最贵路径,只是把选择权藏起来。

这四条对应四个常见误读:新方法全面替代旧方法;图一定优于向量;加上 agent 一定更强;混合召回可以代替选择。


设计空间,而不是阶梯

任何 RAG 系统都在四条轴上取坐标。一篇新论文值得跟,当且仅当你能指出它改了哪一条。

组织、动态、控制、约束四条设计轴

它在问 常见取值
组织 外部知识以什么结构被存储? 扁平切片 · 层次树 · 关系图 · 记忆单元
动态 一次提问对应几次查找? 单次 · 迭代 · 工具化 · 有状态
控制 谁决定走哪条路? 固定流水线 · 规则 · 分类器 · 生成期自适应
约束 正确率之外还要满足什么? 延迟 · 费用 · 可更新性 · 可审计性

四条公开枝条是这张空间的投影,不是另外一套分类学。基座文献里的 Naive / Advanced / Modular,对应的是控制流从线性走向可重排,而不是三代产品。展开见 设计空间


四条枝条

枝条 主要改动 适合 主要代价
向量检索 切片组织 + 单次动态 FAQ、手册、条款定位 结构弱、多跳弱、全局综括弱
图检索 关系组织 路径、社区、主题综括 构图贵、更新难、抽取误差会传播
记忆 / Agentic 动态 + 记忆组织 多步、开放、长叙事、矛盾证据 时延高、控制复杂、评估难
自动选路 控制平面 混合入口、成本敏感、可演进系统 路由本身必须被评估

图组织与记忆组织相邻但不是同一种东西


系统如何选路

flowchart TB
  Q[Query] --> U[Query Understanding]
  U --> E[Complexity / Structure / Budget]
  E --> R[Router]
  R --> V[Vector path]
  R --> G[Graph path]
  R --> A[Agentic / Memory path]
  R --> H[Hybrid / Cascade]
  V --> F[Evidence fusion]
  G --> F
  A --> F
  H --> F
  F --> X[Reasoning / Generation]
Loading

工程上更稳的默认往往是 cascade,而不是无条件 hybrid:

Cascade:先走便宜路径,不足再升级

检索前决定哪条路径;检索后还要再决定证据是否采用、是否再找、是否停止。细节在 自动选路,教学实现见下方 Web Atlas 的选路实验室。


如何阅读

三种入口,选一条走完。细节在 如何阅读这张地图学习路径

你是谁 先读 读完应能做什么
初学者 基座 → 向量枝 → 自己准备 10 个失败问题 不再把 RAG 和向量库当成同义词
研究者 设计空间 → 论文地图 → 一枝深读 把新工作钉到轴上,并写出反例
系统构建者 向量枝 → 评估 → 清单 → 按失败长旁枝 默认路径便宜,贵路径有开关和回退

最小闭环:

  1. 承认向量检索仍是底座;
  2. 看清哪些问题必须引入结构;
  3. 看清哪些问题必须把检索动态化或记住状态;
  4. 把选择权从默认值里拿出来,交给路由。

讲义目录

讲义按阅读顺序编号,每篇可以单独印发。

# 文档 这一篇在干什么
00 如何阅读 地图不是时间线,读法与误读
01 设计空间 组织 / 动态 / 控制 / 约束
02 基座 Lewis,Naive / Advanced / Modular
03 向量检索 切块、混合检索、HyDE、RAPTOR
04 图检索 GraphRAG、LightRAG、ToG,以及抽取损失
05 记忆与 Agentic IRCoT、Self-RAG、HippoRAG、ComoRAG、CogitoRAG
06 自动选路 Adaptive-RAG、cascade、检索后纠正
07 评估 把失败拆开,而不是只看准确率
08 论文地图 精选注释,而不是无差别清单
09 学习路径 三种角色的最小完成标准
10 设计清单 写代码之前要能回答的问题
术语表 仓库里反复出现的词
如何增补 接受判断,不接受无注释链接

向量枝的最小闭环:

文档、切块、向量化、检索、重排、生成


论文:按枝条,不按年份

完整注释见 论文地图。下列是进入地图的最低读物。

基座
Lewis et al., 2020, RAG · Gao et al., 2023, Survey · Gao et al., 2024, Modular RAG

向量
HyDE · RAPTOR


GraphRAG · LightRAG · Think-on-Graph · ToG-2

记忆 / Agentic
IRCoT · FLARE · Self-RAG · HippoRAG · HippoRAG 2 · ComoRAG · CogitoRAG

选路与纠正
Adaptive-RAG · CRAG

评估
RAGAS

读一篇新论文时先填卡片:它改的是组织、动态、控制还是约束?它在哪类任务上成立?代价付在离线还是在线?什么问题上它应该变差?


仓库结构

RAGMap
├── README.md                 # GitHub 首页:主张、地图、入口
├── CITATION.cff              # 引用元数据
├── CONTRIBUTING.md           # 增补论文 / 枝条 / 失败案例
├── LICENSE                   # CC BY 4.0
├── assets/                   # 首页图示(README 使用 PNG,源文件为 SVG)
├── docs/                     # 12 篇可独立阅读的讲义
└── src/                      # Web Atlas(Next.js)

讲义是知识的源。Web Atlas 只是同一套判断的可点击界面,不另起一套说法。


Web Atlas

交互地图用来把同一套判断变成可点、可过滤、可试验的界面。它不调用任何检索后端或模型 API。选路实验室是教学用规则路由器,用来把「为什么选这条路」说成句子。

npm install
npm run dev

默认地址:http://127.0.0.1:43217

页面 作用
/ 主张、四条轴、可点击的技术树
/branches/[id] 每一枝的适用、反例、机制、论文
/papers 按层与枝条过滤的注释卡片
/learn 三种角色的路径
/lab 输入查询,看教学路由的分数与解释
/docs/[slug] docs/ 目录同步的讲义

这棵树还可以长什么

地图刻意保持可增补,但不接受「再加一个时髦词」作为生长方式。值得长的方向:

  1. 为每一枝补一份失败案例库(真实问题,而不是榜上句子);
  2. 把路由从教学规则推进到可复现的评测协议;
  3. 在组织轴上单独展开表格、代码、多模态,而不是把它们塞进向量枝的附录;
  4. 当一篇新论文真的改了坐标,再给它在树上一张椅子。

贡献前请先读 如何阅读如何增补。新增论文必须带问题意识、代价和反例,而不是只有链接。


引用

如果你在论文、组会或课程里使用这份地图,建议同时写明:它是一份设计空间上的判断,而不是对任何方法的性能承诺。

@misc{ragmap2026,
  title        = {RAGMap: A Design-Space Atlas of Retrieval-Augmented Generation},
  year         = {2026},
  howpublished = {\url{https://github.com/TreeEast1/RAGMap}},
  note         = {Chinese technical atlas of RAG branches, trade-offs, and auto-routing}
}

GitHub 也识别仓库根目录的 CITATION.cff


许可

文档与图示采用 CC BY 4.0。转载、翻译、改写都可以,保留署名即可。论文本身的权利归原作者。

本项目从「技术树 + 自动选路」这一判断出发,扩写成可供后人自学的设计空间地图、讲义与交互 Atlas。

About

检索增强生成的设计空间地图:向量 / 图 / 记忆与 Agentic / 自动选路,以及讲义、论文注释与教学选路实验室。

Topics

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages