当前的RAG系统仅基于文本,这使得无法利用在现实世界多模态文档中扮演关键角色的视觉信息,如布局和图像。
TextRAG与VisRAG在最终生成准确性上的对比。在TextRAG中,解析后的文本作为检索和生成过程的基础。相比之下,VisRAG直接利用原始文档图像,通过使用基于VLM的检索器和生成器来实现。
VisRAG:一个基于VLM的RAG框架,它通过直接将文档图像嵌入到VLM中来检索和生成信息,从而绕过了传统的文本解析阶段。VisRAG包括两个主要组件:VisRAG-Ret(检索器)和VisRAG-Gen(生成器)。
基于文本的RAG(左)与基于视觉的RAG(右)。传统的基于文本的RAG(TextRAG)依赖于解析后的文本进行检索和生成,这会丢失多模态文档中的视觉信息。我们的基于视觉的RAG(VisRAG)使用基于VLM的检索器和生成器直接处理文档页面的图像,从而保留原始页面中的所有信息。
- 传统RAG流程:典型的RAG流程,包括一个检索器(基于大型语言模型,LLMs)和一个生成器。检索器从知识库中检索相关信息,生成器结合检索到的信息和用户查询生成答案。
- VisRAG框架:它使用视觉-语言模型(VLM)代替传统的基于文本的模型。VisRAG框架包括两个主要组件:
VisRAG-Ret(检索器):使用VLM直接对查询和文档图像进行编码,而不是依赖提取的文本内容。通过加权平均池化(weighted mean pooling)在输入文本或视觉标记的最终隐藏状态上获得嵌入向量,然后通过余弦相似度计算相似性得分进行检索。
VisRAG-Gen(生成器):提出了处理多个检索页面的机制,包括页面连接(将所有页面连接成单个图像)、加权选择(根据置信度选择最终答案)以及支持多图像输入的VLM。
实验表明,VisRAG在检索和生成阶段都优于传统RAG,比传统的基于文本的RAG流程实现了25-39%的端到端性能提升。进一步分析表明,VisRAG在利用训练数据方面是有效的,并展示了强大的泛化能力,使其成为多模态文档RAG的一个有前景的解决方案。
图片
图片
来自DocVQA的案例研究。在这个案例中,VisRAG成功检索到了真实文档,而TextRAG失败了,导致VisRAG能够正确生成答案,而TextRAG生成了错误的答案。
图片
图片
来自InfographicsVQA的案例研究。在这个案例中,VisRAG和TextRAG都成功检索到了正确的文档;然而,只有VisRAG有效地利用了布局信息,从而能够准确生成答案。相比之下,TextRAG因为布局信息的丢失,导致了错误的回答
图片
如果对内容有什么疑问和建议可以私信和留言,也可以添加我加入大模型交流群,一起讨论大模型在创作、RAG和agent中的应用。