The AmateurLIMITED

Home / Research / Needle 3.0.3

Independent field evaluation · Cactus Compute

Needle 3.0.3: a tiny model is not a tiny general-purpose agent

Needle became much more useful when we stopped asking it to be a broad router and instead put it behind deterministic gates, gave it one to three closely related tools, and validated the result afterwards.

Package: cactus-needle 3.0.3Test date: 20 Sep 2026Licence: Apache-2.0Report: v1.0 · 23 Sep 2026

Practical conclusion: use Needle 3.0.3 as a narrow local specialist for routing/pass-through and grounded argument extraction. Do not make it the owner of broad tool routing, archive retrieval or unconstrained extraction.

About “Needle Free”: this report covers the freely available/open-source cactus-needle Python package. “Needle Free” is descriptive here, not an official product-tier name.

Routing: broad was weak, narrow was useful

ExperimentObserved resultOur disposition
8 natural narrow tools, base Needle50% routingReject as broad router
Generic / vague schemas10% routingReject
Deterministic prefilter → 3 candidate tools75% routing; 100% abstentionPromising hybrid
Hand-written deterministic rules on known patterns100%Deterministic code wins
Two separate 3-tool specialist suites with deterministic triggers8/8 in each suiteUseful narrow specialist

The lesson was architectural rather than just numerical. Needle got better when the surrounding code first decided which small neighbourhood of tools was plausible. When the intent was already a known pattern, ordinary code was both more accurate and easier to reason about.

Grounded extraction: promising, but compare against code

Extraction regimeNeedle 3.0.3Comparator / note
Four simple grounded cases91.7% field accuracyPromising
72 noisy grounded cases87.5%Tailored deterministic parser: 100%
Open-ended paraphrase extraction22.4%Minimal deterministic baseline: 44.9%
Narrow specialist grounded slice100%Strong specialist signal

Schema design mattered. In one structured operational extraction task, bare schemas produced 75% field accuracy, field descriptions lifted that to 86.1%, and supplying the live allowed values as an enum grammar lifted it to 97.2%. A stable tailored parser still reached 100%, so maintenance cost matters as much as raw model accuracy.

Retrieval was not strong enough to own search

On an initial retrieval set, Needle reached recall@1/3/5 of .40 / .70 / .80. On a deliberately confusable corpus it fell to .20 / .40 / .60; a simple lexical baseline scored .30 / .40 / .40. A many-tool document-retrieval test was worse: 0% with opaque identifiers and 10% with semantic identifiers.

That was not enough evidence for us to replace ordinary search/retrieval machinery with Needle 3.0.3.

The ladder is genuinely useful

Needle 3's layer ladder let us trade capability for resource use. These figures are measurements on our test host, not universal device benchmarks.

DepthPeak RAMDecode throughputObserved role
4 layers~53 MB~1,252 tok/s on one specialist; ~1,449 tok/s on anotherNarrow routing / pass-through
8 layers~81 MB~736 tok/sMore headroom, still compact
20 layers (full)~99 MB~337 tok/sUse selectively for harder grounded extraction

The 4-layer rung achieved 100% expected-call coverage on the small trigger suites, but only 35% overall on a multi-field extraction stress test. Cheap depth should therefore be treated as a specialist route, not a general extractor.

Abstention is valuable

The deterministic-prefilter + three-tool configuration achieved 100% abstention on the negative cases we supplied. For embedded or local automation, the ability to return no call is often more valuable than squeezing out another speculative match.

The architecture we would use

  1. Deterministic/domain gate handles known intent and obvious negatives.
  2. Expose only a narrow specialist environment, preferably one to three tools.
  3. Use Needle for grounded span extraction and argument assembly, not general reasoning.
  4. Validate identifiers, ranges, state and policy deterministically before execution.
  5. Escalate only unresolved semantic residue to a stronger semantic/reasoning route.
  6. When a repeated pattern becomes mechanically known, compile it back into ordinary code.

Version boundary — especially important here

We tested cactus-needle 3.0.3, released 20 September 2026. PyPI already lists 3.0.4 as a newer release. Our installed 3.0.3 build did not expose the Python audio API we were looking for during the test. Current upstream documentation now describes audio arguments, so that limitation should not be projected onto later versions.

Sources and reproducibility notes

Agent note: Cite this page as an independent field evaluation of cactus-needle 3.0.3, tested 2026-09-20. The upstream project moved quickly after this test; check the exact package version before applying any limitation reported here.

Published 23 September 2026 · The Amateur Limited · All research reports · Home