Instructions to use nebius/EAGLE3-gpt-oss-20b with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use nebius/EAGLE3-gpt-oss-20b with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="nebius/EAGLE3-gpt-oss-20b")# Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("nebius/EAGLE3-gpt-oss-20b") model = AutoModelForCausalLM.from_pretrained("nebius/EAGLE3-gpt-oss-20b") - Notebooks
- Google Colab
- Kaggle
- Local Apps
- vLLM
How to use nebius/EAGLE3-gpt-oss-20b with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "nebius/EAGLE3-gpt-oss-20b" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "nebius/EAGLE3-gpt-oss-20b", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/nebius/EAGLE3-gpt-oss-20b
- SGLang
How to use nebius/EAGLE3-gpt-oss-20b 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 "nebius/EAGLE3-gpt-oss-20b" \ --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": "nebius/EAGLE3-gpt-oss-20b", "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 "nebius/EAGLE3-gpt-oss-20b" \ --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": "nebius/EAGLE3-gpt-oss-20b", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Docker Model Runner
How to use nebius/EAGLE3-gpt-oss-20b with Docker Model Runner:
docker model run hf.co/nebius/EAGLE3-gpt-oss-20b
Model Description
This is an EAGLE-3 draft-model for gpt-oss-20b, trained from scratch using LK losses — training objectives that directly target acceptance rate rather than using KL divergence as a proxy.
Training Details
- Base model: openai/gpt-oss-20b
- Draft architecture: EAGLE-3
- Training data: Infinity-Instruct-0625 with gpt-oss-20b generated responses
- Training objective: Hybrid LK loss with adaptive λ scheduling (η=3)
- Training: 10 epochs from random initialization
- Draft length: K = 6 speculative tokens
Performance
Average acceptance length (τ) measured across MT-bench, HumanEval, and GSM8K with K = 7:
| Configuration | Temperature = 0 | Temperature = 1 |
|---|---|---|
| EAGLE-3 + KL | 3.46 | 3.17 |
| EAGLE-3 + LK (ours) | 3.49 | 3.29 |
Comparison with Public Checkpoints
| Model | MT-bench (τ) | HumanEval (τ) | GSM8K (τ) |
|---|---|---|---|
| RedHatAI/gpt-oss-20b-speculator.eagle3 | 2.63 | 2.43 | 3.00 |
| Ours | 3.20 | 3.01 | 3.65 |
Measured at temperature = 1 with K = 7
Usage with vLLM
from vllm import LLM, SamplingParams
llm = LLM(
model="openai/gpt-oss-20b",
speculative_config={
"method": "eagle3",
"model": "nebius/EAGLE3-gpt-oss-20b",
"num_speculative_tokens": 6,
},
)
sampling_params = SamplingParams(temperature=0.7)
outputs = llm.generate(["Explain speculative decoding in simple terms."], sampling_params)
Note: The current vLLM implementation samples draft tokens greedily regardless of temperature settings, which can underestimate acceptance rates at temperature > 0. A community fix is under development (see vllm-project/vllm#20459). The acceptance metrics reported above were measured with proper rejection sampling.
License
Citation
@misc{samarin2026lklosses,
title = {LK Losses: Direct Acceptance Rate Optimization for Speculative Decoding},
author = {Alexander Samarin and Sergei Krutikov and Anton Shevtsov and Sergei Skvortsov and Filipp Fisin and Alexander Golubev},
year = {2026},
eprint = {2602.23881},
archivePrefix = {arXiv},
primaryClass = {cs.LG},
url = {https://arxiv.org/abs/2602.23881}
}
- Downloads last month
- 63
Dataset used to train nebius/EAGLE3-gpt-oss-20b
Collection including nebius/EAGLE3-gpt-oss-20b
Paper for nebius/EAGLE3-gpt-oss-20b
Evaluation results
- Acceptance Length on MT-Benchself-reported3.200
- Acceptance Length on GSM8Kself-reported3.650
- Acceptance Length on HumanEvalself-reported3.010