FEATURE GUIDE · LOCAL MCP
Free Local NLI Decisions for Coding Agents
Run bounded zero-shot text classification for coding-agent decisions with a free, optional Apache-2.0 local model and no hosted inference account.
semantic-nli is an optional Transformers.js provider for Agent Decision Kit's typed Choice, Score, and yes/no requests. It runs the Xenova export of nli-deberta-v3-small on the selected local device. The default remains the much smaller semantic-local MiniLM embedding provider, so existing browser decisions keep their faster startup and inference path unless you explicitly change the provider.
HOW IT WORKS
From current state to a bounded action
- Set AGENT_DECISION_PROVIDER=semantic-nli in the MCP server environment; no API key or remote inference endpoint is required.
- First use downloads about 181 MB of model files from Hugging Face. The upstream cross-encoder/nli-deberta-v3-small model card lists Apache-2.0. Later inference runs locally from the cache; the download itself needs network access.
- NLI compares the supplied context and question with each caller-provided answer label. The provider accepts at most 24 candidate labels across one request; wider requests fall back to semantic-local and identify that provider in the returned result.
- For ambiguous browser controls, this local provider may rank the bounded visible candidates without enabling remote browser-context sharing. Unique deterministic matches still bypass model inference, and uncertain NLI choices remain unselected for the agent to review.
- A CPU comparison on Windows 10 with a Ryzen 5 5600H measured warm p95 values of 79–84 ms over three 30-case fixtures after the model cache existed. First measured calls took 860–885 ms including pipeline initialization. These are provider-only sample measurements, not end-to-end browser latency or a speed guarantee.
- The small project-authored fixtures produced mixed quality results. NLI improved yes/no accuracy in all three comparisons, while Choice accuracy fell on the confirmation fixture; ordinal Score error improved on two fixtures and worsened on the confirmation fixture. Open the raw reports and use your own labels before setting decision thresholds.
LIMITS TO KEEP IN VIEW
This model is an optional classifier, not a general chat or reasoning model. The fixtures are small and written for this project; the original and validation cases informed model selection, and the confirmation set was run once after the provider setup was frozen. None establishes broad quality or Jev parity. Maximum probabilities are explicitly uncalibrated; keep approval checks for sensitive browser actions and validate decisions on independent, task-specific examples.