Qwen 3.5 ツール呼び出しのエージェント利用向け修正:サーバーステータスとクライアント側の回避策

✍️ OpenClawRadar📅 公開日: April 15, 2026🔗 Source
Qwen 3.5 ツール呼び出しのエージェント利用向け修正:サーバーステータスとクライアント側の回避策
Ad

Qwen 3.5エージェント環境におけるツール呼び出しのバグ

コーディングエージェントや関数呼び出しループなどのエージェント環境でQwen 3.5モデルを実行する場合、4つの特定のバグが原因でツール呼び出しが完全に失敗する可能性があります。

4つの主要なバグ

  • XMLツール呼び出しがプレーンテキストとして漏洩: Qwen 3.5はツール呼び出しをXML形式(例: <function=bash><parameter=command>ls</parameter></function>)で出力します。サーバーがこれを解析できない場合(特にテキストがXMLの前にあったり、思考モードが有効になっている場合)、ツール呼び出しはfinish_reason: stopを持つ生のテキストとして到着するため、エージェントはそれを実行しません。
  • <think>タグがテキストに漏れてコンテキストを汚染: llama.cppはenable_thinking: falseに関わらず内部的にthinking=1を強制するため、タグがターン間で蓄積され、マルチターンセッションを破壊します。
  • 間違ったfinish_reason: サーバーはツール呼び出しが存在する場合に「stop」を送信し、エージェントがそれを最終回答として扱う原因となります。
  • 非標準のfinish_reason: 一部のサーバーは「eos_token」、「」、またはnullを返し、ほとんどのフレームワークがツール呼び出しの存在を確認する前に未知の値でクラッシュします。

サーバーステータス(2026年4月)

ソースは主要な推論サーバーの詳細なステータステーブルを提供します:

  • LM Studio 0.4.9: XML解析のための最適なローカルオプション(v0.4.7で修正)、思考漏れ処理の改善、通常は正しいfinish_reason。
  • vLLM 0.19.0: --tool-call-parser qwen3_coderフラグで動作、ストリーミングバグが存在、思考漏れは修正済み、通常は正しいfinish_reason。
  • Ollama 0.20.2: 閉じられていない</think>バグの修正以来改善されたが、XML解析はまだ不安定、時々間違ったfinish_reason。
  • llama.cpp b8664: パーサーは存在するが思考モードが有効な場合に失敗、思考漏れは未修正、パーサーが失敗した場合に間違ったfinish_reason。
Ad

推奨される解決策

ツール引数で|itemsフィルターが失敗する既知の問題がある標準のQwen 3.5 Jinjaテンプレートの代わりに、Unsloth GGUFsを使用してください。Unslothには21のテンプレート修正が含まれています。

サーバーが見逃したものをキャッチする3つの小さな関数でクライアント側の安全網を追加します。ソースは最初の関数を提供します:

import re, json, uuid

1. テキストコンテンツからQwen XMLツール呼び出しを解析

def parse_qwen_xml_tools(text): results = [] for m in re.finditer(r'<function=([\w.-]+)>([\s\S]?)</function>', text): args = {} for p in re.finditer(r'<parameter=([\w.-]+)>([\s\S]?)</parameter>', m.group(2)): k, v = p.group(1).strip(), p.group(2).strip() try: v = json.loads(v) except: pass args[k] = v

この関数は、サーバーがXMLを適切に解析できない場合にテキストコンテンツからツール呼び出しを抽出し、エージェントワークフローのためのフォールバックメカニズムを提供します。

📖 完全なソースを読む: r/LocalLLaMA

Ad

👀 See Also

コミュニティソースから編集されたOpenClawリソースリスト
Guides

コミュニティソースから編集されたOpenClawリソースリスト

GitHubリポジトリには、セットアップ、構成、メモリシステム、セキュリティ、スキル、モデル互換性、コミュニティリンクをカバーする実用的なOpenClawリソースが集められており、開発者が一般的な情報ギャップを回避するのに役立ちます。

OpenClawRadar
AIエージェントの価格設定:OpenClawを中小企業に販売した教訓
Guides

AIエージェントの価格設定:OpenClawを中小企業に販売した教訓

OpenClawエージェントを法律事務所や不動産業者に販売してきた開発者が、実践的な価格戦略を共有:シート単位は失敗、AI社員フレーミングが有効、LLMコストはパススルーでマージン減少を防ぐ。

OpenClawRadar
ボットのOAuthトークン自動更新をClaude Codeで実現
Guides

ボットのOAuthトークン自動更新をClaude Codeで実現

Redditユーザーが、OAuthトークンの有効期限切れを防ぐ方法を共有しました。Claude Codeを設定して8時間ごとにトークンを自動更新することで、ボットを手動介入なしで継続的に稼働させることができます。

OpenClawRadar
Qwen3.xモデルは、ストリーミング出力形式の不一致により、OpenClawでサイレントに失敗します。
Guides

Qwen3.xモデルは、ストリーミング出力形式の不一致により、OpenClawでサイレントに失敗します。

ストリーミングモードでQwen3.xモデルが「content」フィールドではなく「reasoning」フィールドに出力するため、OpenClawがエラーを出さずにフォールバックモデルに切り替わる問題。APIフォーマットを変換し「think: false」を注入するプロキシで解決し、完全なツール呼び出し評価を可能にします。

OpenClawRadar