何时使用
当成功标准是"看起来/感觉对"且没有廉价数值指标时使用——动画缓动/时序、缩放/镜头感、调色、布局/间距、设计参数、渲染/编码器设置、提示词参数。当没有人坐在循环中时,使用 lookdev 的自动化版本替代人工视觉评估。
来源:connerkward/lookdev-auto-skill(MIT)。
视觉评估循环——让视觉/视频模型调优只有眼睛才能评判的东西
当目标是"这看起来/感觉对不对"(而非可以最小化的数值)时,视觉模型(图像)或视频理解模型(运动/时序)可以在紧凑的优化循环中充当评判者。已有参考:screenstudio-alternative 技能(iteration.py)(通过 fal-ai/video-understanding 调优了缩放动画手感)。
循环流程
- 将 N 个标注变体渲染到一个产物中。 在小范围内变化参数。将每个变体的参数标注在产物上(将标签烧录进去:"A · 2.2Hz · ζ0.5")。图像 → 带标签的网格/联系表。视频/运动 → 带标签的序列(在每个片段前/上放置标签卡或烧录叠加层),以便模型可以在时间维度上比较。
- 一次模型调用,结构化输出。 发送单个产物并附带明确的评分标准(定义"好"意味着什么——以及"过度"/"不足"分别看起来什么样)。要求逐变体评分 + 具体的新建议值以 JSON 形式返回:
{"ratings":{"A":n,...},"best_so_far":"X","suggest":[[p1,p2],...]}. - 从粗到细。 第 1 轮 = 宽范围定位区域。第 2 轮 = 将模型的建议(+ 保留当前最佳)渲染到一个产物中;让其选出唯一的最佳。通常在 2 轮内收敛。
- 足够时停止——最佳评分高且建议值聚集。应用获胜者。
Token / 质量 / 步骤缩减(请执行)
- 每轮一个产物,而非每个变体一次调用。 最大的节省——6 个变体的轮次是 1 次上传 + 1 次推理,而非 6 次。拼合图/网格优于单次调用的循环。
- 将参数烧录到产物上。 模型同时看到标签和结果 → 无需单独携带"变体 A 使用了 X"的上下文 → 更少 token,更少错误。
- 结构化 JSON 输出 + 解析。 无需重新询问,无需自由文本处理。提示"仅返回 JSON";用正则提取第一个
{...}。 - 短代表性样本。 在 3-5 秒片段 / 单帧 / 单个组件上调优,而非整个资产。更廉价的渲染、更小的上传、更快的推理。将找到的参数一次性应用到完整渲染。
- 变体上限约 5-6 个。 更多不会改善模型的辨别力,且成倍增加渲染 + token 成本。第 1 轮宽但稀疏,第 2 轮窄。
- 校准锚点。 每轮包含一个故意设差的和一个安全默认的变体作为固定锚点——为模型提供参考尺度,并在其"最佳"比安全默认值更差时暴露问题(尽早发现不良推荐)。
- 独立的评分标准,前置声明。 在提示中具体定义"好"(流畅、微妙的回落、不弹跳、不迟缓)。不要问"你喜欢哪个"——那会让它附和你的措辞。保留一个未参与调优的标准让评判者保持诚实(参见 verify-outputs-rule:检查必须独立于你调优的内容)。
- 跨轮复用渲染。 将第 1 轮获胜者的片段带入第 2 轮,而非重新渲染。
- 提前退出。 如果第 1 轮最高分 ≥9/10 且三个建议值在小范围内,跳过第 2 轮。
- 能用最廉价的评判者看到问题即可。 通过图像 VLM 逐帧判断可以评估空间类问题(布局、颜色、裁切);只有在被评判的对象是时序性的(缓动、时序、运动平滑度)时才使用真正的视频模型——这些在静态帧中不可见。
何时不适用
- 存在与质量相关的真实数值指标 → 直接优化该指标;不必按步骤付费给模型。
- 判断对用户是主观的(他们的品味、品牌)→ 展示变体让他们自己选;模型的"最佳"不是他们的最佳。(这就是 screen-studio 弹簧自动调优被放弃的原因——模型的选择不符合所有者的眼光。)
- 只有一两个变体 → 自己看就行。
注意事项(经验所得)
- 模型的选择是一个意见,而非真实基准——用锚点固定它,并在提交前自己对照安全默认值验证获胜者。
- 视觉/视频模型善于感知粗略差异,不善于感知精细差异——保持变体间距可感知;近乎相同的变体会得到噪声评分。
局限性
- 模型评分是概率性审美判断,而非客观事实;对品牌关键或主观性工作保留人工审核步骤。
- 当渲染繁重或探索大量变体时,自动化轮次可能变得昂贵或缓慢。
- 此技能需要能暴露质量差异的截图、帧或片段;对于细微运动、音频、文案微妙差异或用户偏好判断,它较弱。