大模型视觉盲区:代码驱动才是理科题正解
看得懂图,更要看得懂代码:大模型攻克理科题的“视觉盲区”
过去几年,多模态大模型在STEM(科学、技术、工程、数学)领域的表现看似突飞猛进——从解代数方程到分析物理实验数据,模型在文本推理基准上的得分节节攀升。然而,当面对一道需要“看图说话”的几何题时,许多先进模型依然会给出令人啼笑皆非的答案。这并非因为模型“不会思考”,而是因为它们在“看”这一环节上,始终存在一个被忽视的短板。
上海交通大学人工智能研究院与Qwen团队的最新研究《CodePercept》指出:当前限制大模型在视觉推理任务中表现的关键,并非推理能力不足,而是视觉感知的精度远远不够。他们提出了一种颠覆性的新范式——代码驱动的视觉感知,试图用“可执行的精确性”填补自然语言描述的模糊鸿沟。
自然语言的“描述性失语”
传统多模态模型处理图像时,通常依赖“图像描述生成”(Caption Generation)作为中间步骤:模型先看图,再用自然语言描述图中的内容,最后基于描述进行推理。这种方法看似合理,实则暗藏陷阱。
自然语言天生擅长表达“大概意思”,却难以承载数学与几何所需的精确性。例如,要描述一个三维四面体的空间结构,即使使用“位于左下角45度方向、长度为3.2cm、与水平面夹角30度”这样的语句,依然存在歧义与主观解读空间。更糟糕的是,AI生成的描述本身就可能失真,这种模糊性会在推理链中被逐级放大,最终导致错误结论。
研究团队将这一现象称为“描述性失语”——即自然语言在精确表达视觉结构时的系统性无力。
代码:视觉感知的“第二语言”
既然自然语言不够精确,什么语言可以取而代之?答案是:代码。
一段Python程序可以精确指定每个点的坐标、每条线的斜率、每个图形的旋转角度。代码不承认“差不多”,要么运行成功,要么报错。这种二值化的确定性,正是STEM视觉理解所需要的“硬约束”。
基于这一洞察,研究团队提出了CodePercept框架,其核心是让代码成为视觉感知的“第二语言”。该框架包含两个关键创新:
1. 代码驱动的描述生成(Code-Grounded Caption Generation)
传统方法是“看图→说话”,而CodePercept升级为“看图→写代码→验证描述”。模型首先生成一段可执行的绘图代码(如使用Matplotlib绘制几何图形),再基于代码生成自然语言描述。由于代码本身必须忠实还原图像,模型无法“糊弄过关”——如果它对图像理解有误,生成的代码就无法正确渲染原图。
这种“以代码为准”的机制,相当于为视觉理解提供了一个可验证的黄金标准。
2. STEM图像到代码转录(Image-to-Code Translation)
更进一步,团队引导模型直接学习从图像到代码的端到端映射:给定一张几何图或函数图像,模型输出能重现该图像的Python代码。这不再是“描述”,而是“复现”。
这一任务的关键在于其可验证性。模型生成的代码能否运行?运行结果是否与原图一致?答案只有“是”或“否”。这种强反馈机制迫使模型真正理解图像中的数学结构与空间关系,而非依赖模糊的语言联想。
感知优于推理:重新校准研发重心
为了验证“感知短板”假说,研究团队设计了一个巧妙的对照实验:在保持推理能力不变的情况下增强感知能力,或在保持感知能力不变的情况下增强推理能力。结果令人惊讶:提升感知能力带来的性能增益,显著高于提升推理能力。
这意味着,当前多模态模型在STEM任务中的瓶颈,更多在于“看不明白”,而非“想不明白”。继续堆砌推理技巧(如更长的思维链或更复杂的强化学习奖励)边际效益递减,而优化视觉感知则可能带来质的飞跃。
这一发现为AI研发提供了新的方向:与其不断“教模型如何思考”,不如先“教模型如何真正看见”。
从“看图说话”到“看图写码”
CodePercept的提出,标志着多模态AI进入一个新阶段:视觉理解不再止步于“识别物体”或“生成描述”,而是迈向“结构化重建”与“可执行表达”。当模型能像程序员一样,用代码精确复现一张图时,它才真正具备了与STEM世界对话的能力。
未来,我们或许会看到更多“代码即感知”的模型架构——它们不仅能看懂电路图、看懂分子结构、看懂工程图纸,还能输出可运行、可验证、可调试的代码。这不仅提升了模型的可靠性,也为AI在科研、教育、设计等场景中的落地打开了新的可能。
标签: 多模态大模型 视觉感知 代码生成 STEM教育 CVPR2026