gpt-oss-puzzle-88B 是由 NVIDIA 开发的一款面向部署优化的大型语言模型,衍生自 OpenAI 的 gpt-oss-120b。
该模型借助 Puzzle(一种训练后神经架构搜索(NAS)框架)生成,旨在显著提升推理密集型工作负载的推理效率,同时在各类推理任务中保持或提高准确率。
此模型专为在 NVIDIA H100 级硬件上进行长上下文和短上下文服务而优化。在这类硬件环境中,推理模型的瓶颈往往在于 KV 缓存带宽和内存容量,而非原始计算能力。
与父模型相比,gpt-oss-puzzle-88B:
参数数量说明:Hugging Face Hub 可能会自动显示该模型约为 910 亿参数。我们称其为 880 亿,是因为自动统计包含了 MoE 专家额外的 MXFP4 量化比例张量,而这些通常不被算作模型参数。
本模型已准备就绪,可用于商业用途。

管辖条款:本模型的使用受 NVIDIA 开放模型许可协议 约束。
全球
gpt-oss-puzzle-88B 是一款通用推理与对话模型。该模型适用于生产部署、高成本效益推理以及长上下文推理工作负载。
2026 年 3 月 26 日,通过 Hugging Face 发布
Puzzle: Distillation-Based NAS for Inference-Optimized LLMs](https://arxiv.org/abs/2411.19146)
gpt-oss-120b & gpt-oss-20b Model Card](https://arxiv.org/abs/2508.10925)
Extending Puzzle for Mixture-of-Experts Reasoning Models with Application to GPT-OSS Acceleration](https://arxiv.org/abs/2602.11937)
架构类型:混合专家(Mixture-of-Experts)仅解码器Transformer
网络架构:基于gpt-oss架构进行修改,每层专家数量可变,并在各层间采用改进的全局/窗口注意力模式。
模型参数数量:880亿
本模型通过Puzzle框架构建,这是一种基于后训练的神经架构搜索(NAS)框架,能够在明确的部署约束下构建异构架构:
异构MoE专家剪枝
每个MoE层保留不同数量的专家,数量通过基于激活的重要性评分确定。早期层保留更多专家;后期层则进行更激进的剪枝。
选择性窗口注意力
部分全局注意力层被替换为窗口注意力(8K窗口),在长上下文场景中减少约40%的KV缓存占用,同时保留长程推理能力。
RoPE缩放调整
增加了YaRN RoPE缩放因子,以提高在128K上下文长度下的稳定性。
在通过Puzzle完成架构选择后,模型进行了知识蒸馏:
此阶段恢复了模块间的兼容性,并弥补了模块替换过程中损失的模型质量。
蒸馏后进行了强化学习(RL)阶段,以提高推理准确性同时控制生成长度:
这确保在保持高推理准确性的同时,维持稳定的努力-长度比率,实现可预测的成本-质量权衡。
该模型支持三种推理努力度模式:
努力度可可靠地控制生成长度和准确性,支持成本感知型部署。
输入类型: 文本
输入格式: 字符串
输入参数: 一维 (1D):序列
其他与输入相关的属性: 上下文长度为 128k 令牌。
输出类型: 文本
输出格式: 字符串
输出参数: 一维 (1D):序列
其他与输出相关的属性: 上下文长度为 128k 令牌。
我们的 AI 模型经过设计和优化,可在 NVIDIA GPU 加速系统上运行。通过利用 NVIDIA 的硬件(例如 GPU 核心)和软件框架(例如 CUDA 库),与仅使用 CPU 的解决方案相比,该模型实现了更快的训练和推理时间。
运行时引擎:
支持的硬件微架构兼容性:
首选/支持的操作系统:
将基础模型和微调模型集成到 AI 系统中,需要使用特定用例数据进行额外测试,以确保安全有效的部署。遵循 V 模型方法,在单元和系统层面进行迭代测试和验证,对于在部署前减轻风险、满足技术和功能要求以及确保符合安全和道德标准至关重要。
数据集总数: 7
数据收集时间段: 2013 年至 2025 年 5 月 1 日
对于 KD 阶段数据,使用了 nvidia/Llama-Nemotron-Post-Training-Dataset 中的提示,通过父模型(gpt-oss-120b)生成响应,以创建完整的 KD 训练示例。对于每个提示,我们在高和中等推理努力度设置下生成响应。
对于 RL 阶段数据,我们使用了 NeMo Gym 集合 的一个子集,其中包括 RL 可验证数据。
数据模态:文本
文本训练数据规模:10亿至10万亿 tokens
各数据集的数据收集方法:自动化/合成/人工
各数据集的标注方法:不适用
特性: 训练数据仅包含文本,涵盖广泛的任务类别。知识蒸馏阶段使用了Llama-Nemotron-Post-Training-Dataset,这是一个大规模数据集,包含数学、代码、科学、指令遵循、通用对话和安全等内容。强化学习阶段使用的数据集跨越多个领域:带单元测试的竞争性编程问题(Nemotron-RL-coding-competitive_coding、Skywork-OR1-RL-Data)、多样化的可验证数学推理问题(DAPO-Math-17k、Skywork-OR1-RL-Data)、跨物理、生物、化学、数学、计算机科学、工程、人文、法律等多个领域的多领域多项选择题问答(Nemotron-RL-knowledge-mcqa)、具有多样化格式和语言约束的易验证指令遵循任务(Nemotron-RL-instruction_following),以及需要遵循JSON模式的结构化输出生成(Nemotron-RL-instruction_following-structured_outputs)。训练过程中未使用任何个人数据。
按数据集划分的数据收集方法: 混合:人工、合成
按数据集划分的标注方法: 混合:自动化、人工、合成
| 基准测试 | 描述 |
|---|---|
| MMLU-Pro | MMLU-Pro 数据集是一个更稳健且更具挑战性的大规模多任务理解数据集,旨在更严格地评估大型语言模型的能力。 |
| GPQA-Diamond | GPQA(研究生级谷歌级问答)基准测试是一个具有挑战性的数据集,包含 448 道生物学、物理学和化学领域的多项选择题。 |
| HLE | 人类终极考试(HLE)是一项处于人类知识前沿的多模态基准测试,旨在成为同类中最后一个具有广泛学科覆盖的封闭式学术基准测试。人类终极考试包含横跨数十个学科的 3000 道问题,包括数学、人文科学和自然科学。HLE 由全球各学科专家共同开发,包含适合自动评分的多项选择题和简答题。 |
| AA-LCR | 一个具有挑战性的基准测试,用于衡量语言模型从 10k 到 100k tokens(使用 cl100k_base 分词器测量)的长文档中提取信息、进行推理和综合信息的能力。 |
| AIME25 | 美国数学邀请赛(AIME)2025 年试题 |
| IFBench | IFBench 是一个新的、具有挑战性的精确指令遵循基准测试。 |
| SciCode | SciCode 是一个具有挑战性的基准测试,旨在评估大型语言模型(LLMs)生成代码以解决现实科学研究问题的能力。 |
| RULER 128K | RULER 生成合成示例,用于评估具有可配置序列长度和任务复杂度的长上下文语言模型。使用 128K tokens 的上下文长度。 |
加速引擎:vLLM 测试硬件:
gpt-oss-puzzle-88B 模型可与 Hugging Face Transformers 和 vLLM 等标准推理框架配合使用。
该模型针对 NVIDIA H100 GPU 进行了特别优化,并支持长达 128K tokens 的长上下文推理。
我们建议使用 Transformers ≥ 4.57.3 版本。
from transformers import pipeline
model_id = "nvidia/gpt-oss-puzzle-88B"
pipe = pipeline(
"text-generation",
model=model_id,
trust_remote_code=True,
dtype="auto",
device_map="auto",
)
messages = [
{"role": "user", "content": "Explain quantum mechanics clearly and concisely."},
]
generation_config = GenerationConfig.from_pretrained(model_id)
generation_config.max_new_tokens = 256
outputs = pipe(
messages,
generation_config=generation_config,
)
print(outputs[0]["generated_text"][-1])通过单个命令启动服务器:
docker run --gpus all -p 8000:8000 \
--entrypoint bash \
vllm/vllm-openai:v0.17.1 \
-c "
apt-get update && apt-get install -y git &&
VLLM_USE_PRECOMPILED=1 pip install --no-build-isolation 'git+https://github.com/vllm-project/vllm.git@refs/pull/38135/head' &&
pip install flashinfer-cubin==0.6.6 flashinfer-jit-cache==0.6.6 --extra-index-url https://flashinfer.ai/whl/cu\$(echo \$CUDA_VERSION | cut -d. -f1,2 | tr -d '.') &&
export PYTORCH_ALLOC_CONF=expandable_segments:True &&
vllm serve nvidia/gpt-oss-puzzle-88B \
-tp 1 \
--trust-remote-code \
--kv-cache-dtype fp8 \
--max-num-batched-tokens 8192 \
--stream-interval 20 \
--gpu-memory-utilization 0.95 \
--max-num-seqs 8 \
--max-cudagraph-capture-size 8 \
--max-model-len 131072
"注意:
- 在 Blackwell(B200)上,需在
docker run命令中添加-e VLLM_USE_FLASHINFER_MOE_MXFP4_MXFP8=1。- 若要使用 BF16 KV 缓存而非 FP8,请移除
--kv-cache-dtype fp8。- 如需更大的批处理大小或更长的序列,请增大
-tp。- 通过
--enable-expert-parallel支持专家并行,但建议使用张量并行(TP)。
该模型支持三种推理努力度级别(low、medium、high)。例如:
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="unused")
# High effort — deep, multi-step reasoning
response = client.chat.completions.create(
model="nvidia/gpt-oss-puzzle-88B",
messages=[{"role": "user", "content": "Write a haiku about neural network pruning"}],
reasoning_effort="high",
)
print(response.choices[0].message.content)
# Low effort — fast, concise responses
response = client.chat.completions.create(
model="nvidia/gpt-oss-puzzle-88B",
messages=[{"role": "user", "content": "What is the capital of France?"}],
reasoning_effort="low",
)
print(response.choices[0].message.content)NVIDIA 认为可信 AI 是一项共同责任,我们已制定相关政策和实践,以支持各类 AI 应用的开发。当开发者按照我们的服务条款下载或使用本模型时,应与内部模型团队合作,确保该模型满足相关行业和使用场景的要求,并应对不可预见的产品误用问题。
有关此模型伦理考量的更多详细信息,请参见偏见、可解释性、安全与安保以及隐私子卡。
如发现模型质量、风险、安全漏洞或 NVIDIA AI 相关问题,请在此处报告。