Part of
vqa-rlvr: post-training Qwen3-VL for visual question answering
on a single RTX 4090 (QLoRA SFT + GRPO with verifiable rewards).
Metrics: official VQA accuracy (VQAv2/TextVQA), normalized EM (GQA/CLEVR); harness
cross-checked against lmms-eval. Full tables, configs, and per-run JSONs:
https://github.com/guangboyu/vqa-rlvr.
1from peft import PeftModel
2from transformers import AutoModelForImageTextToText
3
4base = AutoModelForImageTextToText.from_pretrained("Qwen/Qwen3-VL-2B-Instruct", dtype="bfloat16")
5model = PeftModel.from_pretrained(base, "omnifish123/vqa-rlvr-grpo-2b-main-sft").merge_and_unload()
A defect in the training-time correctness reward meant VQAv2 examples in this
adapter's RL mix contributed no correctness signal (single-gold leave-one-out
degeneracy; the correctness gradient came entirely from GQA). Evaluation numbers
are unaffected (evaluation uses 10-annotator VQAv2 data). The checkpoint's
behavior is as published; interpretation of the reward-design ablation should
account for the defect. Fixed in repo commit
766fe8c; see the
repository erratum
for the affected-runs table and re-validation results.