Downloads · 30 days
17
24% of all-time downloads
valendra/experimental-gpt-oss-17b-mini
experimental-gpt-oss-17b-mini is a machine learning model from valendra. Use it for the machine learning task on the model card, and read the license before you ship it in a product. The card lists the license as apache-2.0.
Experimental MoE checkpoint obtained by expert pruning of openai/gpt-oss-20b. This is a research artefact, not a production model.
Downloads · 30 days
17
24% of all-time downloads
All-time downloads
71
Public
Parameters
16.6B
11.2 GB on disk
Likes
1
Public
Click a slice to open those files.
.safetensors11.2 GB · 100%
How the weights are stored.
U814.8B · 89%
From the Hugging Face model README
Experimental MoE checkpoint obtained by expert pruning of
openai/gpt-oss-20b.
This is a research artefact, not a production model.
A short summary of the technique used to produce the checkpoint.
Expert pruning is the process of removing a fraction of the experts from each Mixture-of-Experts (MoE) layer of a language model while keeping the rest of the architecture intact. The router, the attention blocks, the embeddings, the tokenizer, and the chat template are unchanged. Only the per-layer expert table is reduced, which directly shrinks the model's parameter count, memory footprint and (at inference) the amount of compute spent on the MoE block.
In this particular release the router weight matrix, the router bias
and the expert tensors are sliced along the expert dimension using
random-moe-pruning.
The default configuration is used (--prune-level 0.25,
--top-k 4, --num-examples 1000, --random-seed 42).
| Field | Value |
|---|---|
| Base model | openai/gpt-oss-20b |
| Original experts / layer | 32 |
| Pruned experts / layer | 24 |
| Experts kept per token | 4 |
| Prune level | 0.25 |
The metadata fields pruned_from_num_experts and
pruned_to_num_experts in config.json reflect the change for
traceability.
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "valendra/gpt-oss-20b-mini"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
dtype=torch.bfloat16,
device_map="auto",
)
chat_template.jinja from the base model is reused.