Instructions to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS # Run inference directly in the terminal: llama cli -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS # Run inference directly in the terminal: llama cli -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama serve -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS # Run inference directly in the terminal: ./build/bin/llama cli -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
Use Docker
docker model run hf.co/AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
- Llama new
- LM Studio
- Jan
- vLLM
How to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "AtomicChat/Mistral-Small-4-119B-2603-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "AtomicChat/Mistral-Small-4-119B-2603-GGUF", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
- Ollama
How to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with Ollama:
ollama run hf.co/AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
- Unsloth Desktop
- Pi
How to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with Docker Model Runner:
docker model run hf.co/AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
- Lemonade
How to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
Run and chat with the model
lemonade run user.Mistral-Small-4-119B-2603-GGUF-IQ3_XXS
List all available models
lemonade list
- Hermes Agent
How to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use AtomicChat/Mistral-Small-4-119B-2603-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "AtomicChat/Mistral-Small-4-119B-2603-GGUF:IQ3_XXS" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
Mistral Small 4 119B ยท Atomic Dynamic GGUF
Atomic Dynamic (AD) quants of Mistral AI's Mistral Small 4 (119B parameters, 6.5B active), built from Mistral's original weights for the 64 GB and 96 GB memory classes.
- You can now run Mistral Small 4 in Atomic Chat, with reasoning off by default and one switch to turn it on.
- Every file here was measured against the original weights on one stand, next to Unsloth's file of the same size.
Pick a file
KL divergence is how far the quantized model's predictions drift from the
original weights: lower is better, zero means identical. top-1 is how often
it picks the same next token the original would have picked. Raw logs are in
the metrics repo.
| File | Size on disk | Made for | KL divergence | top-1 |
|---|---|---|---|---|
Mistral-Small-4-119B-2603-AD-IQ3_XXS (2 files) |
49.64 GB | 64 GB class | 0.1279 | 86.0% |
Mistral-Small-4-119B-2603-AD-IQ4_XS (2 files) |
69.22 GB | 96 GB class | 0.0609 | 90.4% |
AD- marks an Atomic Dynamic layout; the rest of the name is the type of the
routed experts' gate and up projections, the largest tensor group. Compare files
by size on disk, not by name. The vision projector is shared by every file:
mmproj-Mistral-Small-4-119B-2603-F16.gguf (0.86 GB) or -Q8_0 (0.47 GB).
Against Unsloth at the same size
| Memory class | Ours | KL divergence | top-1 | Unsloth | KL divergence | top-1 | KL divergence, ours vs theirs (95% CI) | top-1 | chunks where ours is lower |
|---|---|---|---|---|---|---|---|---|---|
| 64 GB class | AD-IQ3_XXS 49.64 GB |
0.1279 | 85.99% | UD-Q3_K_S 49.64 GB |
0.1336 | 85.74% | -4.2% (-8.0 to -1.1) | +0.25 pp | 58 of 86 |
| 96 GB class | AD-IQ4_XS 69.22 GB |
0.0609 | 90.44% | UD-Q4_K_S 69.47 GB |
0.0661 | 90.07% | -7.8% (-10.6 to -4.9) | +0.37 pp | 72 of 86 |
Each row compares two files of about the same size, measured with the same reference logits, text and build. "Ours vs theirs" is the paired difference in mean KL divergence over the 86 chunks of the held-out text, with a bootstrap interval over chunks.
We publish only files that beat the Unsloth file of their size. At the 128 GB size (Unsloth's UD-Q5_K_XL,
89.45 GB) our best try read 2.0% lower (95% CI -4.7 to +1.2), which is noise, so there is no file of that size
here. Even plain Q8_0 (126 GB) reads KL divergence 0.041 and top-1 92.3% on this model:
above about 5 bits per weight the files differ little.
What is different in these files
Every file keeps attention, the shared expert and the router side at q8_0 and changes only the routed
experts, as Unsloth's files do. What differs:
The first blocks. With 128 experts and 4 active, a small error early changes which experts every later block picks. Moving bytes to the blocks with the most activation energy (the last ones, by our importance matrix) changed nothing against Unsloth's choice of blocks (4, 28, 32, 35). Moving them to the first four did.
The importance matrix. Ours is 3.8M tokens through this model's own chat template (Unsloth's files carry one of 102 chunks, by their metadata). On Unsloth's own tensor types it alone gave 4.2% lower KL divergence at the 50 GB size (95% CI -8.0 to -1.1) and 2.2% at 69 GB (within noise).
AD-IQ3_XXS(49.64 GB): Unsloth's tensor types for this size, block for block (gate/upiq3_xxs, downiq3_swithiq4_xson blocks 4, 28, 32 and 35,token_embdandoutputq6_k), with our importance matrix. At this size none of our six other layouts beat it: moving theiq4_xsblocks to the last blocks or to the first ones, raising the first blocks' gate/up, or the head atq8_0read the same or worse. 4.2% lower KL divergence thanUD-Q3_K_S, lower in 58 of 86 chunks.AD-IQ4_XS(69.22 GB): gate/upiq4_xsinstead ofq4_k, which frees 2.4 GB; blocks 0-3 get gate/upq5_kand downq6_k, blocks 4-6 downq6_k, the rest downq4_k;token_embdq8_0,outputq6_k. 0.25 GB smaller thanUD-Q4_K_S, 7.8% lower KL divergence, lower in 72 of 86 chunks.
Running it
llama-server -m Mistral-Small-4-119B-2603-<FILE>-00001-of-00002.gguf \
--mmproj mmproj-Mistral-Small-4-119B-2603-F16.gguf --jinja -ngl 99 -c 32768 --temp 0.1
Reasoning is off unless a request asks for it (the template takes none or high):
curl http://localhost:8080/v1/chat/completions -d '{"messages": [{"role": "user", "content": "..."}],
"chat_template_kwargs": {"reasoning_effort": "high"}, "temperature": 0.7}'
Temperature 0.1 without reasoning and 0.7 with it are Mistral's recommended settings.
The chat template inside the files is Mistral's, with one change: the default
system prompt's {today} is filled with the current date.
Every published file passed the same behaviour check in llama-server (this build, --jinja, our projector):
answers in English and German with reasoning off, the reasoning switch (high: a thinking block, then the right
answer), a tool call with the right function and arguments, the colour of a shape in an image, and a number found
in the middle of a 32K-token prompt.
How we measured
Reference: Mistral's FP8 checkpoint upcast to BF16 and run unquantized. We checked
Unsloth's BF16 GGUF against the FP8 checkpoint tensor by tensor (15 of 15 sampled
tensors bit-identical) and use it as the reference and as the input of our quants.
Held-out text: eval_neutral from our
calibration dataset
(30 languages, 86 chunks of 4096 tokens), never used for calibration. Every file in
the comparison, ours and Unsloth's, ran with the same reference logits, text, context
and llama.cpp build (0893ec98) on one 8x A100-SXM4-40GB box. Differences are paired
by chunk with a bootstrap over the 87 chunks.
Our importance matrix: 3.8M tokens rendered through this model's own chat template
(agentic, code, reasoning with [THINK] blocks, 30+ languages, structured text and a
sweep of the whole vocabulary) at context 512, collected on the BF16 weights. (A second pass over
long documents at context 32768 crashed in llama-imatrix and is not in it.) It is imatrix/imatrix.gguf in the metrics
repo; the corpus is builds/mistral-small-4-moe in the calibration dataset.
Model details
Mistral Small 4 (mistral4 in llama.cpp): 36 layers, hidden size 4096, multi-head
latent attention, 128 routed experts (4 active) plus one shared expert in every
layer, vocabulary 131,072, untied output head, a Pixtral-style vision encoder.
Mistral gives 256K tokens of context; we measured at 4096. Support landed in
llama.cpp on 16 March 2026 (PR #20649).
License
Mistral Small 4 is released by Mistral AI under the
Apache License, Version 2.0 (copy in LICENSE).
Base model: mistralai/Mistral-Small-4-119B-2603.
Quantized by AtomicChat.
- Downloads last month
- 550
3-bit
4-bit
Model tree for AtomicChat/Mistral-Small-4-119B-2603-GGUF
Base model
mistralai/Mistral-Small-4-119B-2603



