Model reference · open weights
omnistep-12 is an open-weight language model from sovthpaw. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.
Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.
What it is
| Released by | sovthpaw |
|---|---|
| Type | Language models |
| Task | Omni (any→any) · MoE |
| Parameters (lead) | 10.5B |
| Runs with | transformers |
| Based on | sovthpaw/omnistep-12a3b |
| Released | 2026-06-04 |
| Popularity | 580 downloads / month |
| Licence | Open weights |
About
A multimodal voice-and-music AI, born from generational Darwin family evolution. OmniStep 12A3B is a personal AI companion — a vibe coach that takes notes for you, keeps up the conversation, and plays background music that matches your mood. All the while it self-evolves to become a better assistant to you, via the Darwin Family weight-space recombination methodology (arXiv:2605.14386). Built as a paper-exact 2-parent merge of Qwen2.5-Omni-3B (multimodal) and ACE-Step v1.5 XL SFT 4B (text-to-music).
The text body of the model was produced by a paper-exact Darwin 2-parent weight-space recombination of the Qwen2.5-Omni thinker and the ACE-Step text encoder, with the Architecture Mapper's "skip on dim mismatch" behavior preserving the Omni text body intact across the Qwen2.5/Qwen3 cross-architecture boundary. The diffusion (music) head sits at F16 (unquantized) for maximum audio quality. The transformer (text/multimodal) head is shipped in 4 quantized GGUF deployments (F16, Q8_0, Q4_K_M, Q4_0) for llama.cpp users.
The OmniStep Evolutionary Radio is the operational version of "infinitely generate its own background music" — a 4-loop pipeline (playback + queue fill + GEPA prompt evolution + Darwin weight evolution) wired up in the evolutionary-radio skill.
chill lofi beats, mellow hip-hop, soft piano keys, vinyl crackle, late-night study vibes, 75 bpm, instrumental
🎤 Voice intro (text generated by OmniStep 12A3B, speech by Soprano 80M)
🎵 The track
epic cinematic orchestral soundtrack, sweeping strings, French horns, building tension, Hans Zimmer style, 90 bpm, instrumental
🎤 Voice intro
🎵 The track
heavy dark metal, blast beats, down-tuned 7-string guitars, atmospheric, blackened death metal, 180 bpm, instrumental
🎤 Voice intro
🎵 The track
All in one model. Run it with vllm, llama-server, or the included Python scripts.
The GGUFs are independent files. Download only the one that fits your VRAM — you don't need all of them. Pick from the table below.
| Quant | Size | VRAM | Best for | Download |
|---|---|---|---|---|
| F16 | 6.4GB | 6.4GB | Maximum quality, plenty of VRAM | ⬇ omnistep-12a3b-f16.gguf |
| Q8_0 | 3.4GB | 3.4GB | Near-F16 quality, balanced | ⬇ omnistep-12a3b-q8_0.gguf |
| Q4_K_M | 2.0GB | 2.0GB | Recommended — best size/quality tradeoff | ⬇ omnistep-12a3b-q4_k_m.gguf |
| Q4_0 | 1.9GB | 1.9GB | Smallest, lowest quality | ⬇ omnistep-12a3b-q4_0.gguf |
Run any of them with llama-server (the Omni build of llama.cpp is in the HF model comments / wiki):
llama-server -m omnistep-12a3b-q4_k_m.gguf -ngl 99 --port 8080 --host 0.0.0.0 -c 8192
pip install vllm
vllm serve sovthpaw/omnistep-12a3b \
--max-model-len 32768 \
--gpu-memory-utilization 0.85 \
--trust-remote-code
Then in another terminal:
curl -s http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "sovthpaw/omnistep-12a3b",
"messages": [{"role": "user", "content": "Take a note: I need to follow up with the design team about the Q3 launch."}],
"max_tokens": 200
}'
See vllm Qwen2.5-Omni docs for the full multimodal API.
# Pick your quantization based on VRAM
# F16 = 6.4GB VRAM, best quality
# Q8_0 = 3.4GB VRAM, near-F16 quality
# Q4_K_M = 2.0GB VRAM, recommended
# Q4_0 = 1.9GB VRAM, smallest
llama-server \
-m omnistep-12a3b-q4_k_m.gguf \
-ngl 99 \
--port 8080 \
--host 0.0.0.0 \
-c 8192
curl -s http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "omnistep-12a3b",
"messages": [{"role": "user", "content": "I am coding late, give me a lofi vibe and a note about what I should focus on tomorrow."}],
"max_tokens": 200,
"stream": true
}'
The 4 GGUFs are deployment options — pick whichever fits your hardware. Q4_K_M is the recommended sweet spot.
The repo includes Python scripts that wire everything together for the headline use cases. After cloning:
git clone https://huggingface.co/sovthpaw/omnistep-12a3b
cd omnistep-12a3b
# Start the vllm server (one terminal)
python scripts/run_omnistep_12a3b.py serve
# In another terminal — try the modalities
python scripts/run_omnistep_12a3b.py teFrom the published model card. Full card on the HuggingFace links in the sidebar.
Using it via the API
Once AxForge deploys omnistep-12 for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (omnistep-12 below is illustrative; you get the exact model name on deployment.)
$ curl -sS https://api.axforge.ai/v1/chat/completions \
-H "Authorization: Bearer $AXFORGE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"omnistep-12","messages":[{"role":"user","content":"Hello"}]}'
Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.