带图表的科学题,图像质量直接决定答案能不能用,但真正能把问题定位下来的是三件事:送进模型的图是不是可读的那一版、图上被问到的量有没有逐项核对、量纲和图例含义是否在提问里补齐。SciReasoner 这类多模态推理同时读题干文字和图像像素,刻度粘连或单位缺失时,它仍会给出形式完整的数值和推导,只是这个数值回溯不到图上,采信之前缺少依据。
判断:多模态科学推理的答案可不可信,先看送进去的那版图是否可读,再看提问里有没有写清量、单位、图例含义。操作上建议送图前做三项自检——原图分辨率与刻度可读性、被问到的量与图例对应关系、量纲是否写进提问;拿到答案后把每个数值回到原图逐点核对。边界:模型无法还原图上不存在或已被压缩掉的信息,补图注只能减少猜测,替代不了一张清晰的原始图。
把原图和题干分开存,确认送进去的是清晰版本
失真多数发生在中间环节,而不是原图本身:从聊天窗口截屏、从 PDF 里低倍缩放截取、截整页再裁出图表,都会让坐标轴刻度数字粘在一起、图例小字变成灰块、数据点标签消失。建议把原始图表文件(论文 PDF、绘图工具导出的 PNG/SVG)单独存一份,题干文本单独存一份,实际送进模型的那份图像也保留下来可回查。
对比方法:把原图和准备送进模型的图并排打开,缩放到 100% 像素查看,而不是在整页视图里扫一眼。原始图表在 PDF 里时,优先按目标尺寸矢量渲染导出,不要截屏;只能截图时,就按图表区域单独截。
可读性按三个位置判断,缺一个就算不可读:
- 坐标轴刻度:主刻度数字能逐个辨认,不需要靠上下文猜;次刻度线之间不粘连。
- 图例文字:每个符号或线型对应的文字能读全,颜色相近的两条曲线靠图例仍能区分。
- 数据点标签:标签与数据点的对应关系没有歧义,误差棒的边界能看出是线还是带。
判断标准建议这样用:先缩放到实际送图尺寸再看一遍。模型拿到的是缩放后的像素,本地原图清楚,不代表送进去的那版清楚。
# 通用检查:本地原图与待送图的尺寸是否一致
identify -format '%f %wx%h\n' original_figure.png
identify -format '%f %wx%h\n' to_model.png
# 不依赖特定 SDK 的 Python 检查
from PIL import Image
for p in ['original_figure.png', 'to_model.png']:
im = Image.open(p)
print(p, im.size, im.mode, im.info.get('dpi'))验证方式是:两个文件宽高不同,说明中间有过缩放或压缩;把 to_model.png 打开,按上面三条再看一遍,读不清就重新导出。这一步纯本地就能做完,不需要模型配合。
逐项核对图上被问到的量:量程、单位、图例对应关系
题目通常依赖图上几个容易被忽略的信息,逐行核对比整体“看着差不多”可靠。建议按下面这张表过一遍,只登记题目真正问到的量,不必全图记录。
| 核对项 | 要确认什么 | 容易出问题的地方 |
|---|---|---|
| 横轴/纵轴量程 | 起止值、是否截断原点、主刻度间隔 | 刻度从 0 开始还是中途起,直接影响斜率与外推 |
| 单位 | 轴上标注的单位、量级前缀 | 有数量级标注却没单位时,读数容易被按原始量级处理 |
| 轴类型 | 线性还是对数 | 对数轴上等距刻度对应倍数关系,读成线性会算错 |
| 图例对应 | 符号与线型同曲线、散点组的对应 | 颜色接近或图例顺序与绘制顺序不一致时容易归错组 |
| 数据点标签 | 标签是数值、序号还是条件编号 | 把序号当数值代入计算 |
| 误差棒/阴影带 | 表示标准差、标准误还是范围 | 含义不明时不能据此判断两组是否可分 |
| 脚注与图注条件 | 是否归一化、是否相对值、压力温度等固定条件 | 归一化后的纵轴不能直接当绝对值使用 |
差异会这样发生:纵轴只标了 10^3 而没有单位,读数可能被当作原始量级,最终结果在数量级上偏掉;图例中实心圆与空心圆分属两组而图例顺序与绘制顺序相反,趋势可能被归到错误的一组,结论方向反过来;横轴原点被截断时,图上看似线性的区间,按完整量程未必线性。这些都不需要换模型,要换的是喂进去的信息。
在提问里补上图注和单位,不让模型自己猜量纲
图上画不出来的信息,用文字补足最省事。补图注不是把整张图描述一遍,只写题目会用到的量、单位和图例含义三部分,并且写在同一条提问里,而不是等模型答完再追问——追问时它已经在错误量纲上推完了。
题干:<保留原文,上下标和单位不要删>
图注补充:
- 横轴:温度,单位 K,范围 300–500,线性刻度,主刻度间隔 50
- 纵轴:反应速率常数 k,单位 s^-1,标注为 10^-3 量级,对数刻度
- 图例:实心圆 = 催化剂 A,空心方块 = 催化剂 B;虚线为拟合直线
- 误差棒:每个点表示多次重复实验的标准差
- 图上未标注的固定条件:压力均为 1 atm
请回答:<具体问题>
要求:给出数值时同时写出你从图上读到的坐标值和单位;
若某处读数在图上无法辨认,请直接说读不出,不要推测。替换项只有三处:量、单位、图例含义换成自己图上的内容;固定条件按题干和图注补;最后那句“读不出就说读不出”建议保留。放在哪里执行:和题干、图像一起作为同一轮输入送进去。验证方式:看回复里出现的量纲是否与图注一致,出现单位混用或数量级跳跃,先回头查图注漏项,再判断是不是图本身不可读。
把模型结论回到原图逐点验证,标出从哪一步开始对不上
答案看着像对又像错,通常是因为读图环节和推理环节混在一起。做法是从题目涉及的第一个数值开始,人工从图上读一次,与模型给出的读数逐个比对,找到第一个对不上的位置。
| 题目涉及的量 | 图上实际值(人工读数) | 模型读数 | 模型结论 | 不符位置 |
|---|---|---|---|---|
| 横轴起点与量程 | — | — | — | — |
| 曲线 A 在指定横坐标处的纵值 | — | — | — | — |
| 图例对应关系 | — | — | — | — |
| 最终要求的量 | — | — | — | — |
上表只给字段格式,具体值按手上的图填,不要照抄。
判读规则:图上实际值与模型读数在第一行就不一致,问题在读图,回到第一、二步换清晰原图并补图注;读数一致但结论与按图推算的结果不一致,问题在后续推理或公式,可以在提问里要求写出每一步代入的数值,再定位到具体一步;如果多处读数只能给出区间而模型给了确定值,说明它在补全图上没有的信息,这类输出需要结合环境与原始数据再确认,不宜直接采信。