smirki/qwen3.5-4b-terminal-v1
smirki/qwen3.5-4b-terminal-v1
A Qwen3.5-4B variant for terminal and coding-agent use. Full merged weights in bf16, same architecture, tokenizer, chat template, and native XML tool-call format as Qwen/Qwen3.5-4B. Drop-in replacement wherever the base model runs.
Terminal-Bench 2.1
Harbor terminus-2 harness, k=2 attempts per task, 65,536-token context with 8,192 output tokens per turn, thinking on, shipped per-task timeouts, at most 24 concurrent trials per H100. The stock model was run under the identical setup. 76 of the 89 tasks (the 13 with agent budgets of 60 minutes or more were not run for either column).
Per task: 10 improved, 1 regressed, 65 unchanged (sign test p = 0.012).
Running it
vllm serve smirki/qwen3.5-4b-terminal-v1 \
--max-model-len 65536 \
--language-model-only \
--enable-auto-tool-choice --tool-call-parser qwen3_xml \
--reasoning-parser qwen3--language-model-only drops the unused vision tower. The tool-call parser name is qwen3_xml (alias qwen3_coder) in vLLM 0.28; the hermes parser does not understand this model's tool-call format.
Sampling defaults from the Qwen3.5 model card apply unchanged: thinking mode temperature 1.0 / topp 0.95 / topk 20 / presencepenalty 1.5; non-thinking mode temperature 0.7 / topp 0.8 / topk 20. Non-thinking mode is selected by passing `enablethinking=False` to the chat template, exactly as for the base model.
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
r = client.chat.completions.create(
model="smirki/qwen3.5-4b-terminal-v1",
messages=[{"role": "user", "content": "List the largest files under /var/log."}],
tools=[{"type": "function", "function": {
"name": "bash",
"description": "Run a shell command",
"parameters": {"type": "object",
"properties": {"command": {"type": "string"}},
"required": ["command"]}}}],
)
print(r.choices[0].message.tool_calls)Files
model.safetensors (bf16, 9.1 GB), config.json, generation_config.json, tokenizer files, and the preprocessor configs inherited from the base model.
License
Apache-2.0, inheriting the license of Qwen/Qwen3.5-4B by the Qwen team, Alibaba Cloud.
