
回复
前期文章提到,多模态的RAG框架ColPali通过视觉语言模型(VLMs)高效地检索纯视觉特征的文档,实现视觉文档问答。 【RAG&多模态】多模态RAG-ColPali:使用视觉语言模型实现高效的文档检索
本文再来看一个类似工作,VisRAG,一种基于视觉语言模型的检索增强生成(RAG)方法,用于解决多模态文档中的信息利用问题。
VisRAG分为VisRAG-Ret和VisRAG-Gen两个阶段。
传统的基于文本的RAG(TextRAG,左)依赖于解析后的文本进行检索和生成,丢失了多模态文档中的视觉信息;基于视觉的RAG(VisRAG,右)采用基于VLM的检索器和生成器直接处理文档页面的图像,从而保留原始页面中的所有信息。
VisRAG-Ret将query和文档页面分别作为文本和图像在VLM中进行编码,产生一系列隐藏状态。最终嵌入通过对最后一层VLM隐藏状态进行加权平均池化得到:
其中,是第个隐藏状态,是序列长度,是第个权重,是查询或页面的嵌入。相似度得分通过查询和页面嵌入的余弦相似度计算。VisRAG-Ret使用InfoNCE损失进行优化:
其中,是正文档, 是负文档集, 是查询和d之间的相似度得分,是温度。
VisRAG-Gen使用VLM根据用户query和检索到的页面生成答案。
本文转载自公众号大模型自然语言处理 作者:余俊晖