主题
高频面试题
LLM Agent 在多模态任务中如何执行推理?
多模态 Agent 的难点不是“模型能看图”,而是如何把视觉、语音、视频和文档证据接入 Agent Loop,并在不确定感知结果上做可验证的推理和行动。
面试官角度分析,想考什么
多模态 Agent 和文本 Agent 差在哪?
考 observation 从文本扩展到图像、视频、音频,感知会错。多模态输入如何参与推理和行动?
考先转成可引用的结构化观察,再结合目标和工具验证,看见了不等于能行动。失败模式和评估怎么做?
考 grounding、低置信度复核、成本延迟和高风险确认。
可直接抄走的 30 秒参考答案
text
多模态 Agent 本质上还是 Agent Loop,只是 observation 从纯文本扩展成图像、视频、音频、PDF、屏幕等多源信息。它一般先用多模态模型或 OCR、ASR、目标检测、版面解析等工具把输入转成可引用的结构化状态,比如对象、坐标、时间戳、说话人和置信度;然后模型结合用户目标做跨模态推理,必要时调用工具验证或执行动作;行动后再重新观察环境。工程上要重点处理 grounding、低置信度复核、长视频/大文档压缩、成本延迟和高风险动作确认。面试回答详解,知其所以然
这道题不要只答“用多模态大模型”。面试官真正想听的是:多模态信息如何进入 Agent 状态,如何被引用、验证、压缩、行动,以及失败时怎么处理。
1. 多模态 Agent 的基本结构
普通文本 Agent 的输入大多是用户文本、工具返回和历史消息。多模态 Agent 多了感知层:
text
图像 / 视频 / 音频 / PDF / 屏幕
-> 感知和结构化抽取
-> 多模态 observation
-> 状态更新和跨模态推理
-> 工具调用 / 环境动作
-> 新观察回灌
-> 继续推理或输出结果它仍然是 Agent Loop,只是 observation 不再只有文本。
2. 输入如何进入推理状态
常见处理方式有四类:
- 直接多模态上下文:把图片、视频片段、音频或 PDF 直接交给支持多模态输入的模型。
- 专用感知工具:OCR、ASR、目标检测、版面解析、表格抽取、图表解析、视频关键帧抽取。
- 结构化中间表示:把感知结果转成对象、坐标、时间戳、说话人、页面块、表格单元格等状态。
- 跨模态检索:用多模态 embedding 做图文、音文、视频片段检索,再把相关片段交给推理模型。
一个简化的 observation 可以这样表示:
json
{
"modality": "image",
"objects": [
{"label": "invoice_total", "text": "$128.40", "bbox": [421, 712, 510, 735]},
{"label": "due_date", "text": "2026-09-30", "bbox": [91, 505, 188, 527]}
],
"uncertainty": [{"field": "invoice_total", "confidence": 0.82}],
"source": "page_1"
}有了 source、坐标和置信度,后续才能复核,而不是让模型凭一句“我看到了”行动。
3. 多模态推理的核心不是一次性看完
复杂任务通常要分步:
- 选择关注区域:先判断图像或页面哪里相关,再裁剪局部高分辨率分析。
- 抽取事实:OCR/ASR/视觉模型提取文本、对象、关系和事件。
- 建立状态:把结果放入可追踪 state,例如对象列表、时间线、页面结构。
- 跨模态关联:把用户问题、视觉证据、语音转写和工具数据对齐。
- 调用工具验证:查数据库、算公式、搜索外部资料、执行代码或操作界面。
- 行动后观察:点击、提交、移动、生成文件后重新观察环境确认结果。
可以用公式化表达帮助面试:
text
感知不是答案,感知是 observation;
推理不是行动,推理要经过工具和环境验证。4. 图像、视频、音频各自的难点
- 图像任务:难点在局部细节、坐标定位、OCR、空间关系、图表理解和低清晰度输入。
- 视频任务:难点在时间轴、事件顺序、关键帧选择、长视频成本和跨片段记忆。
- 音频任务:难点在说话人分离、噪声、语气、时间戳、长音频摘要和事实引用。
- 文档任务:难点在版面结构、表格、脚注、图片、跨页引用和 PDF 渲染差异。
- GUI/机器人任务:难点在感知到动作的 grounding,例如按钮位置、可点击性、机器人技能是否可执行。
所以多模态 Agent 常常需要“感知模型 + 推理模型 + 工具执行器 + 验证器”的组合,而不是一个模型包打天下。
5. Grounding:从“理解”到“能执行”
多模态 Agent 很容易出现一个错觉:模型能描述画面,就能正确行动。实际不一定。
在 GUI 场景里,模型识别出“提交按钮”还不够,还要知道:
- 按钮是否可见、可点击、被遮挡。
- 点击坐标是否稳定。
- 当前用户是否有权限。
- 点击后页面是否真的进入下一状态。
在机器人场景里,模型知道“把杯子拿起来”还不够,还要知道:
- 机器人是否有对应抓取技能。
- 目标物体位置和姿态是否可达。
- 当前环境是否允许这个动作。
- 动作失败后如何重新观察和恢复。
SayCan 这类工作把语言模型的高层计划和机器人技能的可行性函数结合起来,说明了一个重要思想:多模态推理必须被环境能力约束。
6. 工程落地链路
生产系统可以按这几层设计:
- 输入管理:文件大小、格式、分辨率、采样率、视频切片、隐私脱敏。
- 感知服务:OCR、ASR、布局解析、对象检测、关键帧抽取、多模态模型。
- 状态表示:对象、位置、页面、时间线、说话人、置信度、source id。
- 推理编排:Plan-and-Execute、ReAct、工具调用、局部复看、证据门控。
- 验证闭环:工具核验、二次模型复核、规则校验、人审。
- 观测评估:记录输入片段、模型判断、工具动作、输出和人工反馈。
7. 失败模式和护栏
常见失败:
- 把图中不存在的对象说成存在。
- OCR 漏字或把金额、日期、单位识别错。
- 视频里混淆事件顺序。
- 音频转写漏掉否定词或说话人。
- 对坐标、左右、遮挡、比例关系判断错误。
- 用低置信度感知结果执行高风险动作。
- 多模态 token 成本过高,关键信息被压缩掉。
护栏:
- 对关键字段设置置信度阈值和二次复核。
- 对金额、身份、医疗、法律、支付等高风险结果要求人工确认。
- 保留 source、bbox、timestamp,方便回看证据。
- 用局部裁剪、关键帧、分页摘要降低成本。
- 行动后必须重新观察环境,确认状态变化。
面试官追问3个问题
追问一:多模态模型可以直接替代 OCR/ASR 吗?
- 考察点:是否理解通用模型和专用感知工具的取舍。
- 回答方向:简单场景可以直接用多模态模型,生产里关键字段常会配合专用 OCR/ASR、规则校验和复核。专用工具在成本、稳定性、坐标和批处理上更可控。
追问二:视频理解为什么比图片理解更难?
- 考察点:时间维度和上下文预算。
- 回答方向:视频不仅要识别每帧内容,还要理解事件顺序、持续时间和跨片段关系。工程上会做关键帧抽取、片段摘要、时间戳索引和按需复看,而不是把整段视频一次性塞给模型。
追问三:多模态 Agent 如何避免看错后直接执行危险动作?
- 考察点:风险控制和 grounding。
- 回答方向:关键 observation 要带置信度和来源,高风险动作前做二次模型复核、规则校验或人工确认;执行后还要重新观察环境确认状态变化。不能把低置信度感知结果直接接到写操作。
扩展知识
多模态 Agent 的三种常见模式
- 感知增强型:读取图片、文档、音频,把结果转成文本或结构化字段,例如票据审核、图表问答。
- 环境交互型:观察屏幕或网页,点击、输入、执行动作,再重新观察,例如 Computer Use 和浏览器 Agent。
- 具身行动型:把视觉、语言和机器人技能结合,执行物理动作,例如移动机器人和机械臂任务。
多模态 embedding 的位置
多模态 embedding 适合做跨模态检索:
text
用户文本问题 -> 检索相关图片 / 视频片段 / 音频片段 / PDF 页面 -> 交给多模态模型深读它通常不是最终推理器,而是帮助 Agent 在大量非文本数据里找到该看的片段。
多模态任务的评估口径
- 感知层:OCR 字段准确率、目标定位 IoU、ASR 字错误率、关键帧召回。
- 推理层:跨模态事实是否一致、是否引用正确证据、是否处理不确定性。
- 行动层:点击/操作/机器人动作是否完成目标,失败后是否能恢复。
- 体验层:延迟、成本、人工复核率和用户可解释性。