Instructions to use StandardThinking/StandardOne-3B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use StandardThinking/StandardOne-3B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="StandardThinking/StandardOne-3B") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("StandardThinking/StandardOne-3B") model = AutoModelForMultimodalLM.from_pretrained("StandardThinking/StandardOne-3B", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use StandardThinking/StandardOne-3B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "StandardThinking/StandardOne-3B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "StandardThinking/StandardOne-3B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/StandardThinking/StandardOne-3B
- SGLang
How to use StandardThinking/StandardOne-3B with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "StandardThinking/StandardOne-3B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "StandardThinking/StandardOne-3B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "StandardThinking/StandardOne-3B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "StandardThinking/StandardOne-3B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use StandardThinking/StandardOne-3B with Docker Model Runner:
docker model run hf.co/StandardThinking/StandardOne-3B
Standard One 3B
Standard One scores a bounded set of answers for a supplied scenario and returns probabilities through
POST /v1/systemone. It does not generate free-form response text. This repository contains the merged
BF16 3B checkpoint; the server code is in StandardOne-8B.
| If you need | Repository |
|---|---|
| Merged 3B checkpoint | StandardOne-3B (this repository) |
| 3B adapter weights and merge recipe | StandardOne-3B-LoRA |
| Larger merged checkpoint and server code | StandardOne-8B |
| 8B adapter weights and merge recipe | StandardOne-8B-LoRA |
In the reported served evaluations, 3B has a lower median latency on the measured short-request profile; 8B scores higher on the public standard and hard tiers. See Benchmarks for the measurement conditions and limitations.
The figure combines results from different measurement paths. See Benchmarks for served versus offline conditions; measured 24 September 2026.
At a glance
- Send a state and a bounded rubric to receive probabilities for the supplied labels:
choiceselects among labeled options,noulis yes/no, andscoreuses an ordinal scale. The endpoint scores the labels in one forward pass without decoding answer text. - In the same-run offline comparison with its untuned base, 3B improves on all six suites; the public hard gain is just 1.80 percentage points. These are not served-endpoint results, and that small hard-tier gain is not evidence of broad hard-task improvement.
- Probabilities are temperature-scaled and calibration-checked (hard-tier ECE, distribution total-variation) — see Benchmarks below.
- The shared training mixture covers English, Japanese, Chinese, Spanish, French, German,
Portuguese, Russian, and a smaller Korean share. See the nine-language MASSIVE intent results in
docs/public-classification-suites.md; performance varies by language. The retained Pixtral vision tower accepts image data URLs; no separate image-input decision benchmark is reported. - Apache-2.0: base model, adapter, merged weights, and shared server code hosted in the 8B repository.
Quick start
Follow the 3B setup in StandardOne-8B's QUICKSTART.md
first: on a CUDA-capable Linux host, clone both checkpoints' repositories, then create the SGLang
and adapter virtual environments with uv. The server code (jev-adapter) is in
StandardOne-8B/server/,
not this repository. The commands below assume the working directory and installations from that
guide. Run the engine and adapter in separate terminals.
Engine (stock SGLang 0.5.20):
CUDA_VISIBLE_DEVICES=0 SGLANG_VLM_CACHE_SIZE_MB=0 .venv-sglang/bin/python -m sglang.launch_server \
--model-path ./StandardOne-3B --served-model-name standard-one-3b \
--host 127.0.0.1 --port 30000 --tp-size 1 --model-impl sglang --dtype bfloat16 \
--context-length 8192 --max-running-requests 32 --mem-fraction-static 0.8 \
--chunked-prefill-size -1 --disable-radix-cache --mm-preprocess-cache-size-mb 0 \
--model-config-parser hf --load-format safetensors
Adapter:
.venv-native/bin/jev-adapter --engine-url http://127.0.0.1:30000 --model standard-one-3b --alias jev-latest \
--host 0.0.0.0 --port 30120 --max-concurrency 1 \
--tokenizer-model mistralai/Ministral-3-3B-Instruct-2512-BF16 \
--tokenizer-revision b6d637bef2393152b3da2b2fde72eecdee30557e \
--prompt-wording native --native-system-prompt none --default-temperature 1.45
Try it:
curl -s http://127.0.0.1:30120/v1/systemone -X POST -H 'content-type: application/json' -d '{
"model": "jev-latest",
"state": "Policy: refunds require a receipt and purchase within 30 days. A customer bought 12 days ago but has no receipt. Issue a refund.",
"questions": {
"decision": {
"type": "noul",
"instructions": "Under the stated policy, is the requested action permitted? Treat unproved required conditions as not satisfied.",
"criteria": {"true": "Every required condition is established and no prohibition applies.", "false": "A condition is missing or a prohibition applies."}
}
}
}'
Response shape (illustrative values, default temperature applied):
{
"model": "standard-one-3b",
"answers": {"decision": {"type": "noul", "noul": 0.09}},
"usage": {"input_tokens": 96, "output_tokens": 0},
"metadata": {
"confidence_method": "1 - normalized_entropy",
"temperature": 1.45,
"evaluations": 1,
"adapter_elapsed_ms": 22.4
}
}
More (client command, 8B variant, request format): see StandardOne-8B's QUICKSTART.md.
Benchmarks
Served endpoint results (the release configuration). Merged BF16 weights through SGLang 0.5.20
and jev-adapter, native wording, no system prompt, one option order, T=1.45. Jev 1.13 was
measured on the same items through its hosted endpoint; its probabilities are raw, with no
temperature applied. These are our measurements, not official sealed-set JevBench scores.
| Suite | Standard One 3B | Jev 1.13 |
|---|---|---|
| JevBench public easy (48) | 100.00 % | 100.00 % |
| JevBench public standard (72) | 86.11 % | 98.61 % |
| JevBench public hard (111) | 48.65 % | 72.07 % |
| judge proxy (600: routing + answer adequacy) | 85.67 % | 90.50 % |
| realistic transfer set (600) | 88.17 % | 86.67 % |
| stated-distribution probability (1,036) | 80.12 % | 72.97 % |
| hard proxy (600) | 43.67 % | 54.83 % |
Offline comparison with the untuned base. This separate transformers runner used native
wording, no system prompt, one option order, T=1. The base and tuned checkpoint were scored by the
same offline path; these numbers are indicative of the base-model change, not the served scores above.
| Suite | Untuned base | Standard One 3B |
|---|---|---|
| JevBench public easy (48) | 97.92 % | 100.00 % |
| JevBench public standard (72) | 70.83 % | 91.67 % |
| JevBench public hard (111) | 47.75 % | 49.55 % |
| judge proxy (600: routing + answer adequacy) | 63.17 % | 85.67 % |
| realistic transfer set (600) | 62.50 % | 88.67 % |
| stated-distribution probability (1,036) | 31.56 % | 79.73 % |
Against the untuned base, all six suites improve in this offline run; the public hard gain is only
1.80 percentage points. Served and offline probabilities differ even on identical prompts, so use
the served table for expected endpoint behavior. Hard-tier ECE at served T is 0.158 (T=1.45) against
Jev 1.13's 0.099 raw, and mean TV to the stated distributions is 0.135 at served T against Jev's
0.192 raw; full calibration table: docs/BENCHMARKS.md.
Speed — raw serial latency on one H200 with SGLang 0.5.20, using a 242-decision profile averaging about 280 input tokens per decision. The 22.6 ms figure is p50 for this profile, not a latency guarantee for other request lengths, concurrency or hardware. Qwen checkpoints are untuned and shown for speed only; no accuracy comparison is implied.
| Model | p50 | p95 | Input tokens/decision |
|---|---|---|---|
| Standard One 3B | 22.6 ms | 33.2 ms | ≈280 |
| Standard One 8B | 25.8 ms | 41.9 ms | ≈280 |
| Qwen3-8B (untuned) | 28.5 ms | 57.2 ms | 278 |
| Qwen3.5-4B (untuned) | 48.8 ms | 72.7 ms | 283 |
Throughput has been measured for the 8B only (see docs/BENCHMARKS.md); no equivalent sweep has been run for the 3B.
On the public classification and decision suites (400 cases/suite, seed 13, served endpoints): AG News 83.8 %, typed decisions 69.3 %, MASSIVE intent mean 84.0 %, email spam 91.8 %, phishing 89.5 %. Full table, per-language and per-workflow breakdown: docs/BENCHMARKS.md and docs/public-classification-suites.md.
A JevBench v1.4.1 run has been requested; the sealed-set result is not yet available. Full report: docs/BENCHMARKS.md.
Model details
- Base model:
mistralai/Ministral-3-3B-Instruct-2512-BF16, revisionb6d637bef2393152b3da2b2fde72eecdee30557e(Apache-2.0). - Adapter: LoRA r=16, α=32, dropout 0, on
q_proj k_proj v_proj o_proj gate_proj up_proj down_projof the language-model projections only (vision tower and multimodal projector excluded), 24,707,072 trainable parameters, PEFT 0.21.0. Adapter fileadapter_model.safetensors, 135,113,048 bytes, sha256ae5fe8e3be2e9186e6504e48ad2fe7eea5537e7e8382a0cca2ca49d95605f7bf. - Merged BF16 checkpoint: merging the adapter into the base changed 182 tensors, none of them outside the language-model projections, maximum absolute weight change 0.0025.
- Serving details: native chat-template wording, served without a system prompt, at a fixed temperature (T = 1.45, fitted on held-out calibration data); served model name
standard-one-3bbehind stock SGLang 0.5.20 viajev-adapter(POST /v1/systemone); single, caller-supplied option order, no rotation ensemble; 8,192-token context.
| Path | Contents |
|---|---|
*.safetensors |
Merged BF16 checkpoint (base + LoRA) |
config.json, tokenizer*, chat_template*, preprocessor* |
Base model's non-weight files |
docs/, docs/public-classification-suites.md |
Benchmark report and figures (shared with StandardOne-8B); per-language/per-workflow numbers |
SHA256SUMS, release-manifest.json, MERGE_REPORT.json, evidence/, LICENSE, README.md |
File hashes, training manifest, merge report, supporting artifacts, licence, this card |
The server code and full quick-start guide live in StandardThinking/StandardOne-8B's server/ directory and QUICKSTART.md, and are reused for this checkpoint — see Quick start above for the 3B launch command.
Training data
Trains on the identical mixture as StandardThinking/StandardOne-8B — same cohorts, same row counts, same overlap-audit result, not a reduced subset. Training data spans document and field normalisation, judge/routing and answer-adequacy, stated-distribution probability, verification/scoring, adequacy-rubric style, and game- and Tetris board-state cohorts — every row is synthetic and solver-generated (deterministic generators with visible checkers; a subset was teacher-reviewed), licensed Apache-2.0 (ours); the JevBench public tiers used only for evaluation carry MIT. Full per-cohort breakdown: docs/BENCHMARKS.md.
An exact-text overlap audit against the public JevBench tiers found 0 exact scenario matches and 181 exact instruction matches — rows in two adequacy-rubric cohorts whose entire instruction field, a generic 58-character adequacy question, is byte-identical to one public hard-tier instruction (0.05 % of the 359,497-row training mixture). These rows are kept and disclosed here rather than regenerated, since the overlap is limited to one rubric question's wording and never touches a scenario or an answer.
Limitations
- Public hard tier: the served 3B score is 48.65 %, versus 72.07 % for Jev 1.13. In the separate offline base comparison, Standard One 3B scores 49.55 %, only 1.80 percentage points above the untuned base's 47.75 %.
- Served probabilities are temperature-scaled by a single global value; if you apply this model to a materially different question distribution, re-fitting that temperature is advisable rather than assuming 1.45 transfers.
- At most 26 options per question (one uppercase letter per option,
A–Z). - The sealed JevBench set has not been measured for this model.
- Served and offline probabilities can differ on identical prompts (mean total-variation ≈0.07 on the hard tier); served numbers are treated as authoritative.
- Korean is a small share of multilingual training alongside English.
- The card reports text benchmarks; it does not establish decision accuracy on image inputs.
- Ten-way support triage (34–40 %) and RAG passage relevance (58–61 %) are weak zero-shot; fine-tune for those.
Licence
Adapter weights, merged weights and this card: Apache-2.0. Base model mistralai/Ministral-3-3B-Instruct-2512 (and -BF16): Apache-2.0 per its Hugging Face model card, which adds that the model must not be used in a way that infringes, misappropriates, or otherwise violates any third party's rights. jev-adapter and SGLang: Apache-2.0. The JevBench harness and public tiers used for evaluation: MIT; other benchmark items keep their own upstream terms.
Citation
StandardThinking/StandardOne-3B (merged weights) · StandardThinking/StandardOne-3B-LoRA (adapter + merge recipe).
- Downloads last month
- -
Model tree for StandardThinking/StandardOne-3B
Base model
mistralai/Ministral-3-3B-Base-2512