Widget2Code Qwen3.5-9B Full SFT, 2 Epochs

Qwen3.5-9B fine-tuned to generate a self-contained React JSX widget from a target screenshot and deterministic dimension, OCR, and palette context.

This is a full-weight BF16 checkpoint, not a PEFT adapter. The vision tower was frozen during SFT; the language policy was trained for two epochs on 1,816 paired image-code examples from Djanghao/Widget2Code-Data.

Intended use

  • Direct screenshot-to-JSX inference.
  • A full-SFT comparison initialization for Widget2Code DAPO/GRPO.

The model emits code that must be executed in a sandboxed renderer. It can produce invalid or unsafe code and should not be executed in a privileged environment.

Training

  • Base model: Qwen/Qwen3.5-9B
  • Method: full-weight SFT with the vision tower frozen
  • Epochs: 2
  • Learning rate: 1e-5
  • Effective train batch size: 16
  • Seed: 42
  • Weight dtype: BF16

Existing test result

In the stored 1,000-image Widget2Code test run, generation completed for 957 examples and 924 outputs rendered successfully. Mean SSIM among rendered outputs was 0.7247. The run used temperature 0.7, repetition penalty 1.1, and a 10,000-token limit.

These numbers describe the stored evaluation run and are not a claim of general-purpose frontend correctness.

Downloads last month
11
Safetensors
Model size
9B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Djanghao/Widget2Code-Qwen3.5-9B-Full-SFT-2ep

Finetuned
Qwen/Qwen3.5-9B
Finetuned
(639)
this model