想象你在整理一本图文并茂的菜谱书。一位偷懒的图书管理员为了省事,只把每页文字抄进索引卡,把成品菜的照片全部跳过。读者跑来问“桂花糕蒸熟后长什么样”,管理员翻遍所有文字卡也答不上来,只能无奈地说书里好像没写。 图文混合RAG就是那位更细心的管理员。他先扫描整个版面,看清哪些是文字、哪些是图片;再按版式还原正常的阅读顺序;然后把文字和照片按位置关系一一配对;最后把文字和图片编码成同一种检索标签,存进同一个档案馆。读者再来提问,管理员既翻文字卡又翻图片卡,把照片和对应菜谱一起端出来。PPT和PDF里的图、表、文,从此一个都不丢。

岗位关联

掌握图文混合RAG,能让你在企业文档问答、技术手册检索项目中不再“丢图”——这是普通RAG做PPT/PDF问答最常见的翻车点,也是高级RAG工程师的核心竞争力。

目录
  1. 可视化演示
  2. 版面解析
  3. 布局分析
  4. 图文关联
  5. 混合向量化
  6. 索引设计
  7. 联合检索
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

动态演示图文混合RAG的核心机制,通过入门/进阶/实战/优化四种模式展示关键概念与交互流程。

本节配有交互动效(进入视口后自动加载,约 3KB)。

图文混合RAG:图文混排 图文混排文档的版面解析与布局分 图文关联关系建立与语义绑定 核心机制可视化 图文混合RAG整体架构与关键组件

版面解析

管理员翻开菜谱,第一件事是判断每一页上有哪些区域:这一块是文字,那一块是成品图,底下还有个配料表。只有先把“版面上的元素”切分清楚,后续的整理才有地基。图文混合RAG处理PPT和PDF时,同样先做版面解析。

PDF和PPT本质上不是线性文本,而是“按位置摆放视觉内容”的页面。如果像读TXT那样直接按字母顺序读出来,文字会跨栏串行、图片会被忽略。版面解析用OCR(光学字符识别)把文字块提取出来,用目标检测把图片块框出来,用表格识别把行列结构还原。这一步把一页纸变成一堆带坐标的独立积木。

每个解析出的区域称为一个块(Block),记录它的类型、坐标和实际内容:

版面解析像是把菜谱一页页“拆零件”:文字是一堆字卡,照片是单独的照片袋,表格是行列卡。拆得越干净,后面的配对和索引就越不容易张冠李戴。

Blockk=(x0k, y0k, x1k, y1k, typek, contentk)\displaystyle \text{Block}_k = (x_0^k,\ y_0^k,\ x_1^k,\ y_1^k,\ \text{type}_k,\ \text{content}_k)
  1. 坐标框$(x_0^k, y_0^k)$ 是第 $k$ 个块左上角的坐标,$(x_1^k, y_1^k)$ 是右下角坐标,两个点合起来框住这个块在页面上的精确位置。
    (x0k, y0k), (x1k, y1k)\displaystyle (x_0^k,\ y_0^k),\ (x_1^k,\ y_1^k)
  2. 类型标签$\text{type}_k$ 标记这个块是文字、图片还是表格,决定它后续走哪一条处理管线。
    typek∈{text, image, table}\displaystyle \text{type}_k \in \{\text{text},\ \text{image},\ \text{table}\}
  3. 内容提取按类型提取内容:文字块走OCR得到文本,图片块记录图像路径,表格块还原成行列结构。
    contentk={OCR(boxk)typek=textPath(boxk)typek=imageRows(boxk)typek=table\displaystyle \text{content}_k = \begin{cases} \text{OCR}(box_k) & \text{type}_k=\text{text}\\ \text{Path}(box_k) & \text{type}_k=\text{image}\\ \text{Rows}(box_k) & \text{type}_k=\text{table}\end{cases}

布局分析

管理员看完所有零件后,还得知道读者会按什么顺序读:先看大标题,再看正文,然后扫一眼图,最后看图注。布局分析要解决的就是这个“阅读顺序”问题。

版面解析给出“有什么”,布局分析回答“先读什么”。算法先按y坐标把邻近的块分到同一行,一行之内再按x坐标从左到右排列;同时结合字号大小、是否加粗来判断标题和正文的层级。这样一页散乱的积木就恢复成了有结构的文档。

以行高 $h_{\text{row}}$ 作为分行的基准,我们可以给每个块算出行号,再按“行号升序、行内x升序”排序:

布局分析就像给乱掉的菜谱页码重新排序:哪一步在前、哪一步在后、哪句话属于哪个大标题下。顺序对了,后面建立图文关系才不会“指鹿为马”。

row(Bk)=⌊y0khrow⌋,order: (row↑, x0↑)\displaystyle \text{row}(B_k) = \left\lfloor \frac{y_0^k}{h_{\text{row}}} \right\rfloor,\qquad \text{order: } (\text{row} \uparrow,\ x_0 \uparrow)
  1. 行号计算把块的左上角y坐标除以行高并向下取整,得到它属于第几行,同一行的块才可能在阅读顺序里相邻。
    row(Bk)=⌊y0khrow⌋\displaystyle \text{row}(B_k) = \left\lfloor \frac{y_0^k}{h_{\text{row}}} \right\rfloor
  2. 行内排序每个块先按行号升序排列,同行的块再按x坐标从左到右排列,模拟人眼“从上到下、从左到右”的阅读习惯。
    order(Bk)=sort(row(Bk), x0k)\displaystyle \text{order}(B_k) = \text{sort}\left(\text{row}(B_k),\ x_0^k\right)
  3. 层级判定再根据字号等排版特征把块标记为标题或正文,标题优先被当作下一段内容的“锚点”。
    level(Bk)={1sk≥stitle2sk≥sbody3otherwise\displaystyle \text{level}(B_k) = \begin{cases} 1 & s_k \ge s_{\text{title}}\\ 2 & s_k \ge s_{\text{body}}\\ 3 & \text{otherwise}\end{cases}

图文关联

管理员把照片和菜谱步骤一本一本放回原位:照片旁边通常就是描述它的文字。最朴素却常常最有效的办法,就是看空间距离——成品图右边的文字,多半就是在讲这道菜怎么做。

图文关联要建立文字块与图片块之间的对应关系。最基础的手段是空间邻近:计算每个文字块中心与图片块中心的距离,距离最小的文字块,就是这张图的“图注”或上下文。更高级的方案是训练跨模态对齐网络,让文字和图片在语义层面直接对齐,但这需要标注数据,也更贵。

用欧氏距离来量化“文字块 $t$ 是否在说图片 $i$”:

图文关联就像把“成品照片”贴回对应的“菜谱步骤”旁边。空间邻近法零成本、可解释性强,优先用它;遇到跨页或图文分离的复杂版式,再用语义对齐网络补救。

d(t,i)=(xt−xi)2+(yt−yi)2,link(t)=arg⁡min⁡i∈imagesd(t,i)\displaystyle d(t, i) = \sqrt{(x_t - x_i)^2 + (y_t - y_i)^2},\qquad \text{link}(t) = \arg\min_{i \in \text{images}} d(t, i)
  1. 中心坐标$(x_t, y_t)$ 是文字块的中心点,$(x_i, y_i)$ 是图片块的中心点,把块抽象成点才好量距离。
    (xt,yt)=center(textt),(xi,yi)=center(imagei)\displaystyle (x_t,y_t)=\text{center}(\text{text}_t),\quad (x_i,y_i)=\text{center}(\text{image}_i)
  2. 欧氏距离两点间直线距离越大,说明文字离图越远,描述这张图的概率就越低。
    d(t,i)=(xt−xi)2+(yt−yi)2\displaystyle d(t,i)=\sqrt{(x_t-x_i)^2+(y_t-y_i)^2}
  3. 最小配对在所有图片中找距离最近的那一张,作为该文字的关联图;距离超过阈值则视为无图可配。
    arg⁡min⁡id(t,i)\displaystyle \arg\min_{i} d(t,i)

混合向量化

管理员要把文字卡和照片卡都做成检索标签。文字有文字的写法,照片有照片的写法,最后要都塞进同一个抽屉,所以两类标签必须说同一种语言。

文本块用文本编码器(如BERT系列、GTE)编码成向量,图片块用视觉编码器(如CLIP、ViT)编码成向量,再通过对比学习把两种向量映射到同一个空间。于是“桂花糕”这个词向量和桂花糕照片的视觉向量在空间里离得很近,检索时就能用同一个尺子去量。

这把“同一个尺子”通常就是余弦相似度:

混合向量化好比给文字卡写英文标签、给照片卡写英文标签,放进同一个英文检索抽屉。语言统一了,管理员才能在一次检索中同时翻到文字和照片。

sim(q,m)=vq⋅vm∥vq∥⋅∥vm∥\displaystyle \text{sim}(q, m) = \frac{\mathbf{v}_q \cdot \mathbf{v}_m}{\|\mathbf{v}_q\| \cdot \|\mathbf{v}_m\|}
  1. 查询向量查询文本通过文本编码器得到向量 $\mathbf{v}_q$,它是一个高维数值数组,代表这句话的语义坐标。
    vq=Etext(q)\displaystyle \mathbf{v}_q = E_{\text{text}}(q)
  2. 候选向量候选块 $m$ 可以是文本块也可以是图片块,分别经过各自的编码器得到 $\mathbf{v}_m$。
    vm={Etext(cm)m is textEimage(cm)m is image\displaystyle \mathbf{v}_m = \begin{cases} E_{\text{text}}(c_m) & m \text{ is text}\\ E_{\text{image}}(c_m) & m \text{ is image}\end{cases}
  3. 余弦归一点积衡量两个向量方向一致的程度,再除以模长消除长度影响,相似度落在 $[-1,1]$,越接近1越相关。
    vq⋅vm∥vq∥⋅∥vm∥\displaystyle \frac{\mathbf{v}_q \cdot \mathbf{v}_m}{\|\mathbf{v}_q\| \cdot \|\mathbf{v}_m\|}

索引设计

卡片做好后,管理员要按编号入柜。每张卡片记录“来自哪本书、哪一页、放在什么位置”,方便快速定位。图文混合RAG的索引设计也是这个思路。

索引层把上一阶段产生的图文块统一管理起来。每个条目包含唯一编号、类型、向量和元数据。工程上常用的做法是:向量字段交给近似最近邻索引(如HNSW)做快速召回,元数据字段用来做过滤(只看第几章、只看某一份PPT)。

一个标准的多模态索引条目可以这样描述:

索引设计像给每张卡片贴上编号和来源地。检索时先按向量筛出一批候选,再按元数据去掉不符合条件的卡片,快速又准确。

entry=(chunk_id, kind, v, meta)\displaystyle \text{entry} = (\text{chunk\_id},\ \text{kind},\ \mathbf{v},\ \text{meta})
  1. 唯一编号$\text{chunk\_id}$ 是全局唯一的块编号,检索命中后能立刻定位回原始文档和坐标。
    chunk_id∈N\displaystyle \text{chunk\_id} \in \mathbb{N}
  2. 类型字段$\text{kind}$ 标记该条目是文本块、图片块还是图文对,影响后续打分时的处理逻辑。
    kind∈{text, image, pair}\displaystyle \text{kind} \in \{\text{text},\ \text{image},\ \text{pair}\}
  3. 向量字段$\mathbf{v}$ 是该块在统一向量空间里的向量,用于向量相似度检索。
    v∈Rd\displaystyle \mathbf{v} \in \mathbb{R}^{d}
  4. 元数据$\text{meta}$ 保存来源页号、坐标、所属标题等上下文,用于过滤和答案溯源。
    meta={page, box, title, … }\displaystyle \text{meta} = \{\text{page},\ \text{box},\ \text{title},\ \dots\}

联合检索

读者问“桂花糕蒸熟后什么样”,管理员先在文字卡片里找到“桂花糕”的相关段落,又在照片卡片里找到对应成品图,把两者一起端给读者,还注明“这张图配这段文字”。

联合检索阶段的关键是把文本模态和图像模态的得分合并。常见做法是多路召回:文本向量一路、图片向量一路,各取前K名;再用融合函数统一排序。最简单的融合是取最大值——图文是互补信息,如果一个模态匹配很强,就不应该被另一个弱模态拖累。

用数学表达就是:

更精细的方案是加权求和 $\alpha s_t + \beta s_i$,再用重排序模型微调。但无论怎么融合,目的都一样:让读者拿到的答案既有文字论证,又有图表佐证,图文并茂。

score(q,c)=max⁡(simtext(q,c), simimage(q,c))\displaystyle \text{score}(q, c) = \max\left(\text{sim}_{\text{text}}(q, c),\ \text{sim}_{\text{image}}(q, c)\right)
  1. 文本得分$\text{sim}_{\text{text}}(q, c)$ 表示查询与候选块文字的语义相似度。
    st=simtext(q,c)\displaystyle s_t = \text{sim}_{\text{text}}(q, c)
  2. 图像得分$\text{sim}_{\text{image}}(q, c)$ 表示查询与候选块视觉内容的相似度。
    si=simimage(q,c)\displaystyle s_i = \text{sim}_{\text{image}}(q, c)
  3. 取最大值当只有图片相关而文字不相关时,$s_t$ 低但 $s_i$ 高,取最大值可保住这条强证据。
    max⁡(st, si)\displaystyle \max(s_t,\ s_i)

AI 应用场景

企业PPT知识库问答

阶段:图文混合RAG全链路(版面解析 → 关联 → 索引 → 联合检索)

解决的问题:企业沉淀了大量季度汇报PPT,传统RAG转成纯文本后,问“去年Q3销售额趋势图怎么走的”只能答出一串数字,趋势图本身完全检索不到。图文混合RAG把汇报页里的柱状图、折线图连同图标题一起编入索引,回答时能直接把图表截图作为证据返回。

具体案例:某零售公司的分析师办公系统接入图文混合RAG后,业务人员提问“华东区近四个季度增速对比”,系统返回包含一张柱状图截图和对应分析文字的答案卡片,核对原PPT页码一键跳转。

技术手册PDF检索

阶段:版面解析 + 表格结构识别 + 图文联合检索

解决的问题:设备维修手册里大量装配图、接线图、零件表格,传统PDF转文字会把表格拆烂、图片丢弃。图文混合RAG用表格识别保留行列关系,装配图与附近零件清单关联,维修工问“更换轴承的步骤和示意图”时,能同时拿到步骤文字和装配图。

具体案例:一家工业设备厂商把3000页维保手册构建为图文混合知识库,现场维修人员语音搜索故障代码,秒级返回包含接线图、拆解图和操作步骤的多模态卡片,排障时间缩短40%。

培训资料智能化助手

阶段:布局分析 + 多模态索引 + 答案图文编排

解决的问题:新员工培训PPT中,流程图、组织架构图、课程截图是关键信息载体。图文混合RAG按阅读顺序组织内容,回答“新员工转正流程”时,自动定位流程图放大图并配以文字说明。

具体案例:某互联网公司内部培训平台上线“课件问答助手”,新员工提问“报销审批需要几个节点”,助手返回审批流程图并附上每一步的负责部门文字,培训答疑人力成本明显下降。

Python 演示

python88 行
import mathimport re  class Block:    """文档页上的一个元素:文本块或图片块。"""    def __init__(self, bid, kind, x0, y0, x1, y1, text=''):        self.bid = bid        self.kind = kind        self.x0, self.y0 = x0, y0        self.x1, self.y1 = x1, y1        self.text = text        self.image_caption = ''   # 关联后生成的图片说明     def center(self):        return ((self.x0 + self.x1) / 2, (self.y0 + self.y1) / 2)  def reading_order(blocks):    """按排版规则排阅读顺序:先分行,然后行内按 x 排序。"""    return sorted(blocks, key=lambda b: (round(b.y0 / 40), b.x0))  def find_links(blocks, max_dist=160):    """把每个文本块链到离它最近的图片块,模拟图文关联。"""    texts = [b for b in blocks if b.kind == 'text']    images = [b for b in blocks if b.kind == 'image']    links = []    for tb in texts:        tx, ty = tb.center()        best, best_d = None, max_dist        for ib in images:            ix, iy = ib.center()            d = math.hypot(ix - tx, iy - ty)            if d < best_d:                best, best_d = ib, d        if best:            links.append((tb, best))            best.image_caption = tb.text[:20]    return links  def simple_tokenize(text):    """极简分词:按非字母数字切分,用于相似度模拟。"""    return set(re.findall(r'[\w\u4e00-\u9fff]+', text.lower()))  def joint_retriev(query, page):    """联合检索:文本相似度和图片说明相似度取最大值。"""    qw = simple_tokenize(query)    results = []    for b in page:        if b.kind != 'text':            continue        tw = simple_tokenize(b.text)        text_score = len(qw & tw) / max(len(qw | tw), 1)        if b.image_caption:            iw = simple_tokenize(b.image_caption)            image_score = len(qw & iw) / max(len(qw | iw), 1)        else:            image_score = 0.0        results.append((max(text_score, image_score), b, image_score))    return sorted(results, key=lambda r: r[0], reverse=True)  if __name__ == '__main__':    blocks = [        Block(1, 'text', 20, 20, 300, 60, '季度销售额突破 1200 万'),        Block(2, 'text', 20, 70, 300, 110, '华东区增长最快'),        Block(3, 'image', 380, 30, 580, 160, ''),        Block(4, 'text', 20, 180, 300, 220, '新客户占比提升至四成'),        Block(5, 'image', 380, 200, 580, 300, ''),        Block(6, 'text', 20, 320, 300, 360, '下季度重点拓展华南'),    ]     order = reading_order(blocks)    print('阅读顺序:', [b.bid for b in order])     links = find_links(blocks)    print('图文关联:')    for tb, ib in links:        print(' 文本%d -> 图片%d, 图注=%s' % (tb.bid, ib.bid, ib.image_caption))     query = '华东区销售趋势是什么'    results = joint_retriev(query, blocks)    print('检索引例:')    for score, b, img_score in results:        print(' 文本%d 得分=%.3f (图片得分=%.3f) %s' % (b.bid, score, img_score, b.text[:15]))
目的:演示图文混合RAG在真实项目中的核心数据流——版面解析得到块,布局分析排顺序,图文关联绑定图片说明,联合检索用图文得分取最大值排序。
  1. round(b.y0 / 40)用行高40像素把块近似分到同一行,模拟布局分析中的行号计算
  2. math.hypot(ix - tx, iy - ty)计算文字块中心与图片块中心的欧氏距离,距离越小越可能是一对
  3. best.image_caption = tb.text[:20]把最近的文本块截取前20字作为图片的“图注”,后续检索可以直接对图注打分
  4. len(qw & tw) / max(len(qw | tw), 1)用Jaccard相似度模拟文本向量余弦得分,真实项目用BERT/GTE编码
  5. max(text_score, image_score)联合得分的核心:只要文本或图片任一模态强匹配,就不让弱模态拖后腿

常见误区

误区我把PDF用OCR转成文本,喂给普通RAG就行。图片反正模型也不看,丢了无妨。季度报告里的趋势图,文字描述里也有数字,应该够了吧。

正解趋势图里“哪个季度拐点、哪个区域断层”这类视觉结构信息,文字里往往没有。OCR只提取文字,图片承载的语义就全部丢了。图文混合RAG之所以成立,正是因为版面解析阶段保留了图片块,后续用视觉向量参与检索。就像管理员只抄文字不存照片,读者想看成品图时永远拿不到。

为何常见:大模型本身只吃文本,很多人习惯性认为“图不重要”,却忽略了回答时图片本身就是要返回的证据。

误区文本放一个向量库,图片放一个向量库,两个库各自检索,最后把结果拼在一起就行。这听起来很模块化,有什么问题吗?

正解分开建库最大的问题是图片没有上下文。一张放在菜谱中段的步骤图,脱离开文字后根本无法被“桂花糕怎么蒸”直接命中。图文混合RAG的做法是建立图文对或统一条目,图片与关联文字作为一个整体进入索引,检索时图文自动绑定。两位管理员各管一个房间互不通信,读者永远拿不到配着照片的完整答案。

为何常见:向量数据库种类多,按数据类型分库存储是直觉做法,但忽略了图文之间的强关联。

误区PDF转文字时跨栏串行、页眉页脚乱入,大模型不是能理解上下文吗?自己纠正一下排版应该没问题。

正解版式错乱会让句子顺序颠倒、表格行列错位,变成“语义杂质”。大模型虽然聪明,但在错误上下文上检索出来的片段本身就是错的。管理员把菜谱步骤顺序搞乱,再厉害的厨师照着做也会翻车。布局分析恢复阅读顺序是必要环节,不是可有可无。

为何常见:很多人把RAG简化成“文本检索加LLM”两段式,忽略了中间还隔着一层版式信息。

误区给每张图片用多模态大模型写一句描述,然后当文本检索,不就行了?反正大模型什么都能干。

正解生成式描述会损失细节——趋势图里的具体数值、流程图的分支路径、表格里的边界条件,转述一遍难免失真;而且海量图片逐张调用大模型成本很高。空间邻近法零成本且保真,语义对齐网络成本居中。更合理的方案:以空间关联为主,大模型描述只作为缺失时的增强。

为何常见:对“大模型万能”的惯性信任,让人忽略了空间位置本身携带的强关联信号。

误区只要用支持图片的embedding模型,就不需要版面解析和图文关联了。模型不是能理解图片吗?

正解多模态向量模型解决的是“图文如何表示成可比向量”,但它并不知道页面上一张图属于哪个章节、应该和哪段文字绑定。版面解析负责切块,布局分析负责排序,图文关联负责配对,这三个上游步骤决定了多模态向量模型能否派上用场。地基不打,换再贵的模型也白搭。

为何常见:把向量模型神化,忽略了RAG系统是“解析、关联、索引、检索”的完整工程链路。

面试题

Q1. 图文混合RAG要解决的核心问题是什么?

单选题 · easy

  • A.提升文本分词准确率
  • B.让图文信息都可被检索← 正确答案
  • C.加快大模型推理速度
  • D.减少向量存储开销

答案:B。传统RAG只处理文本,把图片和版式丢掉,导致PPT/PDF问答缺图少表。图文混合RAG的核心目标就是让图片和文字一起进入检索链路,回答时图文并茂。其他选项虽然可能是附带收益,但不是设计初衷。

Q2. 把PPT转成PDF再转纯文本,损失最大的是什么?

单选题 · easy

  • A.文字内容本身
  • B.版面信息与图片← 正确答案
  • C.字体与配色信息
  • D.页眉与页脚文字

答案:B。转纯文本后文字通常还在,页眉页脚有时候也能保留,但图片和多栏版式会彻底消失。图文混合RAG的核心价值就是在转文本过程中保留图片块和坐标信息,避免“图被丢光”。

Q3. 布局分析的主要目标是什么?

单选题 · mid

  • A.提高OCR的准确率
  • B.还原阅读顺序与层级← 正确答案
  • C.压缩图片文件大小
  • D.对文档内容加密

答案:B。版面解析回答“页面有什么”,布局分析回答“先读什么”——按行号排序恢复阅读顺序,按字号判断标题层级。OCR准确率是解析环节的事,与布局分析无关。

Q4. 图文关联最省成本且可解释的配对方式是什么?

单选题 · mid

  • A.用大模型逐张生成描述
  • B.依据空间邻近关系配对← 正确答案
  • C.引入人工标注所有图片
  • D.把图片信息全部丢弃

答案:B。文字通常紧挨着它描述的图片,所以直接计算文字块中心与图片块中心的欧氏距离,取最近者配对,零成本且逻辑直观。大模型描述和人工标注成本都高,丢弃图片则彻底失败。

Q5. 混合向量化的目标是什么?

单选题 · mid

  • A.把文本和图片压缩成一个文件
  • B.把图文编码到相同的向量空间← 正确答案
  • C.把向量还原成可读的文字
  • D.消除文档里的全部噪声

答案:B。文本编码器和视觉编码器输出的是两个不同空间的向量,混合向量化通过对比学习把它们映射到同一向量空间,使“桂花糕”文字和桂花糕图片可以互相比较相似度。

Q6. 多模态索引条目中,图片条目至少应包含什么?

单选题 · hard

  • A.像素值和文件哈希值
  • B.图片路径加视觉向量← 正确答案
  • C.原始二进制字节
  • D.图片的缩略图文件

答案:B。索引条目需要能参与向量检索,所以必须存视觉向量;同时要能定位回原文档,所以还要存图片路径。原始字节和缩略图是渲染用的,不参与检索与定位。

Q7. 联合检索中,取文本得分与图片得分最大值的主要原因是什么?

单选题 · hard

  • A.两路得分取平均更稳定
  • B.图文互补防弱项拖累强项← 正确答案
  • C.最大值必然反映真实相关度
  • D.取最大值计算更省时间

答案:B。图文是互补证据:图片非常匹配但文字较弱时,取平均值会把强信号稀释掉;取最大值保证至少有一个模态的强匹配能进入结果。最大值不一定“必然”正确,计算省时也只是副产品。

Q8. 图文混合RAG相比传统RAG的优势包括哪些?

多选题 · easy

  • A.能检索到图片信息← 正确答案
  • B.保留表格结构信息← 正确答案
  • C.降低向量维度开销
  • D.回答时可引用图表← 正确答案

答案:ABD。图文混合RAG让图片、表格结构都进入检索范围,回答时可以把图表作为证据返回给用户。它并不会主动降低向量维度,维度由embedding模型决定,与是否混合无关。

Q9. 版面解析通常包含哪些任务?

多选题 · mid

  • A.文字块检测定位← 正确答案
  • B.图片块检测定位← 正确答案
  • C.表格结构识别还原← 正确答案
  • D.关键词自动摘要

答案:ABC。版面解析负责把页面拆成带坐标的元素块:文字块、图片块、表格块都是它的识别对象。关键词自动摘要是检索后的事,不属于版面解析。

Q10. 图文关联关系建立的方法有哪些?

多选题 · hard

  • A.空间邻近配对← 正确答案
  • B.语义相似度匹配← 正确答案
  • C.跨模态对齐网络← 正确答案
  • D.随机抽样并合并

答案:ABC。空间邻近配对利用“文字挨着图”的版面规律;语义相似度匹配让图注和正文在语义上互相印证;跨模态对齐网络用训练方式学习图文对应。随机抽样没有信息依据,必然失败。