【论文阅读-Part1】PIKE-RAG: sPecIalized KnowledgE and Rationale Augmented Generation

发布于:2025-08-15 ⋅ 阅读:(11) ⋅ 点赞:(0)


摘要:

近年来,RAG(检索增强生成) 系统取得了显著进步。
RAG 的核心思路是:让 大语言模型(LLM) 在生成回答前,先从外部资料中检索相关信息,从而扩展模型的知识范围。

然而,在实际的工业场景中,传统 RAG 仍然有明显不足

  • 单纯依赖检索,无法很好地获取深入的、领域特定的知识
  • 面对专业文档(如法律条款、医学论文)时,逻辑推理和知识应用能力常常不够。

论文提出了一种新的方法 —— sPecIalized KnowledgE and Rationale Augmentation Generation(PIKE-RAG)
它不仅能提取和理解专业知识,还能逐步构建推理链(rationale),引导 LLM 逐步接近准确答案。

1. Introduction

背景与问题
大型语言模型(LLM)在自然语言处理领域带来了巨大变革,它们可以生成连贯且上下文相关的文本,并能完成从文本补全、翻译到摘要等多种任务。这得益于它们在大规模语料上的训练,使其具备较强的通用语言能力。

然而,在处理专业领域的特定问题时,LLM 的表现明显受限,尤其是在工业级应用中。这主要有几个原因:

  1. 领域数据稀缺 —— 专业领域的训练材料较少,导致模型缺乏深层次的领域知识和推理能力。
  2. 幻觉问题(Hallucination) —— 模型可能生成并不存在或不符合事实的内容。
  3. 知识时效性差 —— LLM 的知识库是静态的,只包含其最后训练时刻的内容,无法动态更新。
  4. 长上下文理解不足 —— 面对需要跨长文本保持任务定义的复杂推理,模型性能会明显下降。

RAG 的提出与不足
为了解决上述局限,提出了 检索增强生成(RAG) 方法,它将 LLM 的生成能力与外部检索结合,使生成结果有事实依据,从而提升准确性与可靠性。但在工业应用中,现有 RAG 存在明显不足:

  • 过于依赖检索文本本身,没有深入提取、理解和利用知识。
  • 在需要专业知识和推理逻辑的任务中表现欠佳。
  • 缺乏对工业应用中挑战的系统化分析。

工业级 RAG 面临的三大挑战

  1. 知识来源多样性

    • 工业级 RAG 面对的文档来自不同领域、不同年份,格式多样(扫描图像、数字文本、网页数据、专用数据库等)。
    • 与学术数据集相比,这类数据更复杂且未预处理。
    • 例:LED 产品说明书中可能包含性能表格、特性曲线图和安装示意图——这些非纯文本信息很难被现有 RAG 有效提取。
  2. 领域专业性不足

    • 工业场景要求模型掌握专业术语、逻辑框架和深层知识。
    • 例:半导体设计领域依赖物理原理,现有 LLM 常无法准确提取和组织这些关键知识,导致结果不完整或缺乏合理推理。
    • 评估工业级生成结果质量也非常困难,这制约了 RAG 的发展与落地。
  3. 一刀切策略的局限

    • 不同应用场景的问题复杂度差异巨大:

      • 规则型查询(如邮寄条件)主要考验精确匹配规则的能力。
      • 多跳推理(如跨多个维度比较产品)则要求整合多来源信息并推理得出答案。
    • 现有 RAG 多采用统一策略,无法针对不同难度和需求优化,导致实际应用中准确率不足。

为解决这些问题,作者提出 PIKE-RAG(sPecIalized KnowledgE and Rationale Augmented Generation,专业知识与推理增强生成)框架:

  • 核心目标:有效提取、理解并应用专业知识,并针对任务构建合理推理逻辑。

  • 根据任务难度,将问题分为四类:

    1. 事实类问题
    2. 可链接推理类问题
    3. 预测类问题
    4. 创造类问题
  • 为 RAG 系统定义分级能力标准,支持分阶段开发与部署,可衡量可控地提升系统能力。

2. Related work

2.1 RAG(检索增强生成)


  • 1. RAG 的核心思想
    先从外部数据源中检索相关信息 → 再将信息与用户问题一起输入大语言模型(LLM)→ 得到更准确、更有知识背景的答案。
  • 最早是为了提升预训练语言模型在知识密集型任务上的表现。

2. Naïve RAG(基础版流程)

  1. 将原始数据转成纯文本(plain text)
  2. 切分成较小的文本块(chunk)
  3. 编码成向量(embedding)
  4. 通过相似度检索找出最相关的前 k 个块
  5. 把这些块加入提示(prompt)里,作为上下文给 LLM 生成答案。

3. 高级 RAG 的优化方向

  • 检索前(Pre-retrieval)优化:

    • 改进查询表达(Query Optimization)
    • 多粒度切分(Multi-granularity Chunking)
  • 检索中

    • 混合检索(Mixed Retrieval)
    • 检索结果重排序(Chunk Re-ranking)
  • 检索后(Post-retrieval):

    • 提高结果和生成质量

4. 模块化 RAG

  • 数据处理更丰富:支持从原始数据 → 结构化数据 → 知识的转换。
  • 检索模块:支持多粒度、多架构检索。
  • 适合处理多种复杂任务(不仅是简单问答)。

5. 高级循环式(Loop-based)RAG

  • 问题:Naïve RAG 对复杂任务(摘要、多跳推理)不够好。

  • 解决

    • ITERRETGEN / DSP:生成的答案会反馈给下一轮检索(retrieve-read-iterate)。
    • FLARE:根据模型生成时的低置信度位置,主动发起新检索补充信息。
  • 优点:逐步逼近正确答案,灵活应对不同需求。


** 2.2 RAG 的知识库(Knowledge Bases for RAG)**

1. Naïve RAG 的局限

  • 仅用纯文本检索的缺点:

    1. 文本中冗余和噪声多,影响检索质量
    2. 复杂问题需要多数据源融合,纯文本不能表达对象间复杂关系

2. 解决方向

  • 引入更多数据源:

    • 搜索引擎
    • 数据库
    • 知识图谱(KG)
    • 多模态数据(图像、视频等)
  • 发展更高效的知识表示(不仅是文本)

3. 知识图谱(KG)优势与挑战

  • 优势:能直观表示对象间复杂关系

  • 案例:

    • GraphRAG:结合知识图谱和面向查询的摘要,回答局部和全局问题
    • HOLMES:构建超关系知识图谱,剪枝后用于 LLM 多跳问答
  • 挑战:构图过程资源消耗极大,数据越多成本越高

2.3 多跳问答(Multi-hop QA, MHQA)

1. 概念

  • 需要跨多个信息片段(不同段落/文档)推理才能回答的问题。

  • 难点:

    • 既要检索多个相关信息
    • 又要将它们有效结合并推理出答案

2. 传统方法

  • 基于图的方法:

    • 构建信息图(Graph)
    • 用图神经网络(GNN)推理预测答案

3. LLM 时代的新方法

  1. 基于知识图谱

    • 构建 KG → 检索相关节点 → 用 LLM 生成答案
  2. 动态子问题分解

    • 把多跳问题拆成一系列子问题
    • 每个子问题的答案会指导下一轮检索
  3. 监督学习方法

    • Self-RAG:训练模型学会检索、生成和自我批改
    • Beam-retrieval:端到端优化多跳检索过程
  4. 自提问(Self-Ask)

    • 在回答前,模型先问自己中间问题
    • 能自动分解问题,并与检索结合解决 MHQA

3. Problem formulation

1. RAG 框架的系统化视角

目前的研究大多集中在 算法优化 来提升 RAG系统性能,但 缺少对 RAG 框架本身的系统性讨论
本文从 三个关键视角 来重新构建 RAG 框架:

  1. 知识库(Knowledge Base)
  2. 任务分类(Task Classification)
  3. 系统分级(System Level)

核心观点:

  • 知识库 是 RAG 的基石,决定检索与生成的质量。
  • 任务复杂度差异大,需按难度分级处理,而不是“一刀切”。
  • 不同任务类型对应不同推理能力,RAG 系统可按能力分为多个等级,逐步演进。

2. 知识库(Knowledge Base)

工业领域知识来源

  • 来自多年积累的行业数据(制造、能源、物流等)。
  • 制药行业例子:研发文档、药品注册申请文件等。
  • 文件类型多样(文本、表格、图表、图片等)。
  • 文件之间存在功能性关联(超链接、引用、关系型数据库关系等)。

问题:现实中的数据复杂,格式多样且有内在关联,而现有开源数据集往往是已切好片段的纯文本,无法直接满足真实工业场景的需求。

结构化知识库的建议

  • 使用 多层异构图 表示知识库:

    • 节点 (V):文档、章节、段落块、图、表格、提炼后的知识节点等。
    • 边 (E):表示节点间的关系与依赖。
  • 三个知识层:

    1. 信息资源层 Gi:原始数据源。
    2. 语料层 Gc:整理后的文本和内容片段。
    3. 提炼知识层 Gdk:更高抽象度的知识(例如规则、模式、关键结论)。

任务分类(Task Classification)

现实中任务的难度受多因素影响:

  1. 知识的相关性与完整性:所需信息是否在知识库中且覆盖完整。
  2. 知识提取复杂度:相关信息是否分散、多源、隐含。
  3. 理解与推理深度:是否需要多步推理、跨文档关联。
  4. 知识应用有效性:是否需要整合、推理、生成洞见或预测。

根据这些因素,将任务分为四类:

1 事实型问题(Factual Questions)

  • 从语料中直接提取明确的事实。
  • 检索到即可回答。
  • 示例:查找某药品的批准日期。

2 可关联推理型问题(Linkable-Reasoning Questions)

  • 需要整合多来源信息、进行多步推理。

  • 子类型:

    • 桥接型(Bridging):顺序关联多个实体得出答案。
    • 比较型(Comparative):对比两个实体的特定属性。
    • 定量型(Quantitative):统计或计算数据(如总量、均值)。
    • 总结型(Summarizing):从多文档中提炼关键点,形成概要。

3 预测型问题(Predictive Questions)

  • 答案不在原文,需要基于已知事实做推断或预测。
  • 常需整理为结构化数据(如时间序列)后分析。
  • 答案可能不唯一(预测的不确定性)。

4 创造型问题(Creative Questions)

  • 基于行业逻辑与知识库,提出新思路或方案。
  • 目标是激发专家创造力,而非直接给出可实施方案。
  • 需要总结模式、识别影响因素,并据此提出可能的创新策略。

注意:同一问题的分类可能随知识库内容变化而变化。

  • Q1:数据直接可查 → 事实型
  • Q2:需筛选+统计 → 可关联推理型
  • Q3:需推断趋势 → 预测型

3. RAG 系统分级(System Level)

根据系统对不同任务类型的处理能力,将 RAG 系统分为四个等级:

等级 能力范围
Level 1 能回答事实型问题(直接检索答案)
Level 2 能处理可关联推理型问题(多步推理、多源整合)
Level 3 能处理预测型问题(基于数据推断趋势)
Level 4 能处理创造型问题(创新性问题解决,提供新思路)

演进路径:从简单信息检索 → 多步推理 → 预测 → 创造。
价值:可为工业应用提供标准化、分阶段的开发路线。