可复现 · 不只挑最好的一张
AI 图片模型怎么公平测试
保存成功,也保存失败
只拿两张“最好看”的图比较,很容易得出错误结论。模型可能碰巧抽到好 Seed,也可能因为尺寸、提示词和参考图不同而占便宜。我们为本地图片引擎建立了一套测试记录,让以后换模型时不必从零猜。
一、先锁定变量,再谈哪个模型更好
- 同一任务使用同一提示词目标。允许为不同模型调整语法,但不能给一个模型详细镜头词,另一个只写一句话。
- 保持尺寸和宽高比一致。方图、竖图和横图对人物比例与场景构图的难度不同。
- 参考图必须相同。图生图强度也要记录,否则无法判断是模型差异还是重绘幅度差异。
- 每项至少三个 Seed。单图可以反映一个结果,不能代表稳定性。
- 记录失败而不是删除失败。网站默认模型需要的是可预测,不是偶尔惊艳。
公平不等于参数完全一样:四步蒸馏模型和三十步 SDXL 的步数不应强行相同。应该比较各自在合理推荐参数下完成同一任务的质量、速度和资源成本。
二、我们使用的能力矩阵
| 能力 | 测试题 | 主要检查点 |
|---|---|---|
| 中文文生图 | 古代渡口、人物、纸灯、薄雾 | 中文语义、主体关系、时代元素是否准确。 |
| 写实人物 | 标准正脸、头肩像、全身像 | 眼睛、鼻翼、手部、皮肤与服装材质。 |
| 色彩与光线 | 冷蓝、暖金、红黑、低饱和 | 主色是否服从、肤色是否被环境光污染。 |
| 参考图编辑 | 多视角模特设定图 | 版式、服装、人物身份与局部细节漂移。 |
| 一致性 | 同一角色跨姿势和场景 | 不能只看固定 Seed,需身份适配器参与。 |
| 文字生成 | 中文招牌、短标题 | 笔画、拼写与布局,不用“像字”代替正确。 |
矩阵的作用是防止模型凭一个强项赢得全部结论。FLUX.2 klein 4B 在场景概念和中文提示上表现好,但人物写实没有通过;Juggernaut XL v9 的皮肤与摄影感更好,却不能靠普通图生图实现严格身份一致。
三、每张图应该保存哪些参数
图片文件本身不能告诉你当时用了什么模型。我们让程序在每张 PNG 旁边保存一个同名 JSON,至少记录以下字段:
{
"model": "模型名称与版本",
"repo": "来源仓库或本地权重标识",
"prompt": "完整正向提示词",
"negative_prompt": "完整负向提示词",
"reference_images": ["参考图文件名"],
"strength": 0.55,
"width": 1024,
"height": 576,
"steps": 30,
"cfg": 5,
"seed": 20260910,
"offload": "使用的低显存策略",
"elapsed_seconds": 29.53,
"peak_vram_gb": 2.12
}
对外发布时应删除私人电脑的绝对路径、用户名和敏感文件名,但保留模型、尺寸、步数、Seed、强度、耗时和显存等可复现信息。
四、失败样本比精选图更能决定产品
FLUX.2 的首张古代建筑图很完整,如果测试到这里就停止,很容易把它选为全站默认模型。继续做人像后,我们发现真人化编辑会夸张毛孔和面颊纹理,于是把它定位为场景概念与快速构图工具,而不是写实人像主模型。
Juggernaut 的第一张人像表现不错,但超近景又暴露出大小眼、视线和鼻翼问题。随后改成标准头肩正脸才明显改善。这个过程说明失败图并不等于“无用废片”,它能指出模型应该放在哪一层、哪些任务必须加人脸修复器。

五、结论应该包含适用范围
不要只写“A 比 B 好”。一份可用于产品决策的结论至少应回答:
- 它在哪些任务上通过,哪些任务上失败?
- 最低硬件与磁盘成本是多少?
- 正常参数下要等多久?
- 失败能否靠提示词修复,还是必须增加专用控制模块?
- 模型许可证是否允许计划中的网站用途?
| 当前候选 | 通过的用途 | 尚未通过 |
|---|---|---|
| FLUX.2 klein 4B | 中文场景、概念构图、快速草案 | 高质量写实人像、严格身份一致 |
| Juggernaut XL v9 | 本地写实人像基础图、较高分辨率竖图 | 单靠文生图或普通图生图维持同一身份 |
记录的价值:下一次加入 InstantID、FaceDetailer 或新模型时,可以沿用同一套题、同一批参考素材和同一套字段,直接比较改善,而不是凭记忆判断。