Text Generation
Transformers
outlier_150b_rexmoe
mixture-of-experts
Mixture of Experts
ternary
quantized
qwen2.5
outlier
local-llm
on-device
edge-ai
energy-efficient
sparse
overlay
research
apple-silicon
mac
mmlu-verified
custom_code
Eval Results (legacy)
Instructions to use Outlier-Ai/Outlier-150B-V3.2 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Outlier-Ai/Outlier-150B-V3.2 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="Outlier-Ai/Outlier-150B-V3.2", trust_remote_code=True)# Load model directly from transformers import AutoModelForCausalLM model = AutoModelForCausalLM.from_pretrained("Outlier-Ai/Outlier-150B-V3.2", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use Outlier-Ai/Outlier-150B-V3.2 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "Outlier-Ai/Outlier-150B-V3.2" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Outlier-Ai/Outlier-150B-V3.2", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/Outlier-Ai/Outlier-150B-V3.2
- SGLang
How to use Outlier-Ai/Outlier-150B-V3.2 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 "Outlier-Ai/Outlier-150B-V3.2" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Outlier-Ai/Outlier-150B-V3.2", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'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 "Outlier-Ai/Outlier-150B-V3.2" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "Outlier-Ai/Outlier-150B-V3.2", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use Outlier-Ai/Outlier-150B-V3.2 with Docker Model Runner:
docker model run hf.co/Outlier-Ai/Outlier-150B-V3.2
docs(hf): standardize Outlier-150B-V3.2 discoverability metadata + model card
Browse files
README.md
CHANGED
|
@@ -5,101 +5,151 @@ license: apache-2.0
|
|
| 5 |
library_name: transformers
|
| 6 |
pipeline_tag: text-generation
|
| 7 |
base_model: Qwen/Qwen2.5-72B-Instruct
|
|
|
|
| 8 |
tags:
|
| 9 |
-
-
|
|
|
|
|
|
|
|
|
|
| 10 |
- mixture-of-experts
|
| 11 |
- moe
|
|
|
|
|
|
|
| 12 |
- 1.58-bit
|
| 13 |
-
-
|
| 14 |
-
-
|
|
|
|
| 15 |
- qwen2.5
|
| 16 |
-
-
|
| 17 |
-
-
|
| 18 |
-
-
|
| 19 |
-
-
|
|
|
|
|
|
|
| 20 |
- rexmoe
|
| 21 |
-
-
|
| 22 |
-
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 23 |
---
|
| 24 |
-
|
| 25 |
# Outlier-150B-V3.2
|
| 26 |
|
| 27 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 28 |
|
| 29 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 30 |
|
| 31 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
|
| 33 |
-
|
| 34 |
-
|---|---|
|
| 35 |
-
| Base model | `Qwen/Qwen2.5-72B-Instruct` |
|
| 36 |
-
| Architecture | Outlier ReXMoE (cross-layer expert sharing) |
|
| 37 |
-
| Parameters | ~150B effective |
|
| 38 |
-
| Context length | 32,768 tokens |
|
| 39 |
-
| MoE layers | (see config.json) |
|
| 40 |
-
| Unique experts | 88 (shared across 44 routers) |
|
| 41 |
-
| Expert groups | 11 |
|
| 42 |
-
| PSR variants | 4 |
|
| 43 |
-
| Expert quantization | Ternary (int8 + per-row fp16 scale) |
|
| 44 |
-
| **MMLU (full sample, day13)** | **84.46% Β± 0.29%** |
|
| 45 |
|
| 46 |
-
|
|
|
|
|
|
|
| 47 |
|
| 48 |
-
|
| 49 |
-
|---|---|
|
| 50 |
-
| MMLU | **84.46% Β± 0.29%** |
|
| 51 |
-
| Sample size (n) | 14,042 |
|
| 52 |
-
| Stderr | Β±0.0029 |
|
| 53 |
-
| Harness | `lm_eval` 0.4.9.1 |
|
| 54 |
-
| Date measured | 2026-04-14 (Day 13 cluster sprint) |
|
| 55 |
-
| Hardware | 2Γ NVIDIA B200 SXM6 |
|
| 56 |
-
| Source file | `phase8_upgraded_150b_full.json` |
|
| 57 |
-
| Source SHA256 | `5db066e5574e6bc1e3f1dec452098aa6d1be44333e7ea32f9561288babb3b228` |
|
| 58 |
|
| 59 |
-
|
|
|
|
|
|
|
| 60 |
|
| 61 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 62 |
|
| 63 |
-
|
| 64 |
-
|-----|---------|------|
|
| 65 |
-
| Day 12 | `lm_eval` 0.4.11 | 83.16% Β± 0.31% |
|
| 66 |
-
| Day 13 | `lm_eval` 0.4.9.1 | **84.46% Β± 0.29%** |
|
| 67 |
-
| Drift | β | **+1.30pp** |
|
| 68 |
|
| 69 |
-
|
| 70 |
|
| 71 |
-
##
|
| 72 |
|
| 73 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 74 |
|
| 75 |
-
|
| 76 |
|
| 77 |
-
##
|
| 78 |
|
| 79 |
-
|
| 80 |
-
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 81 |
|
| 82 |
-
|
| 83 |
-
model = AutoModelForCausalLM.from_pretrained(
|
| 84 |
-
"Outlier-Ai/Outlier-150B-V3.2",
|
| 85 |
-
trust_remote_code=True,
|
| 86 |
-
torch_dtype="bfloat16",
|
| 87 |
-
device_map="auto", # 150B requires multi-GPU; ~280 GB bf16
|
| 88 |
-
)
|
| 89 |
|
| 90 |
-
|
| 91 |
-
|
| 92 |
-
|
| 93 |
-
|
|
|
|
|
|
|
| 94 |
|
| 95 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 96 |
|
| 97 |
-
##
|
| 98 |
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 102 |
|
| 103 |
-
##
|
| 104 |
|
| 105 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
library_name: transformers
|
| 6 |
pipeline_tag: text-generation
|
| 7 |
base_model: Qwen/Qwen2.5-72B-Instruct
|
| 8 |
+
base_model_relation: adapter
|
| 9 |
tags:
|
| 10 |
+
- text-generation
|
| 11 |
+
- chat
|
| 12 |
+
- conversational
|
| 13 |
+
- instruct
|
| 14 |
- mixture-of-experts
|
| 15 |
- moe
|
| 16 |
+
- ternary-moe
|
| 17 |
+
- ternary
|
| 18 |
- 1.58-bit
|
| 19 |
+
- ternary-quantized
|
| 20 |
+
- quantized
|
| 21 |
+
- qwen2
|
| 22 |
- qwen2.5
|
| 23 |
+
- safetensors
|
| 24 |
+
- outlier
|
| 25 |
+
- outlier-150b
|
| 26 |
+
- v3.2
|
| 27 |
+
- overlay
|
| 28 |
+
- expert-paging
|
| 29 |
- rexmoe
|
| 30 |
+
- distillation
|
| 31 |
+
- efficient-inference
|
| 32 |
+
- research
|
| 33 |
+
widget:
|
| 34 |
+
- example_title: General knowledge
|
| 35 |
+
messages:
|
| 36 |
+
- role: user
|
| 37 |
+
content: Explain how mixture-of-experts models work in simple terms.
|
| 38 |
+
- example_title: Code
|
| 39 |
+
messages:
|
| 40 |
+
- role: user
|
| 41 |
+
content: Write a Python function that checks if a number is prime.
|
| 42 |
+
- example_title: Reasoning
|
| 43 |
+
messages:
|
| 44 |
+
- role: user
|
| 45 |
+
content: If it takes 5 machines 5 minutes to make 5 widgets, how long would it take 100 machines to make 100 widgets?
|
| 46 |
+
- example_title: Privacy-minded
|
| 47 |
+
messages:
|
| 48 |
+
- role: user
|
| 49 |
+
content: What are practical reasons someone might want to run an LLM locally?
|
| 50 |
---
|
|
|
|
| 51 |
# Outlier-150B-V3.2
|
| 52 |
|
| 53 |
+
Ternary mixture-of-experts overlay on Qwen/Qwen2.5-72B-Instruct. 210B total effective parameters, 150B active per forward pass.
|
| 54 |
+
|
| 55 |
+
## TL;DR
|
| 56 |
+
|
| 57 |
+
- **Architecture:** Outlier ternary MoE overlay on frozen Qwen 2.5 72B base
|
| 58 |
+
- **Parameters:** 210B total, 150B active per forward (sparse routing)
|
| 59 |
+
- **MMLU:** ~83% β `[INCOMPLETE]`
|
| 60 |
+
- **License:** Apache 2.0
|
| 61 |
+
|
| 62 |
+
## Quick start
|
| 63 |
+
|
| 64 |
+
```python
|
| 65 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 66 |
|
| 67 |
+
name = "Outlier-Ai/Outlier-150B-V3.2"
|
| 68 |
+
tok = AutoTokenizer.from_pretrained(name)
|
| 69 |
+
model = AutoModelForCausalLM.from_pretrained(
|
| 70 |
+
name, trust_remote_code=True, torch_dtype="auto"
|
| 71 |
+
)
|
| 72 |
|
| 73 |
+
prompt = tok.apply_chat_template(
|
| 74 |
+
[{"role": "user", "content": "What is the capital of France?"}],
|
| 75 |
+
tokenize=False, add_generation_prompt=True,
|
| 76 |
+
)
|
| 77 |
+
inputs = tok(prompt, return_tensors="pt").to(model.device)
|
| 78 |
+
print(tok.decode(model.generate(**inputs, max_new_tokens=200)[0]))
|
| 79 |
+
```
|
| 80 |
|
| 81 |
+
For consumer Apple Silicon inference use MLX or GGUF tiers:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 82 |
|
| 83 |
+
- [Outlier-Ai/Outlier-Lite-7B-MLX-4bit](https://huggingface.co/Outlier-Ai/Outlier-Lite-7B-MLX-4bit)
|
| 84 |
+
- [Outlier-Ai/Outlier-Compact-14B-MLX-4bit](https://huggingface.co/Outlier-Ai/Outlier-Compact-14B-MLX-4bit)
|
| 85 |
+
- [Outlier-Ai/Outlier-Max-32B-GGUF](https://huggingface.co/Outlier-Ai/Outlier-Max-32B-GGUF)
|
| 86 |
|
| 87 |
+
## Benchmarks
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 88 |
|
| 89 |
+
| Metric | Value | Provenance |
|
| 90 |
+
|---|---|---|
|
| 91 |
+
| MMLU | ~83% | `[INCOMPLETE]` β number exists in on-disk JSON but provenance fields (config.limit, n-samples, model_args, git_hash, lm_eval_version) are stripped. Full-sample re-run queued. |
|
| 92 |
|
| 93 |
+
**Rule 66 provenance labels:**
|
| 94 |
+
- `[VERIFIED]` β full source JSON with `config.limit=None`, n-samples complete, `model_args` present, reproducible from commit SHA.
|
| 95 |
+
- `[INCOMPLETE]` β number exists on disk but provenance fields are stripped; cannot be cited publicly.
|
| 96 |
+
- `[CLAIM]` β historical smoke-test value pending full re-verification on cluster.
|
| 97 |
+
- `[PENDING]` β benchmark scheduled; results expected by a specific date.
|
| 98 |
|
| 99 |
+
## Notes
|
|
|
|
|
|
|
|
|
|
|
|
|
| 100 |
|
| 101 |
+
ReXMoE architecture. Cluster-scale β not intended for consumer hardware.
|
| 102 |
|
| 103 |
+
## Architecture
|
| 104 |
|
| 105 |
+
- **Base backbone:** Qwen/Qwen2.5-72B-Instruct (frozen during distillation)
|
| 106 |
+
- **MoE overlay:** ternary delta experts ({-1, 0, +1} + per-row fp16 scale) with top-K routing
|
| 107 |
+
- **Expert layers:** varies by variant
|
| 108 |
+
- **Experts per layer:** 8 routed + 1 shared
|
| 109 |
+
- **Top-k routing:** 2
|
| 110 |
+
- **Context:** inherits Qwen 2.5's 32,768 tokens
|
| 111 |
+
- **Expert paging:** three-tier memory (SRAM / DRAM / NVMe) on 70B+
|
| 112 |
|
| 113 |
+
Ternary-weight arithmetic ({-1, 0, +1}) reduces a matmul to a stream of additions and subtractions β no multiplications β enabling consumer hardware to run flagship-scale models at usable speeds.
|
| 114 |
|
| 115 |
+
## Patents filed
|
| 116 |
|
| 117 |
+
Three provisional patents filed April 2026 (61 claims total) covering ternary MoE weight composition, expert paging, and specialist merging techniques.
|
|
|
|
| 118 |
|
| 119 |
+
## Known limitations
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 120 |
|
| 121 |
+
- Calibration + full-sample MMLU re-verification is queued for cluster time; numbers labeled `[CLAIM]` below are historical smoke-test values awaiting verification.
|
| 122 |
+
- Outlier's ternary MoE overlay is research-grade β use the consumer tier (Nano / Lite / Compact / Max) for production local-inference.
|
| 123 |
+
- Qwen 2.5 tokenizer + chat template apply; no custom tokenizer.
|
| 124 |
+
- English-tuned. Multilingual performance inherits the base model and is not separately optimized.
|
| 125 |
+
|
| 126 |
+
## See also
|
| 127 |
|
| 128 |
+
- **V3.2 family:**
|
| 129 |
+
- [Outlier-10B-V3.2](https://huggingface.co/Outlier-Ai/Outlier-10B-V3.2)
|
| 130 |
+
- [Outlier-40B-V3.2](https://huggingface.co/Outlier-Ai/Outlier-40B-V3.2) β `[VERIFIED]` MMLU 77.80%
|
| 131 |
+
- [Outlier-70B-V3.2](https://huggingface.co/Outlier-Ai/Outlier-70B-V3.2) β `[VERIFIED]` MMLU 81.49%
|
| 132 |
+
- [Outlier-150B-V3.2](https://huggingface.co/Outlier-Ai/Outlier-150B-V3.2)
|
| 133 |
+
- **V3.3 preview:**
|
| 134 |
+
- [Outlier-70B-V3.3](https://huggingface.co/Outlier-Ai/Outlier-70B-V3.3)
|
| 135 |
|
| 136 |
+
## Citation
|
| 137 |
|
| 138 |
+
```bibtex
|
| 139 |
+
@misc{outlier2026,
|
| 140 |
+
author = {Kerr, Matt},
|
| 141 |
+
title = {Outlier: Ternary Mixture-of-Experts for Consumer Hardware},
|
| 142 |
+
year = {2026},
|
| 143 |
+
publisher = {Hugging Face},
|
| 144 |
+
howpublished = {\url{https://huggingface.co/Outlier-Ai}}
|
| 145 |
+
}
|
| 146 |
+
```
|
| 147 |
|
| 148 |
+
## Links
|
| 149 |
|
| 150 |
+
- **Website:** https://outlier.host
|
| 151 |
+
- **GitHub:** https://github.com/Outlier-host/Outlier
|
| 152 |
+
- **All models:** https://huggingface.co/Outlier-Ai
|
| 153 |
+
- **Consumer Edition collection:** https://huggingface.co/collections/Outlier-Ai/outlier-consumer-edition
|
| 154 |
+
- **Server V3.2 collection:** https://huggingface.co/collections/Outlier-Ai/outlier-server-v3-2
|
| 155 |
+
- **Research collection:** https://huggingface.co/collections/Outlier-Ai/outlier-research
|