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

ChatGPTからClaudeへのユーザーコンテキスト転送方法
Guides

ChatGPTからClaudeへのユーザーコンテキスト転送方法

Redditユーザーが、ChatGPTから詳細な認知プロファイルを抽出し、Claudeに転送可能なポータブルなAI憲章を作成する2プロンプト手法を共有。AIシステム間での移行の難しさに対処。

OpenClawRadar
AWSでClaude Codeを使って月額0.01ドルでサーバーレスAIエージェントプラットフォームを構築
Guides

AWSでClaude Codeを使って月額0.01ドルでサーバーレスAIエージェントプラットフォームを構築

ある開発者が、Claude Codeを29時間かけて使用し、NAT Gateway(32ドル/月)やALB(18ドル/月)などの高価なコンポーネントを排除し、約0.01ドル/月でAIエージェントを実行する完全なAWSサーバーレスプラットフォームを構築しました。このプロジェクトには233の単体テストと35のE2Eテストが含まれており、単一のcdk deployコマンドでデプロイできます。

OpenClawRadar
ローカルLLMセットアップの推奨事項(OpenClaw向け)
Guides

ローカルLLMセットアップの推奨事項(OpenClaw向け)

ユーザーが、GB10をAI処理用、Mac miniをOpenClawインストール用として使用し、特定のモデルとサーバーの詳細を含む、ローカルLLMをOpenClawで実行するための設定を共有しています。

OpenClawRadar
多段階AIエージェントにおける状態ドリフトを軽減する実践的手法
Guides

多段階AIエージェントにおける状態ドリフトを軽減する実践的手法

開発者がマルチエージェントワークフローにおける状態ドリフトを修正する具体的な方法を共有します。これには、スナップショットベースの読み取り、追加のみの書き込み、状態とコンテキストの分離が含まれます。これらのアプローチにより、実行の再現性が向上し、デバッグが追跡可能になりました。

OpenClawRadar