Rag新宠儿StructRAG,擅长解决复杂推理!

发布时间2024年10月24日

在当前的自然语言处理领域,检索增强生成(RAG)方法被广泛应用于知识密集型任务。然而,现有的RAG方法在处理这些任务时遇到了一系列挑战,尤其是当所需信息分散在多个文档中时,难以准确识别关键信息并进行全局推理中科院软件所阿里巴巴达摩院携手提出了StructRAG框架,增强大语言模型(LLMs)在复杂的现实应用中的推理能力。

想象一下,你向AI助手提出一个复杂的问题,它需要从多个来源中拼凑信息。这时,StructRAG 上场了!这个新框架不仅能重组分散的信息,还能用最优结构格式提升推理效率。

StructRAG是什么

针对现有的RAG方法存在的问题,中科院软件所阿里巴巴达摩院共同打造StructRAG,,解决了信息分散时,难以准确识别关键信息并进行全局推理的问题值得注意的是阿里首席科学家黄非也出现在名单中。

来源:https://www.aminer.cn/pub/670c7bd201d2a3fbfccd324f?fr=structrag


简单来说:StructRAG 是一种针对知识密集型推理任务的增强型语言模型框架,它通过在推理过程中构建和利用结构化知识来提升模型的推理能力。

StructRAG主要包含三个模块:

混合结构路由器    

  • 目的: 根据当前任务的需求,选择最适合的知识结构类型
  • 方法:
    • 分析问题q和文档核心内容C。
    • 从五种候选结构类型中选择最合适的类型,包括表格、图形、算法、目录和文本块。
    • 使用 DPO 算法进行训练,使路由器能够准确识别不同类型知识的适用性。


分散知识结构化器

  • 目的: 将原始文档中的文本知识转换为结构化知识。
  • 方法:
    • 使用 LLM 的理解和生成能力,从每个原始文档 d(i) 中提取结构化知识 k(i)t
    • 生成结构化知识的描述。
    • 将所有结构化知识整合为一个整体,并构建整体描述。


结构化知识使用器

  • 目的: 利用结构化知识回答问题
  • 方法:
    • 将原始问题 q 分解为多个子问题 q(j)
    • 从结构化知识中提取与每个子问题相关的精确知识k(j)t
    • 集成所有子问题和提取的知识,生成最终答案 a。


StructRAG有什么优势

StructRAG 通过结构化知识高效整合分散信息,为每个任务量身定制最佳知识结构类型,在复杂知识密集型推理任务中展现出卓越性能。

与某些基于图结构的 RAG 方法相比,StructRAG 不仅在更广泛的任务中表现出色,而且运行速度更快,其灵活的知识表示方式超越了单一结构类型方法的局限性。

关于作者

黄非毕业于卡耐基梅隆大学计算机学院,之后在 IBMFacebook 从事自然语言处理的研发和技术管理等职位。曾在自然语言处理和人工智能的顶级会议和期刊发表文章 40 多篇,获得美国专利 10 多项,曾担任 ACL,IJCAI,COLING 等多个 NLP 国际会议的领域主席 / 资深程序委员和多个期刊会议论文的审稿人,H指标高达63

加入阿里后,他带领自然语言处理 (NLP) 团队开发了首批中文大型语言模型 (LLM) 之一:PLUGAliceMind,并演变成阿里巴巴的 ChatGPT 系统通义千问,并在机器阅读理解 (MRC)、视觉问答 (VQA) 和中文理解 (CLUE) 等任务中首次取得了超越人类表现的成果。