Instructions to use majentik/gpt-oss-120b-RotorQuant-MLX-2bit with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use majentik/gpt-oss-120b-RotorQuant-MLX-2bit with MLX:
# Make sure mlx-lm is installed # pip install --upgrade mlx-lm # if on a CUDA device, also pip install mlx[cuda] # Generate text with mlx-lm from mlx_lm import load, generate model, tokenizer = load("majentik/gpt-oss-120b-RotorQuant-MLX-2bit") prompt = "Once upon a time in" text = generate(model, tokenizer, prompt=prompt, verbose=True) - Notebooks
- Google Colab
- Kaggle
- Local Apps
- LM Studio
- MLX LM
How to use majentik/gpt-oss-120b-RotorQuant-MLX-2bit with MLX LM:
Generate or start a chat session
# Install MLX LM uv tool install mlx-lm # Generate some text mlx_lm.generate --model "majentik/gpt-oss-120b-RotorQuant-MLX-2bit" --prompt "Once upon a time"
GPT-OSS-120B - RotorQuant MLX 2-bit
2-bit weight-quantized MLX version of openai/gpt-oss-120b with RotorQuant KV-cache quantization. Optimized for Apple Silicon inference via the MLX framework. The smallest variant with RotorQuant's superior KV-cache throughput -- enables GPT-OSS-120B to fit on more accessible Mac hardware. GPT-OSS-120B is OpenAI's flagship open-weights Mixture-of-Experts model (Apache 2.0), approaching o4-mini quality for reasoning tasks.
Approximate model size: ~30 GB
Model Specifications
| Property | Value |
|---|---|
| Base Model | openai/gpt-oss-120b |
| Parameters | 120 billion (MoE) |
| Architecture | Mixture-of-Experts (MoE) Transformer |
| License | Apache 2.0 (commercial use OK) |
| Weight Quantization | 2-bit (~30 GB) |
| KV-Cache Quantization | RotorQuant |
| Framework | MLX (Apple Silicon) |
Quickstart
from mlx_lm import load, generate
from rotorquant import IsoQuantCache
model, tokenizer = load("majentik/gpt-oss-120b-RotorQuant-MLX-2bit")
prompt = "Explain the theory of relativity."
response = generate(model, tokenizer, prompt=prompt, max_tokens=512)
print(response)
What is RotorQuant?
RotorQuant applies block-diagonal rotations (Clifford algebra) for KV cache compression. Combined with aggressive 2-bit weight quantization in MLX, this produces the smallest possible footprint for GPT-OSS-120B while retaining RotorQuant's fast KV-cache throughput.
Key advantages over TurboQuant:
- 5.3x faster prefill
- 28% faster decode
- Equivalent memory savings
KV-Cache Quantization Comparison
| Method | Prefill Speed | Decode Speed | Memory Savings | Reference |
|---|---|---|---|---|
| TurboQuant | 1x (baseline) | 1x (baseline) | High | arXiv: 2504.19874 |
| RotorQuant | 5.3x faster | 28% faster | High | GitHub |
Memory Estimates (GPT-OSS-120B)
| Precision | Approximate Size | MLX Variant |
|---|---|---|
| BF16 (original) | ~240 GB | -- |
| 8-bit quantized | ~120 GB | RotorQuant-MLX-8bit |
| 4-bit quantized | ~65 GB | RotorQuant-MLX-4bit |
| 2-bit quantized | ~30 GB | This model |
Hardware Requirements
This model requires approximately 30 GB of unified memory. Recommended hardware:
- Apple M1 Max (32 GB+)
- Apple M2 Max (32 GB+)
- Apple M3 Max (36 GB+)
- Apple M4 Max (36 GB+)
- Any Apple Silicon Mac with 36 GB+ unified memory
See Also
- openai/gpt-oss-120b -- Base model
- majentik/gpt-oss-120b-RotorQuant -- RotorQuant KV-cache only (transformers)
- majentik/gpt-oss-120b-RotorQuant-MLX-8bit -- MLX 8-bit variant
- majentik/gpt-oss-120b-RotorQuant-MLX-4bit -- MLX 4-bit variant
- majentik/gpt-oss-120b-TurboQuant-MLX-2bit -- TurboQuant MLX 2-bit variant
- RotorQuant GitHub
- MLX Framework
Quant trade-off (MLX lane)
| Bits | Approx size | Use case | Recommendation |
|---|---|---|---|
| 2-bit | ~31 GB | Aggressive quantization | Very low-RAM Macs |
| 3-bit | ~43 GB | Lossy but small | Low-RAM Macs |
| 4-bit | ~50 GB | Balanced default | Recommended for most Macs |
| 5-bit | ~60 GB | Higher fidelity | Quality-sensitive |
| 6-bit | ~72 GB | Approaching FP16 quality | High-fidelity |
| 8-bit | ~91 GB | Near-lossless reference | Fidelity-critical work |
(Current variant โ 2bit โ is bolded.)
Variants in this family
(Showing 14 sibling variants under majentik/gpt-oss-120b-*. The current variant โ RotorQuant-MLX-2bit โ is bolded.)
| Variant | Runtime | Approx size | Use case |
|---|---|---|---|
| RotorQuant | runtime modifier | n/a | KV-cache root (weight-agnostic) |
| RotorQuant-GGUF-IQ4_XS | llama.cpp | ~103 GB | Lossy 4-bit, low-RAM CPU/edge |
| RotorQuant-GGUF-Q2_K | llama.cpp | ~72 GB | Lossy, low-RAM CPU/edge |
| RotorQuant-GGUF-Q3_K_M | llama.cpp | ~94 GB | Smaller 3-bit, CPU-friendly |
| RotorQuant-GGUF-Q4_K_M | llama.cpp | ~132 GB | Balanced default |
| RotorQuant-GGUF-Q5_K_M | llama.cpp | ~158 GB | Higher fidelity, more RAM |
| RotorQuant-GGUF-Q8_0 | llama.cpp | ~252 GB | Near-lossless reference |
| RotorQuant-MLX-2bit | mlx-lm | ~38 GB | Apple Silicon, smallest |
| RotorQuant-MLX-4bit | mlx-lm | ~74 GB | Apple Silicon balanced |
| RotorQuant-MLX-8bit | mlx-lm | ~142 GB | Apple Silicon reference |
| TurboQuant | runtime modifier | n/a | KV-cache root (weight-agnostic) |
| TurboQuant-MLX-2bit | mlx-lm | ~38 GB | Apple Silicon, smallest |
| TurboQuant-MLX-4bit | mlx-lm | ~74 GB | Apple Silicon balanced |
| TurboQuant-MLX-8bit | mlx-lm | ~142 GB | Apple Silicon reference |
Quantized
Model tree for majentik/gpt-oss-120b-RotorQuant-MLX-2bit
Base model
openai/gpt-oss-120b