GPT-OSS
综合介绍
GPT-OSS 是 OpenAI 发布的系列开源权重语言模型,旨在提供强大的推理能力和智能体功能。该系列包含两种模型:gpt-oss-120b
是一个大型模型,专为数据中心和高端硬件设计,适用于需要高推理能力的生产级通用场景;gpt-oss-20b
是一个中型模型,针对低延迟和本地化场景进行了优化,可在大多数台式机和笔记本电脑上运行。这些模型采用宽松的 Apache 2.0 许可证,允许开发者自由地进行实验、定制和商业部署。其核心特性包括可配置的推理强度、完整的思维链访问、以及原生的函数调用、网页浏览和代码执行等智能体能力。所有模型都必须使用官方的 harmony
响应格式进行交互,否则无法正常工作。
功能列表
- 宽松的许可协议: 采用 Apache 2.0 许可证,无版权限制和专利风险,可自由用于商业部署。
- 两种模型尺寸: 提供
gpt-oss-120b
(117B参数)和gpt-oss-20b
(21B参数)两个版本,分别面向生产环境和本地化应用。 - 专为智能体任务设计: 模型原生支持函数调用、网页浏览和 Python 代码执行,具备强大的工具使用能力。
- 可配置的推理强度: 开发者可以根据延迟和性能需求,轻松将模型的推理强度设置为低、中、高三个等级。
- 完整的思维链(Chain-of-Thought): 提供对模型完整推理过程的访问,便于调试和建立信任,但该信息不应直接展示给最终用户。
- 可微调: 支持全参数微调,允许开发者根据特定用例对模型进行深度定制。
- 高效推理: 模型采用原生 MXFP4 精度进行训练,
gpt-oss-120b
可在单张 H100 GPU 上运行,而gpt-oss-20b
可在 16GB 内存内运行。
使用帮助
GPT-OSS 是一个功能强大的开源语言模型系列,开发者可以在自己的硬件上部署和使用。以下是详细的使用帮助,旨在让您快速上手。
第一步:下载模型
您可以通过 Hugging Face Hub 下载 gpt-oss-120b
和 gpt-oss-20b
两个模型的权重文件。推荐使用 huggingface-cli
命令行工具进行下载。
# 下载 gpt-oss-120b 模型
huggingface-cli download openai/gpt-oss-120b --include "original/*" --local-dir gpt-oss-120b/
# 下载 gpt-oss-20b 模型
huggingface-cli download openai/gpt-oss-20b --include "original/*" --local-dir gpt-oss-20b/
第二步:选择并配置运行环境
GPT-OSS 模型可以通过多种流行的框架和工具运行,您可以根据自己的硬件和需求选择最合适的方式。
方式一:使用 Transformers
库(通用)
这是最常见的在本地使用模型的方式之一。Transformers
库的聊天模板会自动处理 harmony
格式。
- 安装依赖:
pip install transformers torch
- 编写Python代码运行:
from transformers import pipeline import torch # 指定模型ID,可以是120b或20b model_id = "openai/gpt-oss-120b" # 创建文本生成管道,自动映射到可用硬件(如GPU) pipe = pipeline( "text-generation", model=model_id, torch_dtype="auto", device_map="auto", ) # 准备输入消息 messages = [ {"role": "user", "content": "请用简单的话解释一下什么是量子力学。"}, ] # 执行推理 outputs = pipe( messages, max_new_tokens=256, ) # 打印生成的最后一个消息内容 print(outputs[0]["generated_text"][-1])
方式二:使用 Ollama
(消费级硬件推荐)
Ollama
是一个非常方便的工具,可以轻松在消费级硬件(包括macOS和Windows)上运行大模型。
- 安装 Ollama: 从 https://ollama.com/download 下载并安装Ollama。
- 通过命令行运行模型:
# 拉取并运行 gpt-oss-20b 模型 ollama pull gpt-oss:20b ollama run gpt-oss:20b # 拉取并运行 gpt-oss-120b 模型 ollama pull gpt-oss:120b ollama run gpt-oss:120b
运行后,您就可以直接在终端与模型进行交互。
方式三:使用 vLLM
(高性能服务)
vLLM
是一个为大模型推理优化的高性能服务框架,适合用于搭建API服务。
- 安装 vLLM: 官方推荐使用
uv
进行安装,以获取正确的依赖版本。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
该命令会自动下载模型并启动一个与OpenAI API兼容的Web服务器。
方式四:使用 LM Studio
LM Studio
是一个图形化桌面应用,可以方便地下载和运行各种开源模型。
- 安装 LM Studio: 从 https://lmstudio.ai/ 下载并安装。
- 下载模型:
# 下载 gpt-oss-20b lms get openai/gpt-oss-20b # 下载 gpt-oss-120b lms get openai/gpt-oss-120b
第三步:理解并使用 harmony
格式和工具
GPT-OSS 的一个核心要求是必须使用 harmony
聊天格式。模型在此格式上进行了后训练。
harmony
格式: 这是一个结构化的聊天格式库。当您使用transformers
的聊天模板或Ollama
等工具时,这个格式通常会被自动应用。如果您需要手动与模型交互或构建自定义工具,则需要使用openai-harmony
包来渲染对话。- 工具使用(Python和浏览器): 模型经过训练,可以调用系统工具,如
browser
(网页浏览)和python
(执行Python代码)。要启用这些工具,您需要在系统提示(System Prompt)中包含它们的定义。GitHub仓库中提供了这些工具的参考实现,您可以基于它们构建自己的工具。
# 使用harmony格式和工具的示例代码框架
import datetime
from gpt_oss.tools.simple_browser import SimpleBrowserTool
from openai_harmony import SystemContent, Message, Conversation, Role, load_harmony_encoding, HarmonyEncodingName
# 加载编码器
encoding = load_harmony_encoding(HarmonyEncodingName.HARMONY_GPT_OSS)
# 初始化工具
browser_tool = SimpleBrowserTool(backend=...)
# 创建系统消息,并启用工具
system_message_content = SystemContent.new().with_tools(browser_tool.tool_config)
system_message = Message.from_role_and_content(Role.SYSTEM, system_message_content)
# 创建对话
messages = [system_message, Message.from_role_and_content(Role.USER, "旧金山今天天气怎么样?")]
conversation = Conversation.from_messages(messages)
# 将对话转换为模型输入的token
token_ids = encoding.render_conversation_for_completion(conversation, Role.ASSISTANT)
# ... 在此执行模型推理 ...
# 解析模型输出,并根据需要调用工具
# ...
应用场景
- 企业级商业应用得益于 Apache 2.0 许可证,公司可以将 GPT-OSS 模型自由地集成到其商业产品中,或在内部服务器上部署以处理敏感数据,无需担心许可限制和专利风险。
- 本地化AI助手与开发
gpt-oss-20b
模型专门为消费级硬件优化,开发者和爱好者可以在个人电脑上运行功能强大的AI助手,用于编码辅助、文档写作和本地数据分析,保证了数据隐私和低延迟响应。 - 复杂AI智能体(Agent)研究与开发模型原生的工具使用能力(网页浏览、代码执行)和可访问的思维链,使其成为构建和研究复杂AI智能体的理想平台。研究人员可以探索智能体的自主规划和执行能力。
- 学术研究与模型定制学术界可以利用完全开放的 GPT-OSS 模型进行深入研究,例如探索模型的工作机制、安全性以及对齐技术。同时,通过全参数微调,可以针对特定领域的任务(如医疗、法律)进行深度定制,以达到最佳性能。
QA
- GPT-OSS 是什么?它和 GPT-4 有什么不同?GPT-OSS 是 OpenAI 发布的开源权重语言模型系列,任何人都可以下载并在自己的硬件上运行。它与 GPT-4 等闭源模型的主要区别在于其开放性、透明度和可定制性。GPT-4 通常通过 API 提供服务,而 GPT-OSS 提供了模型本身,允许更深度的集成和修改。
- 使用 GPT-OSS 模型需要付费吗?不需要。GPT-OSS 模型在 Apache 2.0 许可下发布,您可以免费下载、修改和用于商业目的。您只需要承担运行模型所需的硬件和计算成本。
- 什么是
harmony
格式?为什么我必须使用它?harmony
是 OpenAI 为其模型设计的特定聊天格式。GPT-OSS 模型在后训练阶段专门针对此格式进行了优化,以更好地理解指令、执行工具调用和进行思维链推理。如果不使用此格式,模型的表现会显著下降,甚至无法正确响应。 - 我可以在我的普通笔记本电脑上运行这些模型吗?可以。
gpt-oss-20b
模型经过优化,可在 16GB 内存的设备上运行,非常适合在大多数现代笔记本电脑和台式机上进行本地推理。gpt-oss-120b
则需要更专业的硬件,例如至少配备 80GB 显存的单个 H100 GPU。 - “完整的思维链”是什么意思?我应该如何使用它?“完整的思维链”(Chain-of-Thought, CoT)是指模型在生成最终答案之前的内部推理步骤。GPT-OSS 允许开发者访问这些步骤,这对于调试模型行为、理解其决策过程和增强对输出结果的信任非常有价值。但需要注意的是,思维链内容不应直接展示给最终用户,因为它可能包含不准确或不安全的信息。