在一家跨国文化公司里,有两位传奇员工:一位老画家,一双眼睛能看透世间万物,构图、色彩、光影了然于心;一位资深作家,下笔如有神,逻辑清晰、文采斐然。公司接了个大项目:让画家画出主题,再由作家写成文章。可问题来了——画家只“说”画面语言,作家只“写”日文文字,两人完全无法交流。更棘手的是,这二位都是业界泰斗,既不能辞退,也不能让他们推倒重学,否则既烧钱又可能把吃饭的本领都忘光。 这家公司,就是多模态 AI 团队;老画家是视觉编码器(ViT),资深作家是大语言模型(LLM)。BLIP-2 的破局之道是:请来一位年轻聪明的翻译官——Q-Former。他随身带一本 32 格的空白记事本(可学习 Query 向量),看画时快速记下要点,再翻成作家听得懂的“文字语言”。翻译官先在学校学图文对照(表示学习),再到作家身边实习写稿(生成学习),最终让公司图文贯通:看图画配文案、答视觉问答、陪用户聊天,样样拿手。本文就带你走进 BLIP-2 这家“跨国翻译公司”,看看这位翻译官是如何炼成的。
掌握 BLIP-2 的桥接设计,你将学会如何以小成本撬动大模型——这是多模态 AI 落地中最实用的工程智慧。
目录
可视化演示
展示系统处理流水线、实时性能指标曲线及多方案对比分析,包含数据流转、吞吐延迟监控与方案评估。
本节配有交互动效(进入视口后自动加载,约 3KB)。
系统可视化 处理流程:输入→处理→模型→输出 性能监控:实时指标 P=L×T
背景挑战:为什么需要翻译官
公司不是没尝试过让两位大师“磨合”。最早的想法是:让画家和作家一起重新培训(全量微调),学会彼此的语言。可培训费高得惊人——请顶级大师闭关数月,费用上亿美元;更糟糕的是,培训完的画家居然开始忘本,连最基本的构图都画不出了,作家也写不出从前的优美句子。老板这才明白:大师的本事是多年积累的,动不得。
这个困境在 AI 里被称为“多模态预训练的四大痛点”。第一是算力成本高:从头训练或全量微调视觉-语言模型,需要数千张 GPU 连续跑几个月,预算轻松破百万美元。第二是模态鸿沟:图像特征和文本特征住在两个完全不同的“数学空间”里,直接比对毫无意义。第三是灾难性遗忘:更新参数会覆盖模型原有的预训练知识。第四是目标差异:图像擅长对比学习,文本擅长生成任务,强行用同一个损失函数训练,两边都讨不到好。
BLIP-2 的团队看到了问题的本质:既然两位大师不能动,那就请一个“中间人”来负责沟通。这个中间人不需要懂太多,但必须能听懂画家的“画面语言”,也能说出作家的“文字语言”。用数学语言描述模态鸿沟:
翻译官的价值,恰恰在于跨过这条鸿沟:他站在画面和文字之间,把画家的“法语”转成作家的“日语”。既不改变两边大师的说话方式,又能让信息顺畅流淌——这就是 BLIP-2 最核心的哲学。
- 余弦相似度 cos衡量两个向量方向的接近程度,取值从 -1 到 1,越接近 1 表示越相似,接近 0 表示几乎无关,这是对比学习中的常用度量。
- 图像特征 v_img视觉编码器对图像编码后得到的向量,浓缩了画面的构图、色彩、物体等语义,但它只说“图像语”。
- 文本特征 v_txt语言模型对文字编码后得到的向量,包含词汇、语法、逻辑等语义,但它只说“文本语”。
- 近似等于 0两个向量几乎正交,意味着图像和文本在语义空间里“各说各话”,这正是模态鸿沟的数学本质。
整体架构:翻译公司如何运作
老板的方案很清晰:给画家配备一名专职翻译官,翻译官手中永远有一本 32 格的空白记事本。画家画完一幅画,翻译官快速浏览画面,用 32 个格子记下最精华的要点——比如“傍晚、海边、红色小船”——然后把这份“笔记”翻成日文摘要交给作家,作家基于摘要挥笔成文。
BLIP-2 的整体架构正是这样三个模块串联:视觉编码器(ViT)负责“看”,输出图像特征;Q-Former 负责“记与译”,用 32 个 Query 向量从图像特征中提炼信息;LLM(如 OPT 或 FlanT5)负责“写”,根据 Q-Former 的输出生成文本。这里的关键约束是:ViT 和 LLM 全部冻结,只有 Q-Former 参与训练。
为什么只需要 32 个 Query 就够?因为这是故意的“信息瓶颈”设计。一张图经过 ViT 会产生 200 多个 patch 特征(相当于画家 200 多个观察心得),如果全塞给作家,作家会“信息过载”。Q-Former 用 32 个 Query 主动“提问”,强迫模型把最相关的信息挤进这 32 个向量里——少而精,正是翻译官的职业素养:
翻译官的记事本格子是有限的,所以他必须练就一双火眼金睛,把最重要的信息挑出来。这份“少而精”的摘要,就是画家和作家之间唯一的信息通道——也是整个架构的精髓所在。
- 图像特征 V_img视觉编码器输出的特征集合,数量通常远大于 32,是画家的“全部观察心得”。
- 查询向量 Q32 个随机初始化、可学习的向量,它们像 32 个“问题模板”,在训练中学会该问什么。
- 交叉注意力 CrossAttn把 Q 当提问者、V_img 当被问者,从图像特征中检索并提取信息,得到 32 个压缩特征。
- 远小于符号 ≪32 个查询远小于几百个 patch 特征,形成信息瓶颈,迫使模型聚焦精髓。
Q-Former核心:翻译官的记事本
翻译官的记事本不是普通的本子,里面每一格都像一个“问题”:看到画面,他会想“这是什么物体?”“颜色如何?”“在做什么动作?”。每个问题在训练中不断打磨,直到变成最会提问的 32 个“好问题”。除了记事本,翻译官还有一本“图文对照手册”——这是他在学校里背下来的常识,知道“毛茸茸+喵喵叫”对应“猫”这个词。
Q-Former 的本质是一个轻量 Transformer,他有两个输入入口,形成“双塔结构”:一个分支接收图像特征(视觉塔),一个分支接收文本(文本塔)。视觉塔里,32 个 Query 向量与图像特征做交叉注意力,把画面信息提炼成“摘要”;文本塔里则编码文字信息。两个分支共享一套自注意力层——相当于翻译官的“大脑中枢”,让画面摘要和文字信息在中枢里互相映照、彼此校准。
整个机制的核心是交叉注意力(Cross-Attention)。在视觉塔里,Query 来自可学习的 32 个向量,Key 和 Value 来自视觉编码器的图像特征。这里有一个通用公式,几乎所有 Transformer 都遵循它:
翻译官每看一幅画,就用 32 个问题轮番“采访”画面的每个角落:第一个问题问“主体是什么”,第二个问题问“背景有什么”……最后把 32 段回答整理成一份摘要。这套提问-回答的功夫,就是 Q-Former 看家的本领。
- Q(Query 提问向量)由 32 个可学习 Query 向量构成的矩阵。它们是翻译官的“问题清单”,在训练中学会从图像中提取什么信息。
- K 与 V(键与值)来自图像特征。K 是“索引标签”,决定每个图像 patch 被什么类型的问题命中;V 是“实际内容”,是被提取的具体信息。
- 缩放因子 √d_k当特征维度很高时,点积结果会很大,导致 softmax 进入饱和区、梯度消失。除以根号维度让分布更平滑。
- softmax 与加权求和将注意力分数转成概率权重,按权重对 V 加权求和,得到每个 Query 提取到的“答案”。
冻结双雄:画家与作家各司其职
老画家的看家本领,是把画面切成 16×16 的小方块,一块一块地精读,再拼成整体理解——所以他对细节极其敏感;老作家则擅长见字生文,只要给他三言两语的要点,他就能扩写成结构完整、逻辑通顺的文章。公司给两位大师下了死命令:你们的画法和文风都不得改变,所有沟通工作都交给翻译官。
在 BLIP-2 中,这位“老画家”是 ViT-G/14 视觉编码器——一个在大规模图文对上预训练的巨大视觉模型。它把图像切成 14×14 的 patch,逐块编码后输出特征。“老作家”则是可替换的 LLM:既支持 OPT 这样只含解码器的自回归模型,也支持 FlanT5 这样编码器-解码器架构的模型。两个模型的参数在训练中完全冻结,不参与梯度更新。
冻结带来三个直接好处:一是训练成本骤降,可训练参数量只有 Q-Former 的约 188M,相比动辄数亿到数十亿的全参数微调,开销小了一个数量级;二是保留了双雄毕生所学,不会因微调而遗忘;三是 LLM 可以灵活替换——今天用 OPT,明天换更大的 FlanT5,翻译官不需要重新学“看画”,只需微调“翻译”方式。用公式表达:
两位大师安心做自己的本行,翻译官包揽所有交际。公司不用给大师们付“培训费”,也不用担心他们“学坏了”,只需要把翻译官培养好,就能让整个团队高效运转——这就是冻结策略的智慧。
- 可训练参数 Params_trainBLIP-2 实际更新的参数,主要是 Q-Former(约 185M)加一层输入投影(约 3M),合计约 188M。
- 冻结参数 Params_frozen视觉编码器与 LLM 的参数,少则几亿,多则上千亿,但它们全程不动,只做前向计算。
- 远小于符号 ≪两者相差一个甚至两个数量级,这正是“小成本撬动大模型”的数学基础。
两阶段训练:翻译官的成长之路
翻译官刚入职时笨手笨脚,老板定下两个阶段的培养计划:第一阶段把他送进翻译学校,只学“看图认字”——看到一只猫的卡通画,能对应“猫”字;看到夜晚的海景,能对应“夜”字。第二阶段让他回到公司,在作家身边实习,学习“看图说话”——把一堆画面要点组织成通顺的日语句子。
在技术实现上,阶段一(表示学习)不连接 LLM,Q-Former 单独训练,用三个自监督目标让 Query 学会图文对齐;阶段二(生成学习)才把冻结的 LLM 接上,用语言建模损失让 Q-Former 学会“翻译”给 LLM 听。
阶段一的三个目标各有分工:
两阶段像极了“先理论后实践”的师徒制:先在学校打基础,再到公司练真活。翻译官最厉害的一点是——两个阶段都不打扰两位大师,所有成长都发生在自己身上。当实习结束,翻译官已能脱口译出画面,公司也就正式开张了。
- ITC(Image-Text Contrastive,图文对比)把匹配的图文特征向量拉近,不匹配的推远。这相当于翻译官背“图文对照词典”。
- ITM(Image-Text Matching,图文匹配)二分类任务,判断给定的图文对是否匹配。它让 Query 学会分辨“这张图配这句话对不对劲”,负样本用难例挖掘生成。
- ITG(Image-grounded Text Generation,图像引导文本生成)给定图像特征,让文本分支生成对应的文字描述。这让 Query 学会“把画面翻译成文字”的初步能力。
- 三目标联合三个损失相加共同训练 Q-Former,每个目标从不同角度打磨同一个翻译官,让他在“认图-判图-说图”三方面同时进步。
应用与成效:图文任务显身手
培训完毕,翻译公司正式营业,业务应接不暇:美食杂志送来一张照片,要一句诱人的广告词(图像描述);售后客服收到一张模糊的产品图,要快速回答“这是什么型号”(视觉问答);出版社想做智能画册,要求“看图对话”(多模态对话)。翻译官坐在两位大师中间,沉着应对每一单。
在实际任务中,BLIP-2 展示出强大的零样本能力:在 NoCaps 图像描述任务上零样本超越多数微调模型;在 VQAv2 视觉问答上超过很多专用模型;Flickr30K 图文检索也有显著提升。这些成绩都不需要为每个任务重新训练,一个预训练好的模型直接适配即可。
以视觉问答(VQA)为例,模型输入一张图像和一个问题(如“图中有几只猫?”),输出答案。评估时计算预测答案与标准答案的匹配率:
翻译公司的成功不是偶然:一位精心培养的翻译官,配两位经验丰富的大师,就能覆盖市面上绝大多数图文相关的需求。这就是 BLIP-2 给多模态 AI 留下的启示——有时候,与其改造顶尖专家,不如培养一个优秀的中间人。
- N(样本总数)测试集中所有“图+问题”对的数量,是评估的分母。
- 指示函数 1[·]括号内条件成立取 1、不成立取 0,用来统计“答对了几题”。
- 求和与平均将所有样本的对错相加再除以总数,得到整体的正确率,范围 0 到 1。
AI 应用场景
电商图文理解与智能文案
阶段:多模态内容生成
解决的问题:电商平台上商品图片海量,人工写描述成本高效率低,传统模板文案千篇一律。BLIP-2 通过冻结 LLM + Q-Former 桥接,让系统看图生成个性化文案,零样本即可迁移到新品类,无需为每类商品微调大模型。
具体案例:某跨境电商平台上传一张“北欧风原木餐桌”图片,BLIP-2 生成“简约原木餐桌,为客厅注入自然温度”,同时能回答“桌面是什么材质?”这类 VQA 问题,帮助买家快速获取商品关键信息。
智能客服看图问答
阶段:视觉问答与推理
解决的问题:用户售后咨询常带图提问(如“花瓶碎了能换吗”),传统客服只能依靠人工看图,响应慢、成本高。BLIP-2 让系统“看见”图片并回答问题,FAQ 覆盖率高,机器人独立处理占比大幅上升。
具体案例:某家电品牌客服接入 BLIP-2,用户上传“遥控器裂缝”照片并问“能免费换吗”,模型识别出“遥控器+裂缝”后,结合商品规则自动回答“属于三包范围,可申请换新”,用户无需等待人工客服。
视障辅助视觉问答
阶段:多模态对话生成
解决的问题:视障用户依赖语音描述周围环境,传统 OCR 只能提取文字,无法理解场景。BLIP-2 的生成能力可把环境图像转成自然语言场景描述,并支持连续问答,让辅助工具真正做到“看图说话”。
具体案例:视障辅助 App 集成 BLIP-2 后,用户拍摄客厅,模型回答“沙发上有只橘猫,茶几上有杯冒热气的咖啡”;追问“猫在睡觉吗”,模型结合上下文回答“是的,蜷缩着一动不动”,帮助视障用户感知环境细节。
Python 演示
"""极简 Q-Former 模拟: 用交叉注意力从图像特征中提取精华信息"""import numpy as np def softmax(x): """数值稳定的 softmax, 沿最后一维归一化""" exp_x = np.exp(x - np.max(x, axis=-1, keepdims=True)) return exp_x / np.sum(exp_x, axis=-1, keepdims=True) class MiniQFormer: """迷你 Q-Former: 只实现核心的交叉注意力机制""" def __init__(self, num_queries=8, num_patches=16, dim=32): # 可学习的查询向量, 模拟翻译官的记事本栏目 self.query = np.random.randn(num_queries, dim) * 0.05 # 三个线性投影层, 模拟翻译官的"翻译技能" self.W_q = np.random.randn(dim, dim) * 0.05 self.W_k = np.random.randn(dim, dim) * 0.05 self.W_v = np.random.randn(dim, dim) * 0.05 def cross_attention(self, image_features): """交叉注意力: Query 向图像特征提问, 提取关键信息""" q = self.query @ self.W_q # 问题清单 (8, 32) k = image_features @ self.W_k # 图像索引标签 (16, 32) v = image_features @ self.W_v # 图像实际内容 (16, 32) attn = softmax(q @ k.T / np.sqrt(k.shape[-1])) # 关注权重 (8, 16) return attn @ v, attn # 压缩后的特征 + 注意力权重 def main(): np.random.seed(42) # 模拟一张猫图被切成 4x4=16 个 patch, 每个 patch 提取 32 维特征 image_features = np.random.randn(16, 32) * 0.1 # 初始化 8 个 Query 的迷你 Q-Former (真实模型是 32 个) qformer = MiniQFormer(num_queries=8) z, attn = qformer.cross_attention(image_features) print("视觉特征 patch 数: 16") print("Q-Former 查询数: 8") print("压缩后的特征形状:", z.shape) print("注意力矩阵形状:", attn.shape) print("每个 Query 注意力权重之和:", attn.sum(axis=1)) print("每个 Query 最关注的 patch 编号:", attn.argmax(axis=1)) print("信息压缩率: 16 -> 8, 丢掉了 50% 冗余信息") if __name__ == "__main__": main()
self.query = np.random.randn(num_queries, dim) * 0.05可学习的 Query 向量,随机初始化,是翻译官的“空白记事本”q = self.query @ self.W_qQuery 经过线性变换形成“问题清单”,相当于把记事本上的空白栏目变成具体问题k = image_features @ self.W_k图像特征变换成“索引标签”,告诉每个问题该去图像的哪个区域找答案v = image_features @ self.W_v图像特征变换成“实际内容”,是被检索和提取的具体视觉信息attn = softmax(q @ k.T / np.sqrt(k.shape[-1]))计算每个 Query 对每个图像 patch 的关注权重,这里除以根号维度做缩放return attn @ v, attn按权重加权求和,得到压缩特征 Z(8×32),同时返回注意力权重供分析print("信息压缩率: 16 -> 8, 丢掉了 50% 冗余信息")展示信息瓶颈效果:用少量 Query 替代全部 patch 特征
常见误区
误区我以为 BLIP-2 既然是“视觉-语言大模型”,训练时肯定把 ViT 和 LLM 都一起微调了,这样才能让它们配合得更好。毕竟很多多模态模型都是这么做的。
正解BLIP-2 的核心贡献恰恰是“都不调”。视觉编码器和 LLM 全程冻结,真正训练的只有 Q-Former(约 188M 参数)。这样做既省算力,又避免灾难性遗忘,还能让 LLM 随时替换。就像公司请翻译官,而不是让画家重新学日语。
为何常见:因为之前的视觉-语言模型(如 LXMERT、UNITER)大多是全量微调,把“配合更好”误解为“大家都得变”。
误区我一开始以为 Q-Former 里的 32 个 Query 是图像特征经过某种池化或投影得到的,比如对 200 多个 patch 特征做全局平均池化后复制 32 份。
正解Query 是随机初始化、可学习的参数,与输入图像完全无关。它更像“问题模板”——训练让每个 Query 学会问不同的问题。图像特征只是“被问的对象”,通过交叉注意力提供答案。若 Query 来自图像,那就变成了“图像自己回答自己”,失去了主动筛选信息的能力。
为何常见:因为交叉注意力公式里 Q/K/V 三个字母易让人以为都是输入特征变换来的,忽略了 Q 可以是独立参数。
误区我以为是直接把图片像素送进 Q-Former,Q-Former 既能看像素又能跟 LLM 对话,所以叫“桥接”。
正解像素先经冻结的 ViT-G/14 编码成 patch 特征,Q-Former 拿到的已经是被画家“消化过”的视觉语义。Q-Former 不直接看像素,它读的是视觉特征。这也解释了为什么 ViT 称为“视觉编码器”——它是视觉的入口,而 Q-Former 是视觉与语言的接口。
为何常见:“桥接模块”的说法容易让人以为它直接对接原始输入,忽略了它后面还有一层特征提取。
误区我以为阶段一训练一个“对齐模型”,阶段二再训练一个“生成模型”,是两个独立的模型。
正解两阶段训练的是同一个 Q-Former。阶段一让它在不连接 LLM 时学会图文对齐的表示;阶段二把它接到冻结 LLM 上,继续训练它学会“用 LLM 能理解的方式传递信息”。好比一个人先在学校学文化课,再进公司实习——是同一个人在不同阶段的成长。
为何常见:因为两阶段的数据和目标差异较大,容易被误认为是两个模型。实际上 Q-Former 的参数在整个流程中连贯更新。
误区既然信息瓶颈是“少而精”,那是不是 Query 越多,模型能力越强?干脆用 100 个 Query 替换 32 个。
正解Query 数量是权衡的结果。太少(如 4 个)会丢失细节,太多(如 256 个)会让 LLM 的输入前缀过长、推理变慢,且信息瓶颈失效。32 是论文经过实验验证的均衡点。想提升能力,升级冻结的 LLM 往往比增加 Query 更有效。
为何常见:直觉上“更多容量=更强”,但在信息瓶颈设计中,容量与效率必须平衡。
面试题
Q1. BLIP-2 中被冻结的两个组件是?
- A.视觉编码器和语言模型← 正确答案
- B.Q-Former 和语言模型
- C.视觉编码器和 Q-Former
- D.只有语言模型被冻结
答案:A。BLIP-2 的哲学是“冻结双雄、只训桥梁”。视觉编码器和 LLM 都是预训练大模型,参数冻结不动;真正参与训练的是中间的 Q-Former。就像公司请翻译官,而不是让画家和作家改行。B、C 包含 Q-Former,不对;D 漏了视觉编码器,也不完整。
Q2. Q-Former 中可学习的 Query 向量有多少个?
- A.16 个
- B.32 个← 正确答案
- C.64 个
- D.768 个
答案:B。Q-Former 使用 32 个可学习 Query 向量。这 32 个向量像翻译官记事本上的 32 个格子,数量远小于图像 patch 数,形成信息瓶颈。16、64、768 都不是论文中的标准配置。
Q3. BLIP-2 中交叉注意力层的 K 和 V 来自哪里?
- A.语言模型的文本嵌入
- B.视觉编码器的图像特征← 正确答案
- C.可学习 Query 向量本身
- D.随机初始化噪声数据
答案:B。交叉注意力中 Q 来自可学习 Query 向量,K 和 V 来自视觉编码器输出的图像特征。Query 是“提问者”,图像特征是“被问者”。若 K/V 来自 Query 本身,就成了自注意力;来自 LLM 则方向反了。
Q4. 阶段一中负责“判断图文是否匹配”的目标是?
- A.ITC 图文对比学习
- B.ITM 图文匹配学习← 正确答案
- C.ITG 图文生成学习
- D.LM 语言建模目标
答案:B。阶段一三个目标各有分工:ITC 做图文对比对齐,ITM 做图文匹配判断(二分类),ITG 做图像引导文本生成。问“判断图文是否匹配”,正是 ITM 的职责。其他选项分别负责对齐、生成和纯文本建模。
Q5. BLIP-2 的模型参数量中,可训练部分约有?
- A.约 188M 参数← 正确答案
- B.约 1.2B 参数
- C.约 4.2B 参数
- D.约 13B 参数
答案:A。BLIP-2 可训练参数约 188M,主要来自 Q-Former(约 185M)和输入投影层。相比冻结的 ViT-G 和 LLM(数亿至上千亿参数),训练开销小了一个数量级。B、C、D 的规模对应的是被冻结的大模型。
Q6. 关于 Q-Former 的 Query 向量,正确说法是?
- A.随机初始化后训练得到← 正确答案
- B.与图像 Patch 数量相同
- C.由视觉特征直接计算
- D.数量固定为三十二个← 正确答案
答案:AD。Query 向量是随机初始化后通过训练学出来的可学习参数(A 对),数量固定为 32(D 对)。它数量远小于图像 patch 数(B 错),也不是由视觉特征直接计算得到的(C 错)。这就像翻译官的提问清单,是独立于图像的“问题模板”。
Q7. BLIP-2 的视觉编码器 ViT-G/14 中"14"代表什么?
- A.Patch 大小为 14×14← 正确答案
- B.输入图像分为 14 块
- C.编码器网络共有 14 层
- D.特征向量维度为 14
答案:A。ViT-G/14 把图像切分成 14×14 像素的 patch 再编码,14 表示 patch size。它不表示输入分块数、编码器层数或特征维度。视觉编码器先切块再逐个编码,就像画家把画面分割成小方块精读。
Q8. 关于 BLIP-2 两阶段训练,正确说法是?
- A.阶段一不连接 LLM 训练← 正确答案
- B.阶段一训练视觉编码器
- C.阶段二连接冻结的 LLM← 正确答案
- D.阶段二只更新 LLM
答案:AC。阶段一不连接 LLM,Q-Former 单独做表示学习(A 对),不训练视觉编码器(B 错);阶段二连接冻结的 LLM 做生成学习(C 对),但 LLM 依然冻结不更新(D 错)。两阶段练的都是同一个 Q-Former,就像同一个人先上学再实习。
Q9. BLIP-2 能够完成哪些视觉-语言任务?
- A.图像描述文本生成← 正确答案
- B.视觉问答与推理← 正确答案
- C.语音识别转文字
- D.图像像素级分割
答案:AB。BLIP-2 擅长视觉-语言理解和生成任务:图像描述(看图写文)和视觉问答(看图答问)。语音识别是音频任务,像素级分割需要密集预测,都不在 BLIP-2 的目标范围内。它做的是“图文之间的翻译”,而不是像素级操作。
Q10. 若把 BLIP-2 的 LLM 从 OPT 换成 FlanT5,正确做法是?
- A.重新训练整个 Q-Former
- B.调整输出与 LLM 输入对齐方式← 正确答案
- C.重新训练视觉编码器
- D.无法更换不同的 LLM
答案:B。OPT 是 decoder-only,Q-Former 的输出作为前缀 token 输入;FlanT5 是 encoder-decoder,Q-Former 的输出插入 encoder 输入。更换 LLM 只需调整对齐方式并继续训练 Q-Former,无需重训视觉部分,这正是冻结策略的红利。重训整个 Q-Former 不必要(A 错),重训视觉编码器更不可能(C 错),“无法更换”也不对(D 错)。