Qwen 3.5の決定版Jinjaテンプレート

Reddit r/LocalLLaMA / 2026/4/12

💬 オピニオンDeveloper Stack & InfrastructureTools & Practical UsageModels & Research

要点

  • 深掘り解説を行う著者が、公式テンプレートで見られる残存のツール呼び出しやXMLのフォーマット不具合を解決することを狙った、Qwen 3.5向けの「決定版」Jinjaチャットテンプレートを紹介します。
  • このテンプレートは、(古い強制/疑似コメント構文を避けつつ)Qwenのネイティブな`<think>`のXMLスキーマに合わせ、現在のAPIクライアントが想定する最新の`developer`ロール文字列へマッピングするよう設計されています。
  • 空のツールパラメータをキャッシュするなどの安全性のための取り扱いを追加し、LM Studio固有のバックエンドの癖に対する的を絞った修正(イテレータのパースや、ツール呼び出しのテキストが思考内に現れる場合の問題を含む)を行います。
  • 無限ループとなるツール不具合の回避策として、`<|think_off|>`タグをシステムプロンプトまたはユーザープロンプトから除去し、そのターンに限って「thinking」を強制的に無効化できます。
  • このテンプレートはHugging Faceのリンクで共有されており、ユーザーフィードバック次第では、今後のQwen 3.6モデルとも互換性がある可能性が示唆されています。

Qwen 3.5 のテンプレーティングロジックをかなり徹底的に深掘りして、残り続けているツール呼び出しのバグを正しく直しました。こちらの方々は本当に素晴らしい土台を作っていて、@pneuny や @ellary のような方々によるテンプレートは、初期の段階で本当に命の恩人でした。ですが、多くのものが強制的なプロンプトインジェクションに依存していたり、xml のフォーマットをうっかり幻覚(誤認)してしまったりすることに気付きました(qwen は実際には、古いテンプレートがフォールバックしてしまう /* 記法ではなく、ネイティブに純粋な <think> タグで学習されています)。

そこで、公式の qwen テンプレートに存在する既知の問題点をすべて洗い出して、何時間も調査・テストした後、私は可能な限り最高のテンプレートを慎重に作成しました。これはネイティブの xml スキーマを完全に尊重し、現代の API クライアントが使う新しい 'developer' ロール文字列を動的にマッピングし、空のツールパラメータを安全にキャッシュします。

補足として、LM Studio を特に使っている方へ:バックエンドは python の |items 辞書イテレータでエラーを投げます。また、モデルが思考の中でツール呼び出しについて考えるだけでも、正規表現パーサが完全に壊れてしまいます。私は、この jinja に対して的を絞った修正を統合しました。プロンプト内(システムでもユーザーでも)どこかに <|think_off|> と書けば、テンプレートがタグを見えない形でスクラブし、そのターンにおける思考を完全にハード無効化することで、無限ループのツールバグを完全に回避します。

ここでのアーキテクチャが、近々リリース予定の Qwen 3.6 モデルでも引き続き有効であるのに十分な堅牢さだといいのですが。奇妙な挙動に遭遇したら教えてください。

テンプレートはこちらから入手できます:

https://huggingface.co/froggeric/Qwen3.5-35B-A3B-Uncensored-FernflowerAI-MLX-8bit/blob/main/chat_template.jinja

submitted by /u/ex-arman68
[link] [comments]