论文

经视觉反馈的自蒸馏策略优化:桥接代码与视觉工件

Self-Distillation Policy Optimization via Visual Feedback: Bridging Code and Visual Artifacts

模型训练强化学习RLVR

摘要

代码生成大型语言模型 (LLM) 通过编写由不可微分渲染器执行的程序,在观察渲染之前提交代码,越来越多地生成图表、网页和幻灯片等视觉工件。因此,原本可执行的代码通常会产生具有视觉上显着缺陷的工件,包括重叠元素、剪切文本、损坏的对齐、低对比度和溢出。我们研究代码生成的视觉工件的视觉反馈自蒸馏。我们提出了 Visual-SDPO,这是一种自我蒸馏策略优化框架,它将呈现的视觉反馈视为权重共享教师的特权上下文,并将此反馈提炼给编码学生。为了使监督具有空间针对性而不是统一的,我们引入了基于视觉的代码信用权重,它将每个检测到的缺陷追溯到负责受影响元素的代码语句,并放大这些语句上的蒸馏信号。序列级 GRPO(组相对策略优化)术语通过奖励可执行的、视觉上高质量的部署来补充密集的词元级目标,同时通过将执行错误作为特权上下文传递给教师,失败的执行仍然可以通过自我蒸馏路径进行学习。我们使用统一的 Qwen3-VL-8B-Instruct 主干实例化用于图表、Web/UI 和幻灯片生成的 Visual-SDPO。在图表到代码、UI 到代码和幻灯片生成基准(ChartMimic、Design2Code 和 AeSlides)中,Visual-SDPO 在主要指标中比零样本基础提高了超过 10 个绝对点,比 GRPO 提高了至少 2.4 个点,并且训练步骤更少,并且没有增加推理时间成本。

经视觉反馈的自蒸馏策略优化:桥接代码与视觉工件:论文配图
图 1:Visual-SDPO 概述。学生 LLM 生成代码展示(显示为简化的令牌条,顶部中心);渲染器(matplotlib、Playwright 或 python-pptx)生成渲染工件。缺陷检测器返回视觉问题周围的区域(在所示示例中图例与数据线重叠),并且标题提取器生成结构化的二进制缺陷表。两者都为老师提供了大语言模型学位,大语言模型学位与学生共享权重,但还以这种特殊的视觉环境为条件。空间映射将每个缺陷区域反向引用到负责的代码语句,生成每个语句的责任分数 resp⁡(s)\mathrm{resp}(s),该分数由语句中的每个标记共享,并转换为每个标记的权重 wt=1+(α−1)⋅resp⁡(s⁡(t))w_{t}=1+(\alpha-1)\cdot\mathrm{resp}(s(t)),标准化。这些权重缩放了学生和教师分布之间的标记级 KL 散度,将蒸馏梯度集中在产生缺陷区域的代码语句上。序列级 GRPO 奖励(右下)与蒸馏损失相结合,形成完整的训练目标。在推理时,学生无需渲染器、缺陷检测器、标题提取器或教师通道即可进行操作。