Instructions to use dh-unibe/qwen3vl-medieval-german-v3 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use dh-unibe/qwen3vl-medieval-german-v3 with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-VL-4B-Instruct") model = PeftModel.from_pretrained(base_model, "dh-unibe/qwen3vl-medieval-german-v3") - Notebooks
- Google Colab
- Kaggle
qwen3vl-medieval-german-v3
Handwritten-text-recognition model trained on the serving-atr-inference training service. These are the weights of the best validation checkpoint of the run below — not its last epoch.
Evaluation
| metric | value |
|---|---|
| CER | 11.20 % |
| WER | 27.87 % |
| samples scored | 200 |
| characters scored | 8266 |
| character errors | 926 |
Measured on this run's own held-out validation split (page-level and seeded, so no page contributes lines to both sides). It is not a score on a shared benchmark and does not transfer to a different corpus.
The score mixes two kinds of validation, and the difference matters. dh-unibe/image-text_rats-und-richtebuecher_xv-xvi held whole projects out of training, so those lines test unseen hands. dh-unibe/image-text_bullinger-autoren, dh-unibe/image-text_koenigsfelden-charters-post-1500, dh-unibe/image-text_aaeb-xiv-xvii contributed a seeded partition of their own training projects instead — unseen pages in a hand the model trained on, which is the easier test. The figure above is one CER over both, so read it as mostly in-domain, not as a held-out-hands benchmark. Scoring the held-out projects on their own would give the stricter number.
Input granularity: give it one line, not a page
Trained on line crops (granularity: line, 262 144 pixels), and it reads
that way. Measured 2026-09-22 with
scripts/eval_granularity.py
on the 14 held-out pages behind its own CER, against their ground truth:
| input | n | CER | length ratio |
|---|---|---|---|
| line crops | 594 | 0.111 | 1.00 |
| paragraphs, page budget | 91 | 1.96 | 1.24 |
| paragraphs, line budget | 91 | 0.94 | 0.07 |
| whole pages | 14 | 1.00 | 0.001 |
Every one of the fourteen pages came back as two characters: "de" thirteen times, "te" once. Paragraphs fare no better — by length, a one-line paragraph returns 1.03 of the reference text, two to three lines 0.54, four to ten 0.15, more than ten lines 0.01, and two paragraphs looped ("und er und er …") to the token limit. Segment the page first and send one crop per call.
Details: thodel/serving-atr-inference#165.
Training data
dh-unibe/image-text_rats-und-richtebuecher_xv-xvi- Training projects:
Rats-undRichtebücher_MF_1_3543,Rats-undRichtebücher_MF_1_3544,Rats-undRichtebücher_MF_1_3545,Rats-undRichtebücher_MF_1_3546,Rats-undRichtebücher_MF_1_3547,Rats-undRichtebücher_MF_1_3548,Rats-undRichtebücher_MF_1_3549,Rats-undRichtebücher_MF_1_3550,Rats-undRichtebücher_MF_1_3551,Rats-undRichtebücher_MF_1_3552,Rats-undRichtebücher_MF_1_3553,Rats-undRichtebücher_MF_1_3554,Rats-undRichtebücher_MF_1_3555,Rats-undRichtebücher_MF_1_3556,Rats-undRichtebücher_MF_1_3557,Rats-undRichtebücher_MF_1_3558,Rats-undRichtebücher_MF_1_3559,Rats-undRichtebücher_MF_1_3560,Rats-undRichtebücher_MF_1_3561,Rats-undRichtebücher_MF_1_3562,Rats-undRichtebücher_MF_1_3563,Rats-undRichtebücher_MF_1_3564,Rats-undRichtebücher_MF_1_3565,Rats-undRichtebücher_MF_1_3566,Rats-undRichtebücher_MF_1_3567,Rats-undRichtebücher_MF_1_3568,Rats-undRichtebücher_MF_1_3569,Rats-undRichtebücher_MF_1_3570,Rats-undRichtebücher_MF_1_3571,Rats-undRichtebücher_MF_1_3572,Rats-undRichtebücher_MF_1_3573,Rats-undRichtebücher_MF_1_3574,Rats-undRichtebücher_MF_1_3575,TRAINING_VALIDATION_SET_Richtebuecher_M1,Test_MF_1_3556_p_204 - Evaluation: held-out projects
escript_test,escript_test_2
- Training projects:
dh-unibe/image-text_bullinger-autoren- Training projects:
0008_Aberlin_Joachim,0049_Adlischwyler_Hans_Jakob,0066_Adlischwyler_Johannes,0152_Altieri_Baldassare,0164_Amerbach_Bonifacius,0179_Aquilomontanus_Hermann,0224_a_Lasco_Johannes,0257_Beyel_Werner,0260_Bucher_Melchior,0261_Buchser_Johannes,0278_Bartholomäus_Adam,0315_Bedrot_Jakob,0319_Belényesi_Gergely,0328_Bersius_Marcus,0330_Bertlin_Bartholomäus,0343_Biberli_Lienhart,0350_Bing_Simon,0351_Birck_Sixt,0391_Bitter_Dietrich,0392_Blarer_Ambrosius,0396_Blasius_Johannes,0403_Blankenheim_Lorenz,0405_Blarer_Thomas,0431_Boltz_Valentin,0437_Borrhaus_Martin,0459_Brennwald_Heinrich,0461_Brunner_Fridolin,0465_Brunner_Leonhard,0467_Bucer_Martin,0495_Bullinger_Heinrich,0505_Burcher_John,0506_Butler_John,0536_Caesarius_Johannes,0540_Calvin_Johannes,0578_Capito_Wolfgang,0581_Cassander_Georg,0599_Claudius_Matthias,0646_Coletto_Andrea,0654_Comander_Johannes,0659_Comte_Béat,0667_Cousin_Gilbert,0671_Coverdale_Miles,0703_Crodel_Markus,0714_Curione_Celio_Secondo,0756_Distel_Georg,0761_Danmatter_Christian,0840_Drome_Michael,0985_de_Hotot_Jean,0987_del_Prato_Bartolomeo,0991_Edelmann_Martin,1001_Eliott_Nicholas,1010_Erb_Matthias,1039_Euander_Benedikt,1041_Edlibach_Hans,1045_Fischer_Ulrich,1047_Frosch_Johannes,1049_Farel_Guillaume,1055_Frecht_Martin,1056_Frick_Konrad,1057_Fuchs_Peter,1083_Schmid_aus_Bergheim_Johannes,1184_Frey_Johannes_Leopold,1185_Frey_Johann_Leopold,1188_Frey_Johannes,1214_Fries_Johannes,1218_Frölich_Georg,1250_Furtmüller_Johann_Valentin,1262_Gallicius_Philipp,1278_Gast_Johannes,1286_Gessner_Konrad,1309_Grübel_Sebastian,1365_Grynäus_Simon,1381_Gwalther_Rudolf,1384_Geldenhauer_Gerhard,1385_Gering_Beat,1387_Gassner_Thomas,1388_Guldi_Niklaus,1391_Haller_Berchtold,1393_Hegner_Gebhart,1395_Hewer_Jakob,1396_Hirt_Balthasar,1399_Huber_Peter,1402_Im_Haag_Peter,1406_Haller_Sulpitius,1407_Heim_Luzi,1409_Hentius_Martin,1410_Herbrot_Jakob,1414_Hindermann_Heinrich,1417_Hospinian_Leonhard,1419_Haab_Johannes,1445_Haller_Johannes,1453_Haller_Wolfgang,1456_Happel_Wigand,1458_Hardenberg_Albert,1548_Hilles_Richard_____,1553_Hochholzer_Christian,1560_Hooper_John,1569_Hospinian_Christian,1571_Hospinian_Johannes,1753_Jud_Leo,1758_Kilchrat_Hans,1760_Kromer_Benedikt,1761_Kuster_Heinrich,1764_Kambli_Johannes,1767_Kappeler_Veit,1780_Keller_Diethelm,1804_Kilchmeyer_Jodocus,1810_Klauser_Konrad,1837_König_Nikolaus,1857_Kappeler_d_J__Veit,1858_Karlstadt_Andreas,1860_Keller_Michael,1863_Knight_Thomas,1864_Kolin_Peter,1866_Kunz_Peter,1868_Lüthi_Heinrich,1884_Lavater_Ludwig,1888_Lavater_Hans_Rudolf,1903_Lening_Johannes,1915_Lindauer_Bernhard,1999_Lüthard_Konrad,2000_Maler_Hans,2003_Muntprat_Heinrich,2004_Mutschli_Hans,2005_Mösel_Wolfgang,2013_Müller_gen__Maier_Nikolaus,2095_Melanchthon_Philipp,2115_Meyer_Lorenz,2229_Musculus_Wolfgang,2234_Myconius_Oswald,2237_Mötteli_Martin,2258_Macarius_Joseph,2261_Maurer_Georg,2262_Medmann_Peter,2263_Megander_Kaspar,2264_Melander_Dionysius,2268_Müller_Bartholomäus,2272_Meyer_Jakob,2293_Frey_Hans_Rudolf,2300_von_Ulm_Heinrich,2302_Negri_Francesco,2319_Naogeorg_Thomas,2380_Oporin_Johannes,2441_Oechsli_Ludwig,2442_Oekolampad_Johannes,2444_Pfiffer_Heinrich,2446_Partridge_Nicholas,2448_Pergener_Oswald,2449_Peutinger_Claudius_Pius,2452_Piscatorius_Johannes,2455_Pistorius_Johannes,2458_Platter_Thomas,2508_Pellikan_Konrad,2594_Pfister_Nikolaus,2608_Pincier_Johannes,2629_Pontisella_Johannes,2700_Ratgeb_Hans,2804_Ryhiner_Heinrich,2806_Regel_Johannes,2807_Renato_Camillo,2808_Rhellikan_Johannes,2810_Ritter_Erasmus,2812_Ruman_Thoman,2817_Reublin_Wilhelm,2820_Sam_Konrad,2821_Schappeler_Christoph,2822_Schlittler_Heinrich,2823_Schmid_Andreas,2825_Schütz_Benedikt,2826_Sellarius_Heinrich,2828_Spörli_Konrad,2829_Stadler_Georg,2834_Stoll_Heinrich,2836_Strübi_Heinrich,2838_Schmid_Erasmus,2839_Schmid_Felix,2841_Schnyder_Peter,2845_Schwenckfeld_Kaspar,2846_Seger_Martin,2847_Spaldinus_Johannes_Arlius,2851_Stoll_Balthasar,2916_Schertlin_Sebastian,2943_Schuler_Gervasius,2958_Serin_Leonhard,2977_Simler_Josias,2982_Simler_Peter,3025_Stancaro_Francesco,3067_Stumpf_Johannes,3088_Sturm_Johannes,3099_Sulzer_Simon,3130_Stier_Sigismund,3138_Thamer_Theobald,3147_Thomann_Heinrich,3175_Toxites_Michael,3181_Traheron_Bartholomew,3199_Tschudi_Ägidius,3206_Tschudi_Valentin,3239_Tillmann_Bernhard,3240_Trebellio_Teodosio,3306_Vadian_Joachim,3410_Vermigli_Peter_Martyr,3429_Viret_Pierre,3446_Vogler_Hans,3462_Volmar_Melchior,3481_Vogt_Simprecht,3493_von_Cham_Bernhard,3700_von_Rümlang_Eberhard,3858_von_Landenberg_Hans,3860_von_Meggen_Jost,3872_Warner_Francis,3873_Weingartner_Rudolf,3875_Werdmüller_Otto,3876_Werdmüller_Ulrich,3877_Westerburg_Gerhard,3878_Widenhuber_Hans,3889_Wyttenbach_Niklaus,3891_Wäber_Johannes,3927_Welser_Hans,3938_Wick_Johann_Jakob,3963_Wimpfer_Georg,3964_Winzürn_Johannes,3988_Wolf_Johannes,4021_Wagner_Johannes,4023_Wetter_Wolfgang,4025_Wirz_Melchior,4027_Wirz_Ulrich,4030_Wähinger_Hans,4033_Zehnder_Johannes,4034_Zipperli_Hans,4079_Zwick_Johannes,4107_Zili_Dominik,4112_thom_Camph_Gerhard,4710_Enzinas_Francisco_de,TRAINING_VALIDATION_SET_2022-05-19__Bullinger_comb_M1,TRAINING_VALIDATION_SET_Blarer_Ambriosius__Proj_Bullinger,TRAINING_VALIDATION_SET_Blasius_Johannes__Proj_Bullinger,TRAINING_VALIDATION_SET_Borrhaus_Martin__Proj_Bullinger,TRAINING_VALIDATION_SET_Brunner_Fridolin__Proj_Bullinger,TRAINING_VALIDATION_SET_Bucer_Martin__Proj_Bullinger,TRAINING_VALIDATION_SET_Bullinger_Heinrich__Proj_Bullinger,TRAINING_VALIDATION_SET_Bullinger_Heinrich__Proj_Bullinger--mitBasemodel,TRAINING_VALIDATION_SET_Curione_Celio_Secondo__Proj_Bullinger,TRAINING_VALIDATION_SET_Grynäus_Simon__Proj_Bullinger,TRAINING_VALIDATION_SET_Gwalther_Rudolf__Proj_Bullinger,TRAINING_VALIDATION_SET_Haller_Berchtold__Project-Bullinger,TRAINING_VALIDATION_SET_Haller_Johannes__Proj_Bullinger,TRAINING_VALIDATION_SET_Hilles_Richard__Proj_Bullinger,TRAINING_VALIDATION_SET_Hochholzer_Christian__Proj_Bullinger,TRAINING_VALIDATION_SET_Karlstadt_Andreas__Proj_Bullinger,TRAINING_VALIDATION_SET_Megander_Kaspar__Proj_Bullinger,TRAINING_VALIDATION_SET_Myconius_Oswald__Proj_Bullinger,TRAINING_VALIDATION_SET_Schuler_Gervasius__Proj_Bullinger,TRAINING_VALIDATION_SET_Vadian__Proj_Bullinger,TRAINING_VALIDATION_SET_Vogt_Simprecht__Project-Bullinger,TRAINING_VALIDATION_SET_Zwick_Johann__Proj_Bullinger,TRAINING_VALIDATION_SET_von_Rümlang__Proj_Bullinger - Evaluation: a seeded page-level split of the training projects (
partition=0.9,seed=42)
- Training projects:
dh-unibe/image-text_koenigsfelden-charters-post-1500- Training projects: —
- Evaluation: a seeded page-level split of the training projects (
partition=0.9,seed=42) - Page cap: 6000
dh-unibe/image-text_aaeb-xiv-xvii- Training projects:
B_168_14-11_1,B_168_14-11_2,B_168_14-11_3,B_168_14-12,B_168_14-14_1,B_168_14-15_1,B_168_14-15_2,B_168_14-16,B_168_14-17_1,B_168_14-17_2,B_168_14-17_3,B_168_14-17_4,B_168_14-17_5,B_168_14-17_6,B_168_14-18,B_168_14-19,B_168_14-20_1,B_168_14-20_2,B_168_14-20_3,B_168_14-21_1,B_168_14-21_2,B_168_14-21_3,B_168_14-21_4,B_168_14-21_5,B_168_14-22_1,B_168_14-22_2,B_168_14-22_3,B_168_14-22_4,B_168_14-22_5,B_168_14-22_6,B_168_14-23_1,B_168_14-23_2,B_168_14-23_3,B_168_14-23_4,B_168_14-24_1,B_168_14-24_2,B_168_14-24_3,B_168_14-24_4,B_168_14-24_5,B_168_14-24_6,B_168_14-25_1,B_168_14-25_2,B_168_14-26_1,B_168_14-26_2,B_168_14-26_3,B_168_14-26_4,B_168_14-26_5,B_168_14-26_6,B_168_14-26_7,B_168_14-26_8,B_168_14-27_1,B_168_14-27_2,B_168_14-27_3,B_168_14-27_4,B_168_14-28_1,B_168_14-28_2,B_168_14-28_3,B_168_14-29_1,B_168_14-29_2,B_168_14-29_3,B_168_14-29_5,B_168_14-29_6,B_168_14-29_8,B_168_14-30_1,B_168_14-30_2,B_168_14-30_3,B_168_14-31_1,B_168_14-31_2,B_168_14-31_3,B_168_14-31_4,B_168_14-32_1,B_168_14-32_2,B_168_14-32_3,B_168_14-32_4,B_168_14-33_1,B_168_14-33_2,B_168_14-33_3,B_168_14-34,B_168_14-35_1,B_168_14-35_2,B_168_14-35_3,B_168_14-35_4,B_168_14-36_1,B_168_14-36_2,B_168_14-36_3,B_168_14-36_4,B_168_14-36_5,B_168_14-37_1,B_168_14-37_2,B_168_14-39_1,B_168_14-40_1,B_168_14-40_2,B_168_14-42,B_168_14-5,B_168_14-6,B_168_14-7_1,B_168_14-7_2,B_168_14-8,B_168_14-9,B_168_15-10_1,B_168_15-10_2,B_168_15-10_3,B_168_15-11_1,B_168_15-11_2,B_168_15-11_3,B_168_15-11_4,B_168_15-12_1,B_168_15-12_2,B_168_15-12_3,B_168_15-12_5,B_168_15-12_6,B_168_15-12_8,B_168_15-17_1,B_168_15-20_2,B_168_15-20_3,B_168_15-20_4,B_168_15-20_5,B_168_15-20_6,B_168_15-23_1,B_168_15-23_2,B_168_15-23_3,B_168_15-23_4,B_168_15-23_5,B_168_15-24_2,B_168_15-27_3,B_168_15-27_4,B_168_15-27_6,B_168_15-27_7,B_168_15-2_1,B_168_15-2_2,B_168_15-2_3,B_168_15-2_4,B_168_15-30_3,B_168_15-30_4,B_168_15-30_6,B_168_15-30_7,B_168_15-30_8,B_168_15-33,B_168_15-5_1,B_168_15-5_2,B_168_15-5_3,B_168_15-5_4,B_168_15-5_5,B_168_15-5_6,B_168_15-6_1,B_168_15-6_3,B_168_15-7,B_168_15-8_16,B_168_15-8_17,B_168_15-8_2,B_168_15-8_3,B_168_15-9_2,B_168_15-9_4,B_168_16-1_1,B_168_16-1_2,B_168_16-33_2,B_168_16-33_3,B_168_16-35_3,B_168_16-35_4,B_168_16-35_5,B_168_16-36_5,B_168_16-36_6,B_168_16-37_3,B_168_16-38_2,B_168_16-38_5,B_168_16-3_2,B_168_16-3_4,B_168_16-3_6,B_168_16-3_7,B_168_16-40_2,B_168_16-40_3,B_168_16-40_5,B_168_16-40_6,B_168_16-40_7,B_168_16-40_8,B_168_16-4_1,B_168_16-4_2,B_168_16-5_1,B_168_16-5_2,B_168_16-5_3,B_168_16-6_1,B_168_16-6_2,B_168_16-9_12,B_168_16-9_3,B_168_16-9_6,B_168_16-9_7,B_168_16-9_8,B_168_17-14_4,B_168_17-14_5,B_168_17-15_5,B_168_17-15_6,B_168_17-15_7,B_168_17-16_3,B_168_17-16_4,B_168_17-1_2,B_168_17-1_3,B_168_17-1_4,B_168_17-1_5,B_168_17-1_6,B_168_17-21_2,B_168_17-21_4,B_168_17-22_2,B_168_17-22_3,B_168_17-2_1,B_168_17-2_2,B_168_17-2_4,B_168_17-30_1,B_168_17-3_3,B_168_17-45_2,B_168_17-48_2,B_168_17-48_3,B_168_17-48_4,B_168_17-4_2,B_168_17-6_5,B_168_17-6_6,B_168_17-8_2,B_168_17-8_3,B_168_17-8_4,B_168_17-8_5,B_168_17-8_6,B_168_17-8_7,B_168_18-12_6,B_168_18-13_2,B_168_18-15_1,B_168_18-15_4,B_168_18-1_4,B_168_18-22_2,B_168_18-24_10,B_168_18-5_1,B_168_18-8_4,B_168_18-9_1,B_168_18-9_2,B_168_18-9_3,B_168_19-1,B_168_19-20_2,B_168_19-20_4,B_168_19-20_5,B_168_19-21_1,B_168_19-24_5,B_168_19-28_1,B_168_19-28_10,B_168_19-28_15,B_168_19-28_16,B_168_19-28_2,B_168_19-28_3,B_168_19-28_33,B_168_19-29_1,B_168_19-29_2,B_168_19-29_3,B_168_19-29_4,B_168_19-29_5,B_168_19-29_6,B_168_19-2_1,B_168_19-2_2,B_168_19-30_1,B_168_19-30_15,B_168_19-30_16,B_168_19-30_6,B_168_19-35_1,B_168_19-35_10,B_168_19-35_11,B_168_19-35_12,B_168_19-35_13,B_168_19-35_14,B_168_19-35_15,B_168_19-35_16,B_168_19-35_17,B_168_19-35_18,B_168_19-35_2,B_168_19-35_3,B_168_19-35_4,B_168_19-35_5,B_168_19-35_6,B_168_19-35_7,B_168_19-35_8,B_168_19-35_9,B_168_19-3_1,B_168_19-3_2,PCrim_Dt_(ville)_6-1,PCrim_Dt_(ville)_6-10,PCrim_Dt_(ville)_6-7,PCrim_Dt_(ville)_6-9,PCrim_E_10-1,PCrim_E_10-2,PCrim_E_12-1,PCrim_E_12-2,PCrim_E_128-5,PCrim_E_14-1,PCrim_E_14-2,PCrim_E_142-3,PCrim_E_155-1,PCrim_E_156-1,PCrim_E_156-3,PCrim_E_156-7,PCrim_E_163-3,PCrim_E_30-1,PCrim_E_30-2,PCrim_E_300-17,PCrim_E_300-18,PCrim_E_332-10,PCrim_E_332-11,PCrim_E_332-12,PCrim_E_332-13,PCrim_E_332-14,PCrim_E_332-16,PCrim_E_332-18,PCrim_E_332-19,PCrim_E_332-2,PCrim_E_332-20,PCrim_E_332-22,PCrim_E_332-24,PCrim_E_332-28,PCrim_E_332-29,PCrim_E_332-3,PCrim_E_332-4,PCrim_E_332-5,PCrim_E_332-6,PCrim_E_332-7,PCrim_E_332-9,PCrim_E_399,PCrim_E_428-36,PCrim_E_55-1,PCrim_E_55-2,PCrim_E_6,PCrim_E_69-2,PCrim_E_7,PCrim_E_70-1,PCrim_E_70-2,PCrim_E_76-1,PCrim_E_76-2,PCrim_E_78-1,PCrim_E_78-11,PCrim_E_78-2,PCrim_E_85-1,PCrim_E_85-2,PCrim_LN_4,PCrim_LN_6-2,PCrim_LZ_24-2,PCrim_LZ_25-19,PCrim_SU_21,TRAINING_VALIDATION_SET_AAEB_FFC_V3,TRAINING_VALIDATION_SET_AAEB_FFC_v0,TRAINING_VALIDATION_SET_AAEB_FFC_v0_1,TRAINING_VALIDATION_SET_AAEB_FFC_v0_3,TRAINING_VALIDATION_SET_AAEB_FFC_v1,TRAINING_VALIDATION_SET_AAEB_FFC_v2,TRAINING_VALIDATION_SET_AAEB_FFC_v3_1,TRAINING_VALIDATION_SET_AAEB_mixte_v4,TRAINING_VALIDATION_SET_FFC_v0_2 - Evaluation: a seeded page-level split of the training projects (
partition=0.9,seed=42)
- Training projects:
Materialized from that selection: 12,301 pages, 325,174 transcribed lines, 325,651 training samples.
Trained with the instruction: Transcribe the handwritten text in this image exactly as written. — serving it with different wording is a silent distribution shift.
Hyperparameters
granularity: line
prompt: Transcribe the handwritten text in this image exactly as written.
load_in_4bit: false
lora_r: 64
lora_alpha: 128
lora_dropout: 0.05
target_modules:
- q_proj
- k_proj
- v_proj
- o_proj
- gate_proj
- up_proj
- down_proj
modules_to_save: []
epochs: 1
max_epochs: null
patience: 2
min_delta: 0.0001
batch_size: 16
accumulate_grad_batches: 1
lrate: 0.0002
lr_scheduler: cosine
warmup_ratio: 0.05
weight_decay: 0.0
max_grad_norm: 1.0
optim: paged_adamw_8bit
gradient_checkpointing: true
save_steps: 200
max_pixels: 262144
max_seq_len: 1024
min_train_chars: 0
eval_samples: 200
max_new_tokens: null
seed: 42
workers: 8
device: cuda:0
wandb_run: null
Provenance
| engine | vllm |
| base model | Qwen/Qwen3-VL-4B-Instruct |
| training job | 20260915T055400Z-qwen3vl-medieval-german-v3 |
| trained | 2026-09-16T02:51:05.868548+00:00 |
| weights | adapter_config.json, adapter_model.safetensors, added_tokens.json, chat_template.jinja, merges.txt, preprocessor_config.json, special_tokens_map.json, tokenizer.json, tokenizer_config.json, training_summary.json, video_preprocessor_config.json, vocab.json |
metadata.json in this repo is the record the trainer wrote, verbatim: the full request, the parsed metrics and the job id.
Using it
This is a LoRA adapter, not a full model — it needs its base:
from peft import PeftModel
from transformers import AutoModelForImageTextToText, AutoProcessor
base = AutoModelForImageTextToText.from_pretrained('Qwen/Qwen3-VL-4B-Instruct')
model = PeftModel.from_pretrained(base, 'dh-unibe/qwen3vl-medieval-german-v3')
processor = AutoProcessor.from_pretrained('dh-unibe/qwen3vl-medieval-german-v3', trust_remote_code=True)
vLLM 0.11 will not serve it as an adapter (it refuses LoRA on the vision tower), so serving means merging it into the base first — scripts/merge_loras.py in serving-atr-inference does that.
Notes
SCOPE OF THE HEADLINE CER. The reported 0.1120 was measured on the FIRST 200 lines of val.jsonl, which for this corpus are the held-out projects escript_test and escript_test_2 (the test stage took the head of the file until commit 4785410). It is therefore a held-out number, not the mostly-in-domain one the generated caveat below assumes.\n\nRe-scored afterwards on two disjoint subsets:\n held-out (escript_test + escript_test_2, all 594 lines): CER 0.1109, WER 0.2747\n in-domain (seeded draw of 200 from the other 18,475 lines): CER 0.1427, WER 0.3601\n\nThe held-out set scores BETTER, and the reason is the source mix rather than the split: escript_test is Rats- und Richtebuecher material, of which the model saw 139,708 training lines, so it is an unseen project in a very familiar hand. The in-domain draw spreads over all four repositories. Per source on that draw: aaeb-xiv-xvii 0.0979, bullinger-autoren 0.1301, koenigsfelden-charters 0.1574.\n\nUSE 0.14 as the figure describing this model on this corpus, and 0.11 as the figure on one held-out project. Quoting only 0.11 would overstate it.
- Downloads last month
- 11
Model tree for dh-unibe/qwen3vl-medieval-german-v3
Base model
Qwen/Qwen3-VL-4B-Instruct