shahedm2001/qwen3-VL-2B-cataract-sft-20260906-sub10
043
Qwen3-VL-2B Cataract-Surgery SFT Adapter — 2026-09-06, 10% data (sub10)
QLoRA adapter for Qwen/Qwen3-VL-2B-Instruct, fine-tuned on cataract-surgery video (clip-level descriptions + full-video narration + CoT MCQs).
- Base model:
Qwen/Qwen3-VL-2B-Instruct - Date: 2026-09-06
- Data portion: 10% subset (
SUBSET_RATIO=0.1) — 559 train / 689 val samples - Result: train loss 2.607 → 1.213 over 70 steps, 2 epochs, exit 0
Usage
from transformers import AutoProcessor, AutoModelForImageTextToText
from peft import PeftModel
base = "Qwen/Qwen3-VL-2B-Instruct"
adapter = "shahedm2001/qwen3-VL-2B-cataract-sft-20260906-sub10"
processor = AutoProcessor.from_pretrained(adapter) # tokenizer + processor files included
model = AutoModelForImageTextToText.from_pretrained(base, dtype="auto", device_map="auto")
model = PeftModel.from_pretrained(model, adapter)
model = model.merge_and_unload() # optional: fuse to a standalone modelFor video inference, pass up to 64 frames per clip (training frame count); see NFRAMES below. The repo also includes non_lora_state_dict.bin — fully-trained merger weights (the merger is full-trainable, outside LoRA).
Training curves
- Loss 2.607 → 1.213 (best 1.119); steady decline, mild flattening at the end — 2 epochs about right.
- Grad norm mean 3.06, early warmup spike to 12.0 at step 6, then stable 1.5–4 — no explosion.
- Cosine LR 1e-4 → 0 as configured.
Training configs (from output/logs/sft/config.txt)
Full command line is in cmd.txt (same directory as this run's logs, not uploaded).
