CoolFace
Modelpublic

llm-semantic-router/Decision-1.0-Nox-4B

sourceHugging Faceapache-2.0updated 2d agoView on Hugging Face
10likes
Model Card

[image]

Decision-1.0-Nox-4B

Nox, Latin for night.

Give Nox a state, questions and possible answers. It returns typed decisions and probabilities, with labels defined at runtime.

Decision family

TypeUse it forOutput
ChoiceRoute a request or choose among 2–255 actions.Selected ID + distribution
NoulCheck a condition against supplied evidence.P(true)
ScoreApply 2–10 ordered rubric descriptions.Expected index + distribution

Measured capability

73.09% weighted accuracy across 3,766 decisions and 54 tasks: +2.99 points over Kev-4B on the same benchmark.

ModelSizeDecisionsCompositionReadingInferenceTransferOverall
Nox-4B4B83.0051.7979.0686.2569.6073.09
Lux-9B9B84.3852.7590.1691.4677.7277.40
Kev-9B9B76.7545.7586.7283.5479.2571.89
Kev-4B4B71.9048.5481.8884.5876.1070.09
Qwen3.5-9B9B73.9144.6289.8479.5873.2369.73
Decider2B64.0146.5892.0384.3869.3167.71
Qwen3.5-4B4B69.8943.3387.9779.7968.8367.29
Sol-2B2B73.7546.0876.5684.1757.0766.32
Eos-0.8B0.8B65.9446.0470.3181.6752.0161.89
Kev-0.8B0.8B60.1442.2967.8168.7561.1958.28
Qwen3.5-2B2B57.1239.0073.7572.2956.3157.24
Kai-0.6B0.6B57.9640.8354.6969.7948.3753.52
Laya · English0.421B56.5435.3351.4163.7553.0651.03
Laya · Multilingual0.322B47.2538.9250.7857.2947.1347.19
Jev—79.1066.3894.5389.7987.1981.05

Accuracy (%). Overall weights: Decisions 30%, Composition 25%, Reading 15%, Inference 15%, Transfer 15%. These outcome-informed product-priority weights were chosen after observing results; reweighting is not a training improvement. Bold marks Decision-family cells above every external open or untuned reference for that metric, excluding Jev and the other Decision models.

[image]

[image]

All 54 tasks · Order, missing-evidence and calibration diagnostics · Methods and uncertainty

More questions, one request

[image]

Distinct Choice questions at a fixed 499 input tokens per question. Thirty measurements per point across six independently loaded processes on an otherwise idle AMD gfx942 GPU. Python latency includes tokenization and inference; loading and network are excluded. These measurements precede null-description normalization and use explicit descriptions. p50, p95 and measurement scope.

Use Nox-4B

Use the official TypeSafe Python SDK with your SystemOne-compatible endpoint, configured to serve Decision-1.0-Nox-4B. Replace the example URL and API key with your own.

bash
pip install typesafe-sdk
python
from typesafe_sdk import Choice, Noul, TypeSafeClient

with TypeSafeClient(
    api_key="YOUR_ENDPOINT_API_KEY",
    base_url="https://your-decision-endpoint.example",
    model="Decision-1.0-Nox-4B",
) as client:
    result = client.system_one(
        state="Customer reports a duplicate charge and asks for a refund.",
        questions={
            "route": Choice(
                instructions="Which team should handle this request?",
                criteria={"billing": "Payments and refunds", "technical": "Product faults"},
            ),
            "refund_requested": Noul(instructions="Did the customer request a refund?"),
        },
    )
    print(result.choices["route"].choice)
    print(result.nouls["refund_requested"].noul)

The same request with curl:

bash
curl -X POST 'https://your-decision-endpoint.example/v1/systemone' \
  -H 'Authorization: Bearer YOUR_ENDPOINT_API_KEY' \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "model": "Decision-1.0-Nox-4B",
  "state": "Customer reports a duplicate charge and asks for a refund.",
  "questions": {
    "route": {
      "type": "choice",
      "instructions": "Which team should handle this request?",
      "criteria": {
        "billing": "Payments and refunds",
        "technical": "Product faults"
      }
    },
    "refund_requested": {
      "type": "noul",
      "instructions": "Did the customer request a refund?"
    }
  }
}'

Typed request and response guide · Model runtime requirements

Choice candidates with a null description use their ID text, which may increase input tokens.

The complete state, question and candidates must fit 16,384 tokens; overflow is rejected. The bundled normalization profile loads automatically. AMD gfx942 is validated; CPU/MPS are unsupported and NVIDIA is unqualified. Use a fresh Python process when switching profiles.

Architecture

[image]

A causal Qwen3.5 text backbone combines gated linear and full attention. A shared candidate head reads candidate endpoints and the final query vector. Each question uses one forward pass; questions run independently in batches of eight.

Candidate head · Vector architecture · Inference code

Adapted from Qwen3.5-4B. It evaluates supplied evidence without live retrieval; confidence does not guarantee correctness. License · Attributions.