# Qwick-3.5-9B Qwick-3.5-9B は、MMLU-ProとGPQA-Diamondでthinkingの短縮を基準に選定したQwen3.5-9B派生モデルです。マージ済みBF16 Transformersウェイトとして、`horiuchinobuyuki/Qwick-3.5-9B` から直接ロードできます。作者は [Nobuyuki Horiuchi](https://huggingface.co/horiuchinobuyuki) です。 [English model card](README.md) ## Qwickの狙い Qwen3.5-9Bは非常に賢く用途の広いモデルで私たちも日常的に使っていますが、実運用では推論が長くなりがちで、必要のない問題でも多くのthinkingトークンを費やす傾向がありました。Qwick-3.5-9Bはまさにその癖を対象にしたfine-tuneで、Qwenの回答品質を保ったまま推論を明確に短くすることを狙っています。 下のベンチマークでは、精度を元モデルと同程度に保ちつつ、平均の生成長を約20〜55%短縮しています(トークン変化の列を参照)。 > **評価範囲:** 学習とモデル選定はテキスト入力です。BF16のビジョン保持をMMMU validation全900問のmatched比較で測定し、以下に開示します。10,500問のtest splitではなく、広範なマルチモーダル配信の適格性検証でもないため、Hubのpipelineは `text-generation` のままです。 ## 公開ベンチマーク 固定したQwen3.5-9Bとのローカル同条件比較です。トークン数にはthinkingとfinal answerの両方を含みます。 | ベンチマーク | Qwen3.5-9B | Qwick-3.5-9B | スコア差 | トークン変化 | 条件 | |---|---:|---:|---:|---:|:---:| | MMLU-Pro (12,032) | 81.383% | 81.117% | -0.266 pp | -39.51% | A | | GPQA-Diamond (198) | 77.778% | 79.798% | +2.020 pp | -28.98% | A | | IFEval prompt strict (541) | 89.279% | 89.649% | +0.370 pp | -22.78% | A | | MMMU validation、公式互換budget (900) | 73.778% | 74.556% | +0.778 pp | -25.91% | V | | JMMLU common-clean (987) | 87.943% | 86.930% | -1.013 pp | -54.05% | A | | LiveCodeBench v6 budget (1,055) | 66.540% | 73.839% | +7.299 pp | -51.21% | C | - **A:** thinking、temperature 1.0、top-p 0.95、top-k 20、presence penalty 1.5、最大32,768トークン生成。 - **V:** Aと同じサンプリング、promptごとに画像1〜5枚、server context 131,072、最大32,768トークン生成。公式互換final-content採点と、乱数fallbackなしのstrict採点を併記。 - **C:** thinking、temperature 0.6、top-p 0.95、top-k 20、最大81,920トークン生成。 IFEvalは他のコア比較と同じ、公式推奨のgeneral-thinkingサンプリング条件で再走しました。Qwen3.5-9Bは89.279%、Qwick-3.5-9Bは89.649%(+0.370 pp)で、length stopはそれぞれ8件と12件です。以前のtemperature-zero IFEval結果はすべてこの結果で置換しました。IFEvalは参考測定(report-only)のままで、モデル再選択には使っていません。 visionは `MMMU/MMMU@98e6ac0cb9b7b2cd2c991b85a50762edc4aedc68` のvalidation全900問(multiple-choice 847、open-answer 53)です。Qwen3.5-9Bは公式互換budgetで664/900、Qwick-3.5-9Bは671/900でした。差は+0.778 pp、科目層別のpaired bootstrap区間は-1.889〜+3.444 pp、exact McNemarは `p=0.6322` です。区間は0を跨ぐため、BF16のビジョン劣化シグナルは検出しませんでしたが、改善も判別できていません。公式parserの乱数fallbackはQwen3.5-9B/Qwickで14件 / 21件、乱数fallbackなしのstrict budgetは662/900 / 667/900です。full trace欠損は0、length stopは12件 / 15件です。参考測定(report-only)であり、10,500問のtest splitではありません。 続いて公開量子化checkpoint 2種も同じvalidation全件protocolで再走しました。 | Model | 公式互換budget | strict budget | 平均full-trace tokens | Qwick BF16との差 | |---|---:|---:|---:|---:| | Qwen3.5-9B BF16 | 664/900 (73.778%) | 662/900 (73.556%) | 6476.48 | -0.778 pp | | Qwick BF16 | 671/900 (74.556%) | 667/900 (74.111%) | 4798.66 | +0.000 pp | | Qwick FP8 | 655/900 (72.778%) | 655/900 (72.778%) | 5022.40 | -1.778 pp | | Qwick NVFP4 | 635/900 (70.556%) | 626/900 (69.556%) | 5437.84 | -4.000 pp | Qwick BF16 / FP8 / NVFP4はアイテムごとに同じmodel-independent prompt-hash seedを使っています。FP8/NVFP4とQwick BF16のpaired記述区間、fallback件数、trace整合は [EVALUATION.md](EVALUATION.md) に収録します。参考測定(report-only)で、広範なマルチモーダル配備を保証するものでもありません。 Qwen3.5-9B専用のbudget診断として、32kでlength stopになったQwen3.5-9B BF16の8件だけを128k上限で再生成しました。541件への論理オーバーレイではprompt strictが90.018%(+0.739 pp)となり、length stopとempty final contentはいずれも8件から2件へ減りました。実行時のreplica/layoutも変わるため、これはQwickとのmatched比較でもトークン上限だけの因果効果でもありません。 ## 凍結済み内部release gate 384-prompt synthetic holdoutは、candidate weightと専用gate policyを凍結した後に一度だけ評価しました。事前固定された `temperature=0` decodeはcandidate採択用の内部条件であり、上表の公開性能測定に使うprofileではありません。candidateはこの凍結済みgateをpassしました。holdoutは学習、checkpoint選択、結果閲覧後のretuningには使わず、再走もしていません。[heldout_results.json](heldout_results.json) にgate policy、aggregate outcome、artifact identityを記録していますが、そのscoreをtemperature-1.0公開評価と同じ測定として比較してはいけません。 `raw correct` は打ち切り有無を問わない正解、`budget correct` は正解かつlength stopでないものです。 ## 使い方 ```python import torch from transformers import AutoTokenizer, Qwen3_5ForConditionalGeneration model_id = "horiuchinobuyuki/Qwick-3.5-9B" tokenizer = AutoTokenizer.from_pretrained(model_id) model = Qwen3_5ForConditionalGeneration.from_pretrained( model_id, dtype=torch.bfloat16, device_map="auto" ).eval() ``` thinking有効時の生成例は [USAGE.md](USAGE.md) と [examples/text_generation.py](examples/text_generation.py) にあります。例では最大8,192トークンですが、条件Aの評価ではvLLMの`presence_penalty=1.5`と最大32,768トークンを使用しました。 ウェイトシャードは合計18.82 GB(17.53 GiB)です。短いpromptをBF16で動かす場合は24 GB GPUが一つの目安ですが、利用可能なcontext長はバックエンドとKV cacheに依存します。CPU offloadや量子化を使う場合は必要VRAMが変わります。 主用途はテキスト推論、instruction following、日本語QA、code generationの研究・評価です。MMMU validation全件のビジョン測定は能力保持の証拠ですが、広範なマルチモーダル配備の検証ではありません。安全性が重要な助言、高影響の意思決定、自律実行を目的とした評価は行っていません。利用前に対象promptと画像分布で検証してください。 ## 学習と公開形式 rank-8 attention adapterをfull-trace SFTとcomposition-native Step-DPOで学習し、checkpoint探索と局所antithetic NESで更新しました。評価後、固定Qwen3.5-9BへPEFT `safe_merge`し、BF16ウェイトへ変換しました。 ## 既知の制約 - HMMT公開60問×4 seedはbudget correctが187/240から172/240へ低下しました(-6.25 pp)。トークン数は32.06%減少しました。 - MMLU-Pro engineeringは753/969から733/969へ低下しました(-2.064 pp)。 - 予約holdoutは別途凍結したtemperature-zero内部release gateであり、公開性能ベンチマークではありません。再走やretuningには使っていません。 - ビジョン結果はvalidation全900問で、アイテムごとに1つのpaired sampling seedを使っています。公式parserの乱数fallback件数とstrict scoreを併記します。 - 掲載値は、このBF16 checkpointと記載したdecode条件に対するものです。公開FP8/NVFP4版のMMMU validation結果は併記しますが、その他の変換形式や対象画像分布は別途検証が必要です。 Apache-2.0で公開します。由来、学習履歴、hashは [NOTICE](NOTICE)、[TRAINING.md](TRAINING.md)、[provenance.json](provenance.json) を参照してください。引用情報は [CITATION.cff](CITATION.cff) と英語版READMEにあります。