Downloads · 30 days
12
31% of all-time downloads
NiuNiu0110/rst-qwen3.5-4b-sft
rst-qwen3.5-4b-sft is a image-text-to-text model from NiuNiu0110. Use it for the image-text-to-text task on the model card, and read the license before you ship it in a product. It is set up for transformers. The card lists the license as apache-2.0.
Supervised fine-tune of Qwen/Qwen3.5-4B on RST recursive-synthesis trajectories, from the Recursive Synthesis for Long-Horizon Terminal Tasks pipeline at k1ssloo/RST-Train.
Downloads · 30 days
12
31% of all-time downloads
All-time downloads
39
Public
Parameters
4.7B
9.3 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors9.3 GB · 100%
How the weights are stored.
BF164.7B · 100%
From the Hugging Face model README
Supervised fine-tune of Qwen/Qwen3.5-4B on RST recursive-synthesis trajectories,
from the Recursive Synthesis for Long-Horizon Terminal Tasks pipeline at
k1ssloo/RST-Train.
| Base model | Qwen/Qwen3.5-4B |
| Training corpus | NiuNiu0110/RST-SFT-Qwen3.5-27B |
| Checkpoint | global_step_82 |
| Architecture | Qwen3_5ForConditionalGeneration |
| Weights | 8.7 GB, bfloat16, 738 tensors |
| Vision tower | 297 tensors, copied verbatim from the base model |
Trained with verl + FSDP2 on a pre-tokenized corpus: the Qwen3.5 loss mask is baked into
the data once (scripts/15_export_pretokenized.py) rather than recomputed per backend,
because tokenizing turns separately and concatenating them does not reproduce the
whole-conversation render for this template.
None. No benchmark has been run against this checkpoint. The eval harness exists in the repo but has not been executed on these weights, so there is no score here to quote — not a low one, not a high one. Treat it as an untested artifact of a training run.
verl writes FSDP shards, which from_pretrained cannot load. These weights came from
scripts/08_prepare_eval_ckpt.sh, which merges every shard, splices the vision tower back
in from the base model (training carries only the text stack), and then verifies that the
text weights actually moved — a merge over a missing shard produces a loadable model that
is silently part-untrained, and a merge that reproduced the base is indistinguishable from
a successful one without that check.
from transformers import AutoModelForImageTextToText, AutoProcessor
model = AutoModelForImageTextToText.from_pretrained("NiuNiu0110/rst-qwen3.5-4b-sft", dtype="auto", device_map="auto")
processor = AutoProcessor.from_pretrained("NiuNiu0110/rst-qwen3.5-4b-sft")
Apache-2.0, inherited from the base model.