openai/gpt-oss
gpt-oss-120b and gpt-oss-20b are two open-weight language models by OpenAI
gpt‑oss – OpenAI 发布的开源权重 LLM
是什么 – 一个提供运行 OpenAI 新发布的开源权重语言模型 gpt‑oss‑120b(约 117 B 参数,5.1 B 激活)和 gpt‑oss‑20b(约 21 B 参数,3.6 B 激活)的参考代码的仓库。这些模型专为高级推理、工具使用(浏览器、Python)和代理任务设计。该仓库不包含模型权重本身;权重托管在 Hugging Face 上,可通过 HF CLI 下载。
核心理念
- Harmony 响应格式 – 模型训练所用的结构化聊天模式。所有推理代码均假设提示和输出遵循此格式;否则模型行为将不正确。
- MXFP4 量化 – 训练后量化技术,压缩 MoE 权重,使 120 B 模型可放入单张 80 GB GPU(如 H100、MI300X)中,20 B 模型可在约 16 GB 内运行。
- Apache‑2.0 许可证 – 宽松许可,允许商业使用和修改,无传染性 copyleft 限制。
亮点(来自 README)
| 特性 | 含义 |
|---|---|
| 可配置推理努力 | 推理时可选择低/中/高努力级别,以延迟换取推理深度。 |
| 完整思维链 | 模型返回其内部推理步骤(非面向终端用户),有助于调试和建立信任。 |
| 可微调 | 可通过标准 PyTorch 流水线在自定义数据上进一步微调权重。 |
| 代理能力 | 原生支持函数调用、网页浏览、Python 执行和结构化输出,均通过 Harmony 格式表达。 |
| 量化(MXFP4) | 使 120 B 模型可在单张 80 GB GPU 上运行,20 B 模型可在 16 GB 上运行,评估质量与全精度检查点相同。 |
| 多种后端 | 提供 PyTorch(教学用)、Triton(单 GPU 优化)、Metal(Apple Silicon)的参考实现,以及 vLLM、Transformers、Ollama 和 LM Studio 的即用型包装器。 |
如何获取模型
# 120 B
hf download openai/gpt-oss-120b --include "original/*" --local-dir gpt-oss-120b/
# 20 B
hf download openai/gpt-oss-20b --include "original/*" --local-dir gpt-oss-20b/
权重以 SafeTensors 格式存储在 Hugging Face Hub 上。Apple Silicon 用户也可下载预转换的 Metal 二进制文件。
使用 🤗 Transformers 快速推理
from transformers import pipeline
model_id = "openai/gpt-oss-120b"
pipe = pipeline(
"text-generation",
model=model_id,
torch_dtype="auto",
device_map="auto",
)
messages = [{"role": "user", "content": "清晰简洁地解释量子力学。"}]
out = pipe(messages, max_new_tokens=256)
print(out[0]["generated_text"][-1])
该管道会自动应用 Harmony 聊天模板;若直接调用 model.generate,必须自行格式化提示,或使用 openai‑harmony 包。
运行参考后端
| 后端 | 安装方式 | 典型硬件 |
|---|---|---|
| PyTorch(参考) | pip install -e "[torch]" |
4× H100(低效,教学用) |
| Triton(单 GPU) | 从源码构建 Triton,然后 pip install -e "[triton]" |
1× 80 GB GPU(H100/MI300X) |
| Metal(Apple Silicon) | GPTOSS_BUILD_METAL=1 pip install -e "[metal]" |
Apple M-系列芯片 |
| vLLM | uv pip install --pre vllm==0.10.1+gptoss … |
vLLM 支持的任意 GPU |
| Ollama | ollama pull gpt-oss:20b(或 :120b) |
通过 Ollama 运行时支持的消费级 CPU/GPU |
| LM Studio | lms get openai/gpt-oss-20b |
与 Ollama 相同 |
每个实现均附带一个小型 CLI(python -m gpt_oss.generate …)和一个 终端聊天 示例,演示工具使用(浏览器、Python)和 Harmony 格式。
仓库附带的工具
- 浏览器工具 – 模型训练期间使用的最小网页搜索/页面获取接口。提供两个后端(
YouComBackend和ExaBackend)。代码故意保持简单,并标注为 仅用于教学;生产系统应替换为安全、沙箱化的浏览器服务。 - Python 工具 – 无状态执行器,用于运行任意 Python 片段。同样仅用于研究演示;沙箱化由用户负责。
两个工具均暴露一个小型基于 JSON 的协议,模型可通过 Harmony 消息调用。
客户端示例
- 终端聊天(
gpt_oss.chat) – 交互式 REPL,可切换推理努力程度,启用浏览器或 Python 工具,并选择推理后端。 - 响应 API 服务器(
gpt_oss.responses_api.serve) – 模拟 OpenAI 的 Responses API 的轻量级服务器,适用于与现有聊天完成前端集成。 - Codex 集成 – 一个极小的配置片段,展示如何将开源 Codex 客户端指向本地运行的 gpt‑oss 端点(例如通过 Ollama)。
许可与贡献
- 许可证:Apache 2.0 – 免费用于商业和研究用途,无病毒式 copyleft。
- 贡献:仓库遵循 OpenAI 通常的开源贡献模式(拉取请求、代码风格检查)。参考实现故意未优化;欢迎提升性能或添加生产级工具的贡献。
何时使用此仓库
- 研究与原型开发 – 你需要一个可检查、微调或嵌入自定义代理的最先进开源权重 LLM。
- 工具增强代理 – 内置浏览器和 Python 工具可让你实验检索增强生成或代码执行循环。
- 性能探索 – Triton 和 Metal 后端展示了 MXFP4 量化如何将 120 B MoE 模型缩小至单 GPU 运行。
- 学习 – PyTorch 参考代码故意简单,是学习 MoE 架构和令牌级推理流水线的良好教学资源。
总结:openai/gpt-oss 是一个真正的、面向生产的开源权重 LLM 项目。它提供模型、结构化聊天格式(Harmony)、多个硬件栈的参考推理代码,以及示例客户端,共同使你无需任何专有 OpenAI API 即可运行、微调和构建 120 B 和 20 B 模型的代理应用。
相关
- Dispatch
- Dispatch
- Dispatch
- 项目
- Dispatch