From 98b31ddb6874de8d0f128a3de8c47ac72ca73df8 Mon Sep 17 00:00:00 2001 From: sdtblckgov Date: Tue, 20 Oct 2026 10:43:22 +0000 Subject: [PATCH] Map Qwen/Qwen3.6-27B to the qwen3.6 renderer Qwen3.6-27B ships the same chat template and tokenizer config as Qwen3.6-35B-A3B (byte-identical on the Hub). Add it to MODEL_RENDERER_MAP, MULTIMODAL_MODELS and the Qwen3.5-family enable_thinking defaults, and to the parity catalog. Co-Authored-By: Claude Opus 5.5 --- renderers/base.py | 4 +++- renderers/qwen35.py | 1 + tests/parity.py | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/renderers/base.py b/renderers/base.py index f3418841c..582e102ba 100644 --- a/renderers/base.py +++ b/renderers/base.py @@ -988,7 +988,8 @@ def is_multimodal(r: object) -> bool: "Qwen/Qwen3.5-35B-A3B": "qwen3.5", "Qwen/Qwen3.5-122B-A10B": "qwen3.5", "Qwen/Qwen3.5-397B-A17B": "qwen3.5", - # Qwen3.6. + # Qwen3.6. Both sizes ship the same chat template. + "Qwen/Qwen3.6-27B": "qwen3.6", "Qwen/Qwen3.6-35B-A3B": "qwen3.6", # Qwen3.8. "Qwen/Qwen3.8-27B": "qwen3.8", @@ -1108,6 +1109,7 @@ def is_multimodal(r: object) -> bool: "Qwen/Qwen3.5-397B-A17B": {"image"}, # Qwen3.6 extends Qwen3.5's chat template; same VL bits, only # tool-call argument serialization differs. + "Qwen/Qwen3.6-27B": {"image"}, "Qwen/Qwen3.6-35B-A3B": {"image"}, # Qwen3.8 adds reasoning-effort control and preserves thinking by default. "Qwen/Qwen3.8-27B": {"image"}, diff --git a/renderers/qwen35.py b/renderers/qwen35.py index 8f2dbffb3..a737fcc4f 100644 --- a/renderers/qwen35.py +++ b/renderers/qwen35.py @@ -105,6 +105,7 @@ "Qwen/Qwen3.5-122B-A10B": True, "Qwen/Qwen3.5-397B-A17B": True, # Qwen3.6 extends the Qwen3.5 template; same big-size polarity. + "Qwen/Qwen3.6-27B": True, "Qwen/Qwen3.6-35B-A3B": True, # Qwen3.8 keeps thinking enabled by default. "Qwen/Qwen3.8-27B": True, diff --git a/tests/parity.py b/tests/parity.py index ac34e11cc..e0fb94a36 100644 --- a/tests/parity.py +++ b/tests/parity.py @@ -109,6 +109,7 @@ def _model( _model("Qwen/Qwen3.5-35B-A3B", shared=False, roundtrip=False), _model("Qwen/Qwen3.5-122B-A10B", shared=False, roundtrip=False), _model("Qwen/Qwen3.5-397B-A17B", shared=False, roundtrip=False), + _model("Qwen/Qwen3.6-27B", shared=False, roundtrip=False), _model( "Qwen/Qwen3.6-35B-A3B", bridge=True,