Downloads · 30 days
9
7% of all-time downloads
top-papers/Qwen3-VL-8B-Instruct-scireason
Qwen3-VL-8B-Instruct-scireason is a machine learning model from top-papers. Use it for the machine learning task on the model card, and read the license before you ship it in a product. It is set up for peft.
This repository contains the fine-tuned SciReason VLM artifacts produced by the DataSphere SFT + GRPO pipeline.
Downloads · 30 days
9
7% of all-time downloads
All-time downloads
138
Public
Repo size
—
Likes
0
Public
Click a slice to open those files.
.safetensors1.7 GB · 55%
From the Hugging Face model README
This repository contains the fine-tuned SciReason VLM artifacts produced by the DataSphere SFT + GRPO pipeline.
outputs/hf_top_papers_qwen3vl_8b_grpo_lora for convenient loading.artifacts/sft_lora/: SFT LoRA adapter directory copied from outputs/hf_top_papers_qwen3vl_8b_sft_lora.artifacts/grpo_lora/: complete final GRPO output directory copied from outputs/hf_top_papers_qwen3vl_8b_grpo_lora.artifacts/archives/: compressed .tar.gz archives produced by the job.artifacts/data/: generated train/eval JSONL files and dataset summary.artifacts/reports/: budget, final summary, upload manifest and runtime reports.Qwen/Qwen3-VL-8B-Instructtop-papers/top-papers-graph-experts-datahf_top_papers_qwen3vl_8b2026-06-22T07:38:23ZThe root of this repository is prepared as the final GRPO adapter directory. For
LoRA/PEFT loading, use the same base model listed above and load this repository
as the adapter. The complete SFT and GRPO directories are also preserved under
artifacts/ for auditability and reproducibility.
Technical report for the A/B evaluation of
top-papers/Qwen3-VL-8B-Instruct-scireason
against stock Qwen/Qwen3-VL-8B-Instruct,
run as six Kaggle notebooks (T4 x2, 4-bit NF4).
| Model under test | top-papers/Qwen3-VL-8B-Instruct-scireason (SFT-LoRA + GRPO-LoRA) |
| Baseline | Qwen/Qwen3-VL-8B-Instruct (stock, no adapter) |
| Training data | top-papers/top-papers-graph-experts-data |
| Configs compared | base / sft / grpo |
| Run window | 2026-08-01 to 2026-08-02 (UTC) |
| Compute | Kaggle, Nvidia Tesla T4 x2, 2-bit/4-bit NF4 quantized inference |
Fine-tuning works where it was trained and degrades elsewhere:
Two of the six notebooks produced no usable data at all (nb2, nb6), one is partial (nb5), and one headline metric (indomain_grpo) was broken in the scorer. Those gaps are documented in section 4 rather than hidden.
Scores as reported by the run pipeline. n is the number of scored items.
| Benchmark | n | base | sft | grpo | grpo - base | metric |
|---|---|---|---|---|---|---|
| indomain_sft | 255 | 0.2715 | 0.4775 | 0.4788 | +0.2073 | F1 |
| indomain_grpo | 196 | 0.0000 | 0.0000 | 0.0000 | +0.0000 | accuracy (scorer broken - see 4.1) |
| MathVista | 1000 | 0.4180 | 0.4640 | 0.4620 | +0.0440 | accuracy |
| MMMU | 900 | 0.5256 | 0.4911 | 0.4900 | -0.0356 | accuracy |
| HallusionBench | 600 | 0.5333 | 0.5033 | 0.5200 | -0.0133 | accuracy |
| POPE | 450 | 0.9200 | 0.9111 | 0.9067 | -0.0133 | accuracy |
| OCRBench | 400 / 215 | 0.8625 | 0.1163 | n/a | -0.7462 | accuracy |
| CharXiv / ChartQA | 0 | - | - | - | - | not measured (nb2 failed) |
| MMStar / DocVQA | 0 | - | - | - | - | not measured (nb5 aborted) |
| ru_probe | 0 | - | - | - | - | not measured (nb6 skipped) |


On indomain_sft (255 Russian-language expert extraction tasks) the adapter nearly
doubles F1. Both fine-tuned configs are essentially tied (0.4775 vs 0.4788), so GRPO
adds almost nothing beyond SFT on this benchmark - the gain comes from SFT.
em (exact match) rises 0.0000 -> 0.0353/0.0392, so the gain is not merely partial-credit
noise on free-form text.
Note the base model already emits valid JSON for 99.6% of items but with semantically wrong
content (e.g. "subject": "Bachelier" where gold expects a DOI). SFT changes the content and
the schema discipline, not the output format.
OCRBench is the general-OCR control contour. Comparing the same 215 questions answered by both configs (paired, no sampling confound):
| correct | incorrect | accuracy | |
|---|---|---|---|
| base | 194 | 21 | 0.9023 |
| sft | 25 | 190 | 0.1163 |
169 correct answers lost, 0 gained. The regression is not marginal - it is a near-total failure of general OCR ability.

The failure mode is characteristic: the SFT model emits plausible, well-formed but semantically wrong text, degrading across every one of the 25 OCRBench subsets (ChartQA 0.950->0.000, docVQA 0.950->0.000, POIE 0.963->0.000, SROIE 0.815->0.000, HME100k 0.700->0.000, ...). Examples:
| gold | base | sft |
|---|---|---|
43 g | 43 g (correct) | 1.0 |
tawney | tawney (correct) | talwande |
Lady Joan III | Lady Jean III (close) | S/V Kestrel (unrelated) |
y = \frac{3}{2} | $$y = \frac{3}{2}$$ (correct) | an unrelated lambda expression |
This is the signature of catastrophic forgetting / output-distribution collapse: the adapter drives generation toward the narrow in-domain response style at the expense of faithful transcription.
This section matters as much as section 2: three of the headline numbers as originally produced were wrong or missing.
indomain_grpo 0.0 is a scorer bug, not a model resultAll three configs scored exactly 0.0. That is impossible for two different adapters and a
stock baseline, and it is an artifact:
verdict field from the vocabulary {supported, not_supported, unsupported}.{accepted, rejected, uncertain, needs_time_fix, needs_evidence_fix, added}."support", which
matches no gold label, so accuracy is structurally 0 for all configs.Re-scoring the identical raw predictions with a vocabulary map gives:
| config | official | rescored | off-schema outputs |
|---|---|---|---|
| base | 0.0000 | 0.5051 | 0 / 196 |
| sft | 0.0000 | 0.2041 | 105 / 196 |
| grpo | 0.0000 | 0.5102 | 0 / 196 |
Two things follow. First, the real verdict accuracy is ~51% for base and grpo, not 0%.
Second - and this is a genuine finding - SFT badly damages output-schema compliance:
105/196 SFT outputs use invented verdicts (leads_to x90, supports x46, unconfirmed,
unresolved, exceeds, ...), versus 0/196 for base and grpo. GRPO repairs this back to
a clean schema, which is a real, attributable benefit of the GRPO stage.
Caveat: the rescored numbers are this analysis's own reconstruction from raw predictions, not the pipeline's output. They should be treated as indicative.
Both benchmarks materialized 0 samples from 2500 candidates: every image failed with
unsupported image type bytes, and ChartQA's split lookup failed repeatedly
({'train','val'} instead of test). scores.json is {}.
Only OCRBench produced data. MMStar and DocVQA have no results at all, and the OCRBench
SFT arm was cut short at 215/400 items when the worker hit No space left on device
(os error 28), after which the GRPO arm crashed on adapter loading (exit -11 / -6).
The 215-vs-400 asymmetry is why section 3 uses a paired comparison.
ru_probe.jsonl was never attached, so the notebook exited cleanly with empty results.
This is a configuration gap, not a failure - but it means the Russian-transfer hypothesis
is untested.
CUDA out of memory, ~14.6 GiB T4) recurred during nb1 on one long sample.The pattern is coherent and the mechanism is legible:
The most defensible summary: this is a specialist adapter that trades broad visual competence for in-domain precision. Whether that trade is acceptable depends on the deployment target - it is a poor choice for any general-purpose or OCR-heavy use, and a good one for narrow domain extraction.
indomain_grpo is this report's own rescoring (4.1).supported/not_supported -> accepted/rejected) and
re-run nb1. Do not report indomain_grpo as 0.0 anywhere.Raw predictions, per-benchmark scores.json, summary.md, console logs and the analysis
scripts are preserved in the evaluation workspace (results/):
analysis.json - consolidated machine-readable resultsSUMMARY.md - condensed summary tablescores_by_benchmark.png, deltas_grpo_vs_base.png, ocrbench_collapse.pngoutputs/ - raw *.jsonl predictions, per-stage scores.json, run.log, console.lognotebooks_src/ - the six notebook sources as executedSource notebooks: apollinariat/nb1-indomain, nb2-charts, nb3-science,
nb4-verification, nb5-control, nb6-ru-probe.
Report generated from the Kaggle run outputs of 2026-08-01/02. All numbers are traceable to the raw per-item predictions retained alongside it.