-
Notifications
You must be signed in to change notification settings - Fork 324
Open
Labels
kind/bugSomething isn't workingSomething isn't working
Description
Tool call detection issue with DMR and qwen3-coder-30b-a3b-instruct-gguf:Q3_K_M
Context
Configuration used:
- Tool:
docker-agent - Model:
huggingface.co/unsloth/qwen3-coder-30b-a3b-instruct-gguf:Q3_K_M - Backend: Docker Model Runner (DMR) → llama.cpp
- Provider:
dmr
Symptoms
When the agent calls a skill or a tool, instead of executing the action, the model returns raw text containing the tool call:
Skill with no parameter (what-time-is-it):
<function=what-time-is-it> </function> </tool_call>
Skill with a parameter (brave-news-search):
<function=brave-news-search>
<parameter=query> small local models </parameter>
</function> </tool_call>
Shell toolset:
<function=shell>
<parameter=cmd> ls -lha </parameter>
</function> </tool_call>
These <function=...> blocks are displayed as-is in the response and are never executed.
Workaround:
- Adjust sampling parameters: lower
presence_penaltyto0.0and slightly raisetemperatureto improve the coherence of structured outputs (argument JSON): - Explicit system instruction
agents:
root:
model: qwen3-coder
num_history_items: 50
skills: true
description: Bob
instruction: |
You are Bob, a useful AI expert.
IMPORTANT — Tool usage rules:
- When you need to call a tool, use ONLY the structured tool-calling API.
- Do NOT output tool invocations as raw text blocks such as <function=...> or <tool_call> tags.
- The tool calling mechanism is handled automatically by the system. Just invoke the tool directly.
- If a tool is unavailable, say so in plain text. Never fabricate tool output.
toolsets:
- type: shell
- type: filesystem
- type: fetch
models:
qwen3-coder:
provider: dmr
model: huggingface.co/unsloth/qwen3-coder-30b-a3b-instruct-gguf:Q3_K_M
temperature: 0.6
top_p: 0.8
presence_penalty: 0.0
max_tokens: 32768
provider_opts:
runtime_flags: ["--context_size=65536"]
top_k: 20
repetition_penalty: 1.05Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
kind/bugSomething isn't workingSomething isn't working