UniversalRAG:跨模态检索的新框架
UniversalRAG是什么?
UniversalRAG 是一种新型的检索增强生成RAG框架,它能检索文本、图像和视频等多种类型的内容,还能根据需要选择不同大小的信息块,比如段落、文档、视频片段或完整视频。这个框架里有个“模态感知路由器”,可以根据需求自动挑选最合适的内容类型,避免偏向某种特定类型。它还能根据不同任务的需要,灵活选择是否需要训练来优化检索效果。经过测试,UniversalRAG 在多个测试场景中都比传统的系统表现更好,检索结果更准确、更有效。
核心特点
模态感知路由机制:传统的 RAG 方法通常将所有模态的数据强行嵌入到一个统一的表示空间中,这会导致“模态差距”问题,即检索倾向于偏向与查询相同模态的内容。UniversalRAG 通过引入模态感知路由机制,动态识别最合适的模态特定语料库,并在其中执行针对性检索。
多粒度检索:除了模态差异,UniversalRAG 还考虑了数据粒度(即语料库中每个条目的大小或单位)。它将每种模态细分为多个粒度级别,例如文本分为段落级和文档级,视频分为短片段和完整视频。这种设计可以根据查询的复杂性和范围进行精细化检索。
多模态支持:UniversalRAG 支持文本、图像和视频等多种模态的检索,能够根据查询的需求动态选择最合适的模态。
主要目标
多模态知识检索:设计模态感知路由机制,避免将所有模态强制纳入统一表示空间导致的模态差距问题,可动态识别最合适的模态特定语料库并进行针对性检索。
多粒度知识整合:将每种模态组织到多个粒度级别,如段落级、文档级、图像级、剪辑级和视频级等,能根据查询的复杂性和范围进行微调检索,更灵活地适应不同查询需求。
研究方法
模态感知路由机制:维护每个模态的独立嵌入空间,引入路由模块。该模块可根据查询的模态需求,动态选择最合适的模态特定语料库进行检索,避免模态差距。
多粒度语料库构建:考虑数据的粒度,将每种模态组织到多个粒度级别,使系统能根据查询的复杂程度和范围,选择合适粒度的知识源,提供更精确全面的答案。
路由模块实现:
无训练路由:利用预训练的大型语言模型(如 GPT - 4o)的知识和推理能力,通过提供指令和上下文示例,对查询进行分类并选择检索类型。无需额外训练,但可能受限于预训练模型的偏见和知识边界。
训练路由:通过构造训练数据集对路由模块进行训练,使其能更准确地预测给定查询的最优检索类型,更好地适应特定任务和数据集需求。
实验设置与结果
实验设置
在多个涵盖不同模态(文本、图像、视频)和检索设置的基准数据集上进行实验,使用多种大型视觉语言模型(LVLMs)作为生成器,并设置了多个基线方法进行比较。
实验结果
UniversalRAG 在所有基准数据集上的平均得分优于所有基线方法,在需要多模态知识的查询上表现突出。
训练路由模型在路由模块性能方面优于无训练路由模型,但无训练路由模型仍优于其他基线方法,表明零样本路由在 UniversalRAG 框架内有效。
支持不同粒度的文本和视频语料库能显著提高 UniversalRAG 的性能,相比没有粒度控制的模型,其能根据查询选择合适粒度级别,生成更准确答案。
在跨领域数据集上,GPT - 4o 作为无训练路由模型具有最高的路由准确性和平均问答得分,而训练路由模型因训练数据中查询多样性不足存在过拟合问题。引入集成路由方法,结合训练路由和无训练路由的优势,在跨领域数据集上实现了更好的性能。
优势
提高事实准确性:通过从多种模态和粒度的知识源中检索信息,UniversalRAG 能够更全面地支持模型的响应,减少因单一模态或粒度不足导致的错误。
灵活性:该框架能够灵活处理不同类型的查询,无论是简单的事实性问题还是复杂的分析性问题。
扩展性:通过扩展路由逻辑,UniversalRAG 可以无缝集成新的模态,而无需修改现有的模态特定检索器。
项目主页:https://universalrag.github.io/
论文:https://arxiv.org/abs/2504.20734