你的RAG能理解"这张图表说明了什么"吗?
某券商的分析师每天要阅读200份研报,其中70%的信息在图表中——柱状图、趋势线、饼图、表格。纯文本RAG只能处理文字,面对图表完全无能为力。
多模态RAG就是为解决这个问题而生的。但实现多模态RAG的难度,是纯文本RAG的3倍以上。
多模态RAG的三种技术路线
路线一:文本描述替代(最简单)
用视觉模型(GPT-4V、Claude Vision)把图片转成文字描述,然后存入纯文本RAG。
优点:实现简单,复用现有RAG基础设施 缺点:描述可能丢失细节,图表数据在转换中失真
实测:1000张研报图表
- 转文字描述后检索 Recall@10:72.3%
- 图表数据失真的比例:28%
金句:文本描述替代是"最偷懒"的多模态方案。能跑,但不够好。**
路线二:双向量空间(中等复杂度)
图片用CLIP生成视觉向量,文本用BGE生成文本向量,存在两个向量空间中。查询时分别检索,合并结果。
优点:保留视觉信息,检索精度高 缺点:需要两个向量数据库,架构复杂
实测:1000张研报图表+5000段文本
- 纯文本RAG Recall@10:65.2%
- 双向量空间 Recall@10:85.8%
- 提升:+20.6个百分点
路线三:统一向量空间(最先进)
用多模态Embedding模型(如ColPali、UniVL)将图文统一Embedding到同一个向量空间。
优点:图文在同一个空间中,自然支持跨模态检索 缺点:多模态Embedding模型还不够成熟,2026年仍处于早期
实测:ColPali统一向量空间
- Recall@10:92.1%
- 跨模态检索(文字搜图片、图片搜文字):88.5%
金句:统一向量空间是多模态RAG的终局,但2026年还在路上。**
实战:金融研报多模态RAG
我们为某券商构建了一个多模态RAG系统,处理研报中的文本+图表+表格。
架构:
- 文档解析:LlamaParse解析PDF,提取文本、表格、图片位置
- 图片处理:CLIP生成图片Embedding,GPT-4V生成图片文字描述
- 表格处理:大模型提取表格数据,转为结构化JSON
- 统一索引:文本存在Milvus(BGE-M3向量),图片存在Milvus(CLIP向量),表格存在PostgreSQL
- 多模态检索:查询时同时检索文本、图片、表格,合并结果
- 多模态生成:GPT-4V理解检索到的文本+图片+表格,生成综合答案
关键数据:
- 多模态Recall@10:92.1%(vs 纯文本65.2%)
- 分析师研报阅读时间:从4小时/天降到1.5小时/天
- 图表理解准确率:88.3%
金句:多模态RAG的核心不是"把图片存进去",而是"让图片和文本在同一个语义空间中对齐"。**