乐于分享
好东西不私藏

[论文个人精读] 让AI学会"自我纠错":安徽中医药大学提出Agentic Graph RAG,为肝病临床决策打造可信

[论文个人精读] 让AI学会"自我纠错":安徽中医药大学提出Agentic Graph RAG,为肝病临床决策打造可信
欢迎关注一篇就好,5 分钟读懂核心思想。

导读

如果你问 ChatGPT"我肝脏不舒服还腹胀,该吃什么药?",它可能会给你一个看似合理、实则危险的回答——这在肝病领域尤其致命。肝病年死亡约 200 万人,临床决策容错率极低。

标准 RAG(检索增强生成)虽然能给 LLM"开卷考试"的机会,但它检索的非结构化文本片段无法捕捉医学知识中复杂的逻辑关系。Graph RAG 进了一步——用知识图谱做结构化检索——但现有方案仍有两个致命缺陷:① 不会验证生成的图查询是否语义正确;② 检索完不会判断信息够不够用

来自安徽中医药大学方芳团队的这项工作,给出了一个巧妙的答案:让 LLM 变成一个能"自我纠错"的 Agent——它不只是查图、回答问题,还会在每一轮检索后评估"我找到的信息够不够",不够就调整策略重新找,直到找到足够的证据才开口说话。这套框架叫 Agentic Graph RAG,发表于 Frontiers in Medicine(2025)。在 30 个肝病临床问题上,Faithfulness 达到 0.94,专家 Safety 评分 4.9/5.0。

论文信息

A self-correcting Agentic Graph RAG for clinical decision support in hepatology

Yalan Hu, Wenjie Xuan, Qingqing Zhou, Zhi Li, Ya Li, Jili Hu, Fang Fang*

安徽中医药大学 医学信息工程学院

Frontiers in Medicine, 2025, 12:1716327

DOI: 10.3389/fmed.2025.1716327

Agentic RAG知识图谱自纠正临床决策支持肝病学

研究背景:为什么 LLM 在肝病领域不够可靠?

肝病是全球第四大死因,年死亡约 200 万人。临床医生需要在紧迫时间内综合患者数据和公共医学知识,做出精准决策——这恰好是 AI 决策支持应该发力的场景。

但 LLM 的直接应用面临事实性幻觉——它可能生成看似合理但完全错误的诊疗建议。RAG 缓解了这一问题的思路很简单:先检索相关文献,再让 LLM 基于检索结果生成答案。然而:

标准 RAG 的致命弱点:它检索的是非结构化文本片段,无法捕捉医学知识中"疾病 A → 病因 B → 药物 C → 禁忌 D"这样的深层逻辑链。就像让医学生考试前翻一堆散页资料,而不是给他一份整理好的知识框架。

Graph RAG 用知识图谱(KG)替代文本库——KG 里实体和关系是结构化的。但这还不够,现有 Graph RAG 仍有两个关键缺口:

缺口一:缺乏查询验证。 系统会把"Does cirrhosis treat hepatitis?"(逻辑颠倒!)直接转成 Cypher 执行,检索到荒谬的信息却毫不自知。

缺口二:缺乏信息充分性评估。 检索了三个节点就直接生成答案——但万一这三个节点根本不包含回答所需的关键信息呢?

这引出了本文的核心思路:让系统像人类专家一样,检索→评估→不够就调整→再检索,直到信息充分才开口

研究方法:KG 做事实锚点,Agent 做推理引擎

1. 构建专家验证的肝病知识图谱

团队从 53 份肝病临床实践指南(近 15 年)出发,做了一个"证据驱动"的属性图:

维度
具体设计
8 种实体
Disease, Drug, Gene, Symptom/Sign, Examination/Test, Treatment, Etiology/Risk Factor, Clinical Criteria
11 种关系
RECOMMENDS_DRUG, HAS_ADVERSE_EFFECT, IS_CONTRAINDICATED_FOR, PROGRESSES_TO 等
关键属性
Evidence Level, Recommendation Strength, Drug Approval Status(每条推荐都带证据等级!)
术语标准
UMLS Metathesaurus → 通过 CUI 映射标准实体 → 消除歧义

知识提取采用 "人在回路"(HITL)三阶段:GPT-3.5-Turbo 自动提取 → 知识融合去重(CUI优先+多源证据聚合) → 专家人工审核(纠正错误+补充遗漏)。最终 KG:12,192 个实体、28,770 条关系,存储于 Neo4j。

2. Agent 工作流:状态驱动的自纠正循环

基于 LangGraph 构建,核心是一个动态的"检索→评估→优化"循环

Step 1: 意图识别 → 实体链接(精确→模糊→语义→消歧四阶段) → Text-to-Cypher(GPT-4 + GPT-3.5-Turbo 双模型各自生成,一致性检查) → 执行图检索

Step 2: 决策评估模块 → 两个模型各投 3 票("信息充分"or"不充分") → 双模型一致→采纳;分歧→综合得分裁定(语义相关性权重 0.4)

Step 3: 不充分 → 确定性策略优化器:不重写 Cypher,只调整搜索参数(深度/节点限制/策略BFS↔DFS) → 重新执行 → 回到 Step 2(最多 3 轮)

Step 4: 充分 → 答案合成(KG 上下文 + LLM 内部知识,带内联引用)

兜底: 3 轮后仍不足 → LLM 回退 + 附醒目警告"此答案未经图谱验证"

3. 两个精妙设计

确定性策略优化器(而非 LLM 重写查询): 这是全文最关键的工程决策。让 LLM 重写 Cypher 会引入新的不确定性——改写后可能更糟。团队选择了一个确定性决策树:Coverage 不足→加深;语义相关度不足→切换 BFS/DFS;密度不足→放宽节点限制。每次修改都是算法级的,可预测、可复现

BFS vs DFS 的策略映射: 事实/诊断类查询→BFS(广度优先,浅深度 k=2,快速获取实体属性);因果/多跳推理→DFS(深度优先,深深度 k=3~4,沿关系链深度探索)。这套映射是预定义的,不依赖 LLM 判断。

实验:30 道题考卷 + 双轨道评分

评估数据集由三位专家构建+盲审:10 题简单事实查询("恩替卡韦用于什么病?")、10 题多跳推理("哪些肝硬化病因推荐肝移植?")、10 题模糊口语化查询("我肝脏难受还腹胀,该吃什么药?")。

三个基线均使用 GPT-4-1106-preview 为基础模型,确保性能差异归因于架构:独立 GPT-4 / 标准 RAG(向量检索 53 份指南纯文本) / 基础 Graph RAG(去掉"决策+优化"模块的消融版)。评估采用 RAGAS 自动评分 + 2 位肝病专家人工评分双轨道。

主要结论

1. 三项核心指标全面碾压

模型
Faithfulness
Context Recall
Answer Relevancy
GPT-4(独立)
0.82
0.74
0.70
标准 RAG
0.86
0.76
0.73
基础 Graph RAG
0.87
0.83
0.85
本文 Agentic Graph RAG0.940.920.91

Faithfulness 0.94 意味着 94% 的陈述可追溯到 KG 中的证据——这在临床场景中几乎是刚需。从基础 Graph RAG(0.87)到本文框架(0.94),自纠正机制的净增益是 +7 个百分点

2. 专家评分:安全性几乎满分

模型
Accuracy
Completeness
Safety
GPT-4(独立)
4.1
4.0
4.1
标准 RAG
4.3
4.2
4.3
基础 Graph RAG
4.4
4.3
4.4
本文框架4.84.64.9

专家特别指出:GPT-4 面对复杂临床问题时,会给出"看似合理但存在临床风险"的建议——而这种风险在单纯的自动评估中很难被捕获。本文框架通过"评估→优化→补充"循环几乎消除了这类问题。

3. 实体链接的优雅降级

系统能正确处理各种输入变形:专业术语("hepatic steatosis")、口语化表达("liver fat")、缩写("HCC")、甚至拼写错误("cirrosis")均能归一化到正确实体。而面对无意义输入("liver gunk")时,不是硬匹配,而是识别失败→优雅回退+警告用户——这恰恰是临床 AI 最需要的安全边界意识。

研究亮点与启示

亮点一:自纠正循环的"外科手术式"设计。 不是简单地"让 LLM 重试",而是把纠正拆解为语义验证(防错查) + 充分性评估(防漏查) + 确定性优化(防越改越错)。每个组件解决一个具体问题,组合起来形成完整的纠错闭环。

亮点二:确定性 > 灵活性。 策略优化器宁可用规则决策树,也不让 LLM 重写 Cypher——这在临床场景中是教科书级的工程选择。可预测、可追溯、可复现比"看起来更智能"重要得多。

亮点三:回退而非硬撑。 当 KG 确实没有相关信息时,系统不是编造,而是明确告知"以下内容未经图谱验证"。这种"知之为知之,不知为不知"的设计,是临床 AI 从实验室走向临床的关键一步。

亮点四:KG 不只是"大",更要"细"。 属性图中每条 RECOMMENDS_DRUG 关系包含证据等级、推荐强度、药物审批状态——这意味着系统不仅知道"什么药治什么病",还知道"这个推荐有多可信"。这对临床决策的权重判断至关重要。

启示: Agentic RAG 不是 Graph RAG + Agent 的简单拼装。真正的增益来自对每个环节可能出错的地方做针对性防御——查前验证(防错查)→查后评估(防漏查)→优化可控(防越改越错)→不足回退(防硬编)。这套"纵深防御"的设计哲学值得所有临床 AI 系统借鉴。

📌 每天一篇前沿论文,5 分钟读懂核心思想。我们聚焦 AI × 医学信息学 × 临床决策支持交叉前沿,用说人话的方式讲最硬的论文。

基于个人理解,欢迎讨论,如有侵权请联系删除