人工智能实践(语言智能)
第4讲:RAG

4.5 高级变体

Self-RAG / CRAG / FLARE / Adaptive-RAG / GraphRAG——从反思到纠错到结构化,以 TM-RAG 为扩展案例

从"朴素"到"智能":高级 RAG 的共同主题

2023-2025 年的 RAG 研究有一条清晰的主线——让检索本身变成一个可决策、可反思、可纠错的过程。朴素 RAG 无脑检索、全盘接收;高级变体在这两点上各自打出差异化的设计。


Self-RAG:反思型检索增强生成

Asai et al. (ICLR 2024) 训练模型生成四种反思 token,让模型自主决定何时检索、是否采信:

反思 token含义作用
[Retrieve]是否需要检索?按需检索,避免不必要噪声
[IsREL]检索结果是否相关?过滤不相关文档
[IsSUP]回答是否有证据支持?确保忠实性
[IsUSE]回答对用户是否有用?整体质量控制

关键洞见:在评测中只有 2% 的正确预测来自检索之外的知识——这说明 Self-RAG 真正学会了"严格依赖证据"的行为模式。

Input → [Retrieve=Yes] → 检索 → [IsREL=Relevant][IsSUP=Supported] → Output
                    \→ [Retrieve=No] → 直接生成 → [IsUSE=Useful] → Output

CRAG:纠错型检索增强生成

Yan et al. (2024) 的 CRAG 假设检索可能出错,用一个轻量级 T5 评估器对检索结果分类:

在 PopQA 上提升 19%,传记生成 FactScore 提升 14.9%。CRAG 的价值在于给 RAG 加了一层"兜底" 机制——当知识库不够好时,外部网络搜索能补位


FLARE:生成过程中主动检索

Jiang et al. (EMNLP 2023) 的 FLARE 颠覆了"一次性检索"的范式——在生成过程中监控置信度,遇到不确定处再触发检索

生成进程:
"太阳系最大的行星是██████"       置信度高 → 继续生成
"它的大红斑的直径约为██████"     置信度低! → 触发检索
  → 用已生成文本作为查询,检索新证据
  → 用新证据重新生成这部分

适合长篇生成任务(论文写作、报告生成),可以把一次 RAG 变成"写一段、查一段"的流式检索。


Adaptive-RAG:按查询复杂度自适应

Jeong et al. (NAACL 2024) 用一个小分类器判断查询难度,动态选择策略:

查询类型策略示例
简单事实不检索,直接答"水的化学式?"
中等复杂单步检索"量子计算机如何工作?"
高度复杂多步迭代检索"比较三种量子纠错码优缺点"

节约 ~28% 的 token 消耗,同时维持相当的质量。核心价值:不是所有问题都需要 RAG——对参数化知识足以回答的问题,检索反而引入噪声。


GraphRAG:知识图谱增强

Edge et al. (2024, Microsoft) 针对朴素 RAG 的一个致命缺陷:无法回答"跨文档的全局性问题"(比如"本手册的主要主题有哪些?")。

GraphRAG 的核心思想是先从文档构建知识图谱,再分层摘要

两种查询模式:

  • Local Search:实体级问题 → 定位节点 → 邻域子图 → 生成
  • Global Search:主题级问题 → 跨社区摘要 → Map-Reduce 汇总

GraphRAG 是处理"百页手册类全局问答"的利器,但实现复杂度也显著更高。


扩展案例:TM-RAG(翻译记忆增强翻译)

作为领域特化 RAG 的典型,TM-RAG 把翻译记忆(Translation Memory)——CAT 工具里存储的源-目标句对——作为知识库注入 LLM 翻译过程。

研究问题

当把 TM 作为 RAG 知识库注入 LLM 时,模型能否借鉴模糊匹配句对中的翻译方法(sentence-level translation strategy),而不仅是复用术语?

这里的"翻译方法"包括句式选择(主动/被动)、信息重组(合句/拆句)、主语补充(中文无主句 → 英文有主语)、修饰成分处理(前置 → 后置定语从句)等句法层面的决策

系统架构

实验设计要点

组别描述目的
BASE纯 LLM,无检索基线
TM-RAG语义检索 Top-3 句对验证 TM-RAG 效果
TM-RAG-fuzzy传统模糊匹配(Levenshtein)Top-3语义 vs 传统匹配
TM-RAG-rerank语义检索 + 重排序匹配质量的进一步提升

关键 Prompt 片段:

以下是翻译记忆中与待翻译句子结构相似的历史翻译句对。请仔细观察这些
已有翻译的处理方式——包括句式结构的选择、主被动语态的转换、长句的
拆分方式、信息的组织顺序等——在翻译新句子时借鉴这些翻译方法。

【参考翻译 1】(匹配度:87%)
中文:请确保设备在操作前已完全断电。
英文:Ensure that the device is completely powered off before operation.

...

源文:请确保网络连接在测试前已正确配置。
译文:

评估维度

三层评估设计:

  1. 翻译质量:GEMBA-MQM 对译文进行 MQM 错误标注
  2. 方法借鉴度:LLM-as-Judge 判断译文是否采用了 TM 的翻译方法(分类:明显借鉴 / 部分借鉴 / 未借鉴)
  3. 分层分析:按模糊匹配度(高/中/低)分层,观察在什么匹配度条件下借鉴效果最显著

TM-RAG 的独特启示:RAG 的"知识"不一定是事实,也可以是"模式"。把 TM 句对视为一种"示例型知识"(exemplar knowledge),LLM 可以从中学习句法策略——这打开了 RAG 作为 in-context learning 增强器的新应用场景。


变体对比速查

变体核心创新适用场景
Self-RAG反思 token + 证据门控高忠实度要求
CRAG检索结果分类 + 网络兜底知识库可能不全
FLARE生成中主动检索长文生成
Adaptive-RAG按难度选策略查询分布混合
GraphRAG知识图谱 + 分层摘要全局性问答
TM-RAG示例型知识注入翻译、风格迁移
RAFTRAG + 微调联合专业领域、有训练资源

推荐学习路径:先吃透 Self-RAG 的思想(反思和证据门控),再看 GraphRAG(结构化知识),最后是 TM-RAG / RAFT 这类特化方案。