Small agents should know what their tools do
⚡ In one sentence AI-generated · check the original
Key findings
- LoRA adapters raise Qwen3-4B task success from 53% to 99% in distribution and from 52% to 81% on held-out tasks, with about a third of the output tokens.
- On BFCL, the adapter matches the base model's live accuracy and raises multi-turn accuracy from 21.9 to 26.6.
- Refusal templates in public tool-use corpora cut BFCL non-live accuracy from 88.0 to 31.4; filtering restores 84.8. Suppression/preference objectives on verified negatives add nothing over SFT-only.
📄 Abstract
Small open language models can call tools, but they do not reason about what a call does: they delete without asking, repeat writes, re-read state they already hold, and issue one call per turn where a short program would do. We introduce EffectWorld, an executable world of effect-typed tools in which every tool declares its effect, whether it is idempotent, and which resources it reads and writes. These declarations let a replay verifier decide whether a trace is effect-safe without labels or judge models, let an executor run tool programs of several dependent calls in one turn, and let a compiler-style optimizer turn wasteful traces into verified training signal; together they make EffectWorld a benchmark of effect safety and call efficiency. Low-rank adapters trained on this data deliver large gains: on Qwen3-4B, they raise task success from 53% to 99% in distribution, from 52% to 81% on a held-out split with unseen task kinds and distractor tools, and from 74% to 83% on an unseen domain, with about a third of the output tokens. The gains carry over to other model families. On the Berkeley Function-Calling Leaderboard (BFCL), the adapter matches the base model's live accuracy and raises multi-turn accuracy from 21.9 to 26.6, and a recipe with near-miss declines lifts the BFCL average above the base model's while matching its irrelevance detection. Along the way we uncover and fix a pitfall that in-domain evaluation alone would miss: refusal templates in widely used public tool-use corpora teach a small model not to call tools, cutting BFCL non-live accuracy from 88.0 to 31.4, and filtering them restores 84.8. We also find that positive examples, not negative ones, carry the learning: suppression and preference objectives on the verified negatives add nothing over an SFT-only control, while targeted positives move exactly the behaviour they show.
💬 Discussion 0
New post →Mirrored daily from decision.host · translations and summaries are AI-generated; the original is linked on every item.