随着多模态大语言模型(MLLM)的广泛应用,模型在理解复杂问题时经常会出现“幻觉”现象,即模型生成的内容与事实不符。多模态检索增强生成(mRAG)技术旨在通过外部知识库的检索来解决这一问题,但现有的mRAG方法多依赖于预定义的检索流程,难以应对现实世界中复杂、多变的知识需求。
为解决这一问题,阿里巴巴通义实验室RAG团队开发了
OmniSearch
,业内首个具备自适应规划能力的多模态检索增强生成框架。OmniSearch能够动态拆解复杂问题,根据当前的检索结果和问题情境调整下一步的检索策略,模拟了人类在解决复杂问题时的行为方式,显著提升了检索效率和模型生成的准确性。
-
Github链接:https://github.com/Alibaba-NLP/OmniSearch
-
Demo链接:https://modelscope.cn/studios/iic/OmniSearch
OmniSearch:多模态检索的新纪元
传统mRAG的局限性
现有的mRAG方法通常采用固定的检索流程,面对复杂的多模态问题时,模型无法灵活调整检索策略,导致如下两大问题:
-
非自适应检索
:检索策略无法根据问题中间步骤的变化或新的发现进行调整,无法充分理解或验证多模态输入,造成信息获取不完整。
-
过载检索
:单次检索过度依赖单一查询,难以获取问题真正所需的关键知识,往往导致无关信息过多,增加推理难度。
OmniSearch针对这些局限性进行了突破。通过模拟人类的思维方式,OmniSearch能够动态地将复杂的多模态问题分解为多个子问题,并为每个子问题制定相应的检索步骤和策略,确保模型获取到精确的答案。
OmniSearch方法
OmniSearch引入了一种全新的动态检索规划框架,旨在解决现有多模态检索增强生成(mRAG)方法中的非自适应和检索过载问题。它的核心创新在于动态检索规划,即通过模拟人类思考问题的方式,将复杂的问题拆解为多个子问题,并通过递归检索与推理流程,逐步接近问题的最终解答。
OmniSearch的核心架构由以下几部分组成:
1.规划代理(Planning Agent)
OmniSearch的规划代理是其核心模块,负责对原始问题进行逐步分解。具体来说,规划代理会根据每个检索步骤的反馈,决定下一步要解决的子问题,并选择合适的检索工具来进一步获取信息。这个模块能够动态地规划检索路径,避免了传统mRAG中一次性检索所带来的信息过载问题。
规划代理的工作流程如下:
-
首先,它通过初步分析问题,提出需要解决的第一个子问题。
-
在检索到初步答案后,代理会对结果进行分析,决定是否需要进一步的检索或者是否有新的子问题需要提出。
-
代理会灵活选择不同的检索方式,直至最终获得足够的信息给出问题的完整解答。
2.检索器(Retriever)
OmniSearch的检索器负责执行实际的检索操作,它可以根据规划代理的指示,进行图像检索、文本检索或跨模态检索。OmniSearch支持多种检索方式,包括:
-
-
文本检索
:根据输入的文本内容检索相关的文本信息;
-
跨模态检索
:通过输入的多模态数据(如图片加文本)进行跨模态的信息检索。
-
每次检索完成后,检索器会返回相关信息供规划代理进行分析和处理,从而决定接下来的行动。
3.子问题求解器(Sub-question Solver)
子问题求解器的主要功能是对检索到的内容进行总结和解答。该模块会根据规划代理提出的子问题,从检索到的知识中提取出相关的信息并生成对应的回答。求解器可以是任意多模态大语言模型,甚至可以是规划代理本身。
子问题求解器还具备高度的可扩展性,可以与不同大小的多模态大语言模型集成。在实验中,OmniSearch分别集成了GPT-4V和Qwen-VL-Chat模型,验证了其在多种环境下的有效性。
4.迭代推理与检索(Iterative Reasoning and Retrieval)
OmniSearch采用了递归式的检索与推理流程。每当模型提出子问题并获得初步答案后,它会根据当前的解答状态判断是否需要继续检索,或是提出新的子问题。这个过程会持续进行,直到OmniSearch认为已经获得了足够的信息可以给出问题的最终答案。
5.多模态特征的交互
为了能够同时处理文本、图像等多模态信息,OmniSearch对检索得到的多模态特征进行了有效的交互。模型能够根据不同模态的信息灵活调整检索策略,例如在文本推理时引入网页的常识知识,或者是在分析图像时调用视觉信息来辅助判断。
6.反馈循环机制(Feedback Loop)
OmniSearch在每一步检索和推理后,都会利用反馈循环机制来反思当前的检索结果并决定下一步的行动。这种机制使得OmniSearch可以在遇到错误信息或不足信息时,自动调整检索方向,从而提高检索的精确度和有效性。
案例展示
在一个涉及多个模态的复杂问题中,例如“*(图中两人)哪部电影的票房更高?”时,OmniSearch首先通过图像识别出其中的演员,然后根据演员的信息进行文本检索,查找相关电影的票房信息。与传统的单步检索不同,OmniSearch在每一步的检索过程中都会依据最新的检索结果进行反思与推理,从而逐步接近问题的正确答案。
OmniSearch的技术优势
OmniSearch通过以下关键技术提升了多模态检索增强生成的能力:
-
自适应检索规划
:OmniSearch能够根据问题的解决进程,动态调整检索策略。例如,当面临一个涉及多个图片和文本的复杂问题时,OmniSearch会首先对图片中的关键信息进行初步检索,然后根据检索结果动态规划后续的检索步骤,确保获取到与问题相关的关键知识。
-
灵活的检索工具选择
:OmniSearch可以根据问题的类型选择不同的检索工具,包括图像检索、文本检索和跨模态检索。它能够在不牺牲准确率的情况下,大幅减少不必要的检索步骤。
-
模块化设计
:OmniSearch可作为一个即插即用的检索模块,与任意多模态大语言模型(MLLMs)集成,使现有的MLLMs具备更强的动态问题解决能力。
Dyn-VQA:填补数据集空白
为了进一步推动多模态检索增强生成的研究,我们构建了全新的
Dyn-VQA
数据集。Dyn-VQA包含了1452个动态问题,涵盖了三种类型:
-
答案快速变化的问题
:这些问题的背景知识不断更新,需要模型具备动态的再检索能力。
-
多模态知识需求的问题
:问题需要同时从多模态信息(如图像、文本等)中获取知识。
-
多跳问题
:问题需要多个推理步骤,要求模型在检索后进行多步(特别是大于2步)推理。
Dyn-VQA数据集专为评估OmniSearch这样的动态检索方法设计,弥补了现有VQA数据集在处理动态问题时的不足,展示了OmniSearch在复杂问题解决中的强大能力。
实验结果
在一系列基准数据集上的实验中,OmniSearch展现了显著的性能优势。特别是在处理需要多步推理、多模态知识和快速变化答案的问题时,OmniSearch相较于现有的mRAG方法表现更为优异。
1.在Dyn-VQA数据集上的表现
在Dyn-VQA数据集上,我们对比了OmniSearch与多种现有的mRAG方法,包括基于两步检索的传统mRAG,以及其他商用生成性搜索引擎(如Bing Chat、Perplexity AI、Gemini)。实验结果显示,OmniSearch在多个维度上均取得了突破性进展:
-
答案更新频率
:对于答案快速变化的问题,OmniSearch的表现显著优于GPT-4V结合启发式mRAG方法,准确率提升了近88%。
-
多模态知识需求
:OmniSearch能够有效地结合图像和文本进行检索,其在需要额外视觉知识的复杂问题上的表现远超现有模型,准确率提高了35%以上。
-
多跳推理问题
:OmniSearch通过多次检索和动态规划,能够精确解决需要多步推理的问题,实验结果表明其在这类问题上的表现优于当前最先进的多模态模型,准确率提升了约35%。
实验结果表明,OmniSearch在三类动态问题上的表现均优于传统的静态检索方法,展现了其在处理复杂动态问题时的独特优势。
2.在其他数据集上的表现