Instructions to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-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 jorge-erdb/gpt-oss-20b-Derestricted-4bit-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 jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL # Run inference directly in the terminal: llama cli -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL # Run inference directly in the terminal: llama cli -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL # Run inference directly in the terminal: ./llama-cli -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL # Run inference directly in the terminal: ./build/bin/llama-cli -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
Use Docker
docker model run hf.co/jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
- LM Studio
- Jan
- vLLM
How to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "jorge-erdb/gpt-oss-20b-Derestricted-4bit-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": "jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
- Ollama
How to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF with Ollama:
ollama run hf.co/jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
- Unsloth Studio
How to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF to start chatting
- Pi
How to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
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": "jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF with Docker Model Runner:
docker model run hf.co/jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
- Lemonade
How to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
Run and chat with the model
lemonade run user.gpt-oss-20b-Derestricted-4bit-GGUF-IQ4_NL
List all available models
lemonade list
- Hermes Agent
How to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-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 jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
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 jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL
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 "jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF:IQ4_NL" \ --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"
gpt-oss-20b-Derestricted-GGUF β 4-bit
4-bit GGUF quantizations of ArliAI/gpt-oss-20b-Derestricted, a Norm-Preserving Biprojected Abliterated version of openai/gpt-oss-20b.
Quantization Details
| Detail | Value |
|---|---|
| Quant types | IQ4_NL, Q4_K_M |
| Quantized by | jorge-erdb |
| Method | llama.cpp with importance matrix |
| Importance matrix | bartowski's imatrix calibration dataset |
| Source model | ArliAI/gpt-oss-20b-Derestricted (BF16) |
| Quant | Best for | Notes |
|---|---|---|
| IQ4_NL | CUDA / CPU | Non-linear, slightly better quality per bit |
| Q4_K_M | CUDA / CPU / Metal | Linear, best Metal compatibility |
Download
pip install -U "huggingface_hub[cli]"
# IQ4_NL (non-linear, best for CUDA/CPU)
huggingface-cli download jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF --include "*IQ4_NL.gguf" --local-dir ./
# Q4_K_M (linear, Metal-friendly)
huggingface-cli download jorge-erdb/gpt-oss-20b-Derestricted-4bit-GGUF --include "*Q4_K_M.gguf" --local-dir ./
Apple Metal Backend Warning
IQ4_NL is a non-linear quantization format. It performs sub-optimally on Apple's Metal backend due to the lack of native support for non-linear dequantization kernels. If you are running on an Apple Silicon Mac with GPU offloading via Metal, you will likely experience:
- Slower inference compared to linear quants of similar size (e.g., Q4_K_M)
- No speed benefit from the ARM weight repacking that IQ4_NL supports on CPU
If you're on Apple Metal, use the Q4_K_M quant from this repo instead. For higher precision options, see ArliAI's repo.
Credits
- Quantization: jorge-erdb
- Importance matrix: bartowski β imatrix calibration dataset
- Derestriction: Arli AI β Norm-Preserving Biprojected Abliteration
- Base model: OpenAI β gpt-oss-20b
Arli AI
gpt-oss-20b-Derestricted
After the initial success of GLM-4.5-Air-Derestricted, we thought it would be interesting to try and Derestrict one of the most famously restrictive model which is gpt-oss-20b.
gpt-oss-20b-Derestricted is a Derestricted version of openai/gpt-oss-20b, created by Arli AI.
Our goal with this release is to provide a version of the model that removed refusal behaviors while maintaining the high-performance reasoning of the original gpt-oss-20b. This is unlike regular abliteration which often inadvertently "lobotomizes" the model.
Methodology: Norm-Preserving Biprojected Abliteration
To achieve this, Arli AI utilized Norm-Preserving Biprojected Abliteration, a refined technique pioneered by Jim Lai (grimjim). You can read the full technical breakdown in this article.
Why this matters:
Standard abliteration works by simply subtracting a "refusal vector" from the model's weights. While this works to uncensor a model, it is mathematically unprincipled. It alters the magnitude (or "loudness") of the neurons, destroying the delicate feature norms the model learned during training. This damage is why many uncensored models suffer from degraded logic or hallucinations.
How Norm-Preserving Biprojected Abliteration fixes it:
This model was modified using a three-step approach that removes refusals without breaking the model's brain:
- Biprojection (Targeting): We refined the refusal direction to ensure it is mathematically orthogonal to "harmless" directions. This ensures that when we cut out the refusal behavior, we do not accidentally cut out healthy, harmless concepts.
- Decomposition: Instead of a raw subtraction, we decomposed the model weights into Magnitude and Direction.
- Norm-Preservation: We removed the refusal component solely from the directional aspect of the weights, then recombined them with their original magnitudes.
The Result:
By preserving the weight norms, we maintain the "importance" structure of the neural network. Benchmarks suggest that this method avoids the "Safety Tax"βnot only effectively removing refusals but potentially improving reasoning capabilities over the baseline, as the model is no longer wasting compute resources on suppressing its own outputs.
In fact, you may find surprising new knowledge and capabilities that the original model does not initially expose.
For gpt-oss-20b, we found that it might still occasionally try and suppress requests but eventually reason that it is unneccesary.
Original model card:
Try gpt-oss Β· Guides Β· Model card Β· OpenAI blog
Welcome to the gpt-oss series, OpenAIβs open-weight models designed for powerful reasoning, agentic tasks, and versatile developer use cases.
Weβre releasing two flavors of these open models:
gpt-oss-120bβ for production, general purpose, high reasoning use cases that fit into a single 80GB GPU (like NVIDIA H100 or AMD MI300X) (117B parameters with 5.1B active parameters)gpt-oss-20bβ for lower latency, and local or specialized use cases (21B parameters with 3.6B active parameters)
Both models were trained on our harmony response format and should only be used with the harmony format as it will not work correctly otherwise.
This model card is dedicated to the smaller
gpt-oss-20bmodel. Check outgpt-oss-120bfor the larger model.
Highlights
- Permissive Apache 2.0 license: Build freely without copyleft restrictions or patent riskβideal for experimentation, customization, and commercial deployment.
- Configurable reasoning effort: Easily adjust the reasoning effort (low, medium, high) based on your specific use case and latency needs.
- Full chain-of-thought: Gain complete access to the modelβs reasoning process, facilitating easier debugging and increased trust in outputs. Itβs not intended to be shown to end users.
- Fine-tunable: Fully customize models to your specific use case through parameter fine-tuning.
- Agentic capabilities: Use the modelsβ native capabilities for function calling, web browsing, Python code execution, and Structured Outputs.
- MXFP4 quantization: The models were post-trained with MXFP4 quantization of the MoE weights, making
gpt-oss-120brun on a single 80GB GPU (like NVIDIA H100 or AMD MI300X) and thegpt-oss-20bmodel run within 16GB of memory. All evals were performed with the same MXFP4 quantization.
Inference examples
Transformers
You can use gpt-oss-120b and gpt-oss-20b with Transformers. If you use the Transformers chat template, it will automatically apply the harmony response format. If you use model.generate directly, you need to apply the harmony format manually using the chat template or use our openai-harmony package.
To get started, install the necessary dependencies to setup your environment:
pip install -U transformers kernels torch
Once, setup you can proceed to run the model by running the snippet below:
from transformers import pipeline
import torch
model_id = "openai/gpt-oss-20b"
pipe = pipeline(
"text-generation",
model=model_id,
torch_dtype="auto",
device_map="auto",
)
messages = [
{"role": "user", "content": "Explain quantum mechanics clearly and concisely."},
]
outputs = pipe(
messages,
max_new_tokens=256,
)
print(outputs[0]["generated_text"][-1])
Alternatively, you can run the model via Transformers Serve to spin up a OpenAI-compatible webserver:
transformers serve
transformers chat localhost:8000 --model-name-or-path openai/gpt-oss-20b
Learn more about how to use gpt-oss with Transformers.
vLLM
vLLM recommends using uv for Python dependency management. You can use vLLM to spin up an OpenAI-compatible webserver. The following command will automatically download the model and start the server.
uv pip install --pre vllm==0.10.1+gptoss \
--extra-index-url https://wheels.vllm.ai/gpt-oss/ \
--extra-index-url https://download.pytorch.org/whl/nightly/cu128 \
--index-strategy unsafe-best-match
vllm serve openai/gpt-oss-20b
Learn more about how to use gpt-oss with vLLM.
PyTorch / Triton
To learn about how to use this model with PyTorch and Triton, check out our reference implementations in the gpt-oss repository.
Ollama
If you are trying to run gpt-oss on consumer hardware, you can use Ollama by running the following commands after installing Ollama.
# gpt-oss-20b
ollama pull gpt-oss:20b
ollama run gpt-oss:20b
Learn more about how to use gpt-oss with Ollama.
LM Studio
If you are using LM Studio you can use the following commands to download.
# gpt-oss-20b
lms get openai/gpt-oss-20b
Check out our awesome list for a broader collection of gpt-oss resources and inference partners.
Download the model
You can download the model weights from the Hugging Face Hub directly from Hugging Face CLI:
# gpt-oss-20b
huggingface-cli download openai/gpt-oss-20b --include "original/*" --local-dir gpt-oss-20b/
pip install gpt-oss
python -m gpt_oss.chat model/
Reasoning levels
You can adjust the reasoning level that suits your task across three levels:
- Low: Fast responses for general dialogue.
- Medium: Balanced speed and detail.
- High: Deep and detailed analysis.
The reasoning level can be set in the system prompts, e.g., "Reasoning: high".
Tool use
The gpt-oss models are excellent for:
- Web browsing (using built-in browsing tools)
- Function calling with defined schemas
- Agentic operations like browser tasks
Fine-tuning
Both gpt-oss models can be fine-tuned for a variety of specialized use cases.
This smaller model gpt-oss-20b can be fine-tuned on consumer hardware, whereas the larger gpt-oss-120b can be fine-tuned on a single H100 node.
Citation
@misc{openai2025gptoss120bgptoss20bmodel,
title={gpt-oss-120b & gpt-oss-20b Model Card},
author={OpenAI},
year={2025},
eprint={2508.10925},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2508.10925},
}
- Downloads last month
- 84
4-bit