fix(qwen3.5-122b): enable tool-calling (--enable-auto-tool-choice --tool-call-parser qwen3_xml)
gen/gen-reasoning tool-calling 400'd (operator + brokkr's capability battery both caught it):
the bjk110 serve command shipped --reasoning-parser qwen3 but no tool flags. Qwen3.5 emits XML
tool calls (<tool_call><function=NAME><parameter=K>V</parameter></function></tool_call>), NOT
Hermes JSON — so `hermes` mis-parsed to raw text; `qwen3_xml` is the correct parser. Reasoning +
tools coexist (gen-reasoning keeps its thinking split). Verified live: a get_weather request
returns tool_calls=[get_weather {"city":"Paris"}].
This commit is contained in:
@@ -40,7 +40,11 @@ services:
|
|||||||
- MAX_NUM_BATCHED_TOKENS=${QWEN35_MAX_NUM_BATCHED_TOKENS:-32768}
|
- MAX_NUM_BATCHED_TOKENS=${QWEN35_MAX_NUM_BATCHED_TOKENS:-32768}
|
||||||
# --reasoning-parser qwen3 surfaces <think>…</think> as reasoning_content;
|
# --reasoning-parser qwen3 surfaces <think>…</think> as reasoning_content;
|
||||||
# the thinking on/off itself is per-request (litellm chat_template_kwargs).
|
# the thinking on/off itself is per-request (litellm chat_template_kwargs).
|
||||||
- VLLM_EXTRA_ARGS=--reasoning-parser qwen3 --enable-chunked-prefill
|
# --enable-auto-tool-choice + --tool-call-parser: Qwen3.5 emits XML tool calls
|
||||||
|
# <tool_call><function=NAME><parameter=K>V</parameter></function></tool_call>
|
||||||
|
# (NOT Hermes JSON), so the parser is qwen3_xml. Without these flags vLLM never
|
||||||
|
# parses tool calls (tool-calling is broken). The bjk110 repo command omitted them.
|
||||||
|
- VLLM_EXTRA_ARGS=--reasoning-parser qwen3 --enable-chunked-prefill --enable-auto-tool-choice --tool-call-parser qwen3_xml
|
||||||
- NVIDIA_VISIBLE_DEVICES=0
|
- NVIDIA_VISIBLE_DEVICES=0
|
||||||
- PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
- PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True
|
||||||
- VLLM_API_KEY=${API_KEY:-}
|
- VLLM_API_KEY=${API_KEY:-}
|
||||||
|
|||||||
Reference in New Issue
Block a user