OpenAI GPT-OSS:如何在本地運行或在雲端自託管,硬體需求

CometAPI
AnnaDec 2, 2025
OpenAI GPT-OSS:如何在本地運行或在雲端自託管,硬體需求

GPT-OSS 的設計異常精良,易於存取: gpt-oss-20B 變體設計用於在單一消費級 GPU(~16 GB VRAM)或使用量化 GGUF 構建的最新高端筆記型電腦上運行,而 gpt-oss-120B儘管其總參數量高達 117B,但它仍然配備了 MoE/主動參數技巧和 MXFP4 量化技術,使其能夠在單一 H100 級 GPU(約 80 GB)或多 GPU 配置上運行。部署開源 GPT 風格模型(通常稱為「GPT OSS」)——無論是用於本地應用的緊湊型 6-7B 模型,還是用於生產服務的 70B 以上模型——都會引發一個核心問題:如何在本地運行 GPT-OSS 或在雲端自託管,以及硬體需求

什麼是 GPT-OSS 模型?它們的硬體需求是什麼?

什麼是 GPT-OSS?

GPT-OSS 是 OpenAI 近期發布的開放權重大型語言模型系列(發佈時主要有兩個版本:約 20 億參數版本和約 120 億參數版本)。它們提供了多種最佳化選項(混合專家模型、OpenAI 分散式模型中的 MXFP4 原生量化、稀疏/密集模型創新),使得這些相對較大的參數數量能夠以比簡單的 FP32/FP16 副本更少的記憶體運行。此次發布的明確目標是使強大的模型能夠在超大規模運算平台之外更廣泛地運行和客製化。

主要產品資訊(承重):

  • gpt-oss-20B 旨在在具有 ~16 GB VRAM 的單一消費者 GPU 上運行(並且可在具有 GGUF 量化的桌上型電腦/筆記型電腦上使用)。
  • gpt-oss-120B (≈117B 個參數,~5.1B 積極 OpenAI 的 MoE 設計中的參數)經過精心設計,使得該模型在使用 MXFP4 和特定運行時支援時,或在多 GPU 設定上可以適應單一 80 GB H100 / A100。

決定所需的硬體因素

  1. 模型尺寸和架構 MoE 和稀疏/密集層可以改變活化和工作記憶。 (GPT-OSS 使用混合專家風格的組件。)
  2. 精度與量化 FP32、FP16、BF16、8 位元、4 位元(GPTQ/AWQ/MXFP4)。較低的精度會減少內存,但會影響延遲和數值保真度。 OpenAI 為 GPT-OSS 提供 MXFP4 量化權重。
  3. 上下文長度(序列長度) – 更長的上下文會按比例增加啟動快取的使用;GPT-OSS 支援極長的上下文(在其設計中最多可支援非常大的令牌視窗),這會使記憶體需求倍增。
  4. 批次大小和並發性 – 為多個並髮用戶提供服務會使啟動和快取的記憶體倍增。 vLLM、DeepSpeed 和 Triton 等框架試圖有效地批量處理並在請求之間共享激活。
  5. 服務框架開銷 – 不同的推理伺服器(vLLM、text-generation-inference、llama.cpp、ONNX Runtime)增加了不同的開銷和最佳化。

什麼適合哪裡:粗略的記憶規則

硬體規劃需要注意兩個概念:

  1. 總參數數 — 模型大小的上限(117B 對 21B)。
  2. 啟動/工作集 — 在 MoE 或某些精確度設定中,推理所需的活動記憶體可能比原始參數位元組小得多。

實務經驗法則:

  • 16 GB 級 GPU/邊緣筆記型電腦 → 可能 GPT-OSS-20B 如果您使用模型提供的記憶體高效配置(或積極量化為 4 位元/NF4/AWQ)。
  • 80GB H100 / A100 80GB → 單 GPU 託管 GPT-OSS-120B 在他們的推薦設定中。為了實現生產吞吐量,你可能仍然需要多個 GPU 來實現批次、冗餘或降低並發下的延遲。
  • 大型多 GPU 設定(A100/H100 叢集) → 如果您想以低延遲運行大量並髮用戶或執行大量微調/訓練,則需要此功能。 DeepSpeed/ZeRO 和自動張量並行功能可讓您跨 GPU 拆分大型模型。

簡短總結:對於實驗和輕量級本地使用,建議使用 16-24 GB 的 GPU(或 CPU + 重量化)。對於大型 gpt-oss 模型的生產級單 GPU 推理,建議使用 80 GB 的 H100,否則請使用多 GPU 分割區。

GPT-OSS 部署在實際中需要多少算力?

推理與訓練:截然不同的預算

  • 推理:主要成本在於 GPU 記憶體(VRAM)和優化的核心。透過優化的運行時(vLLM、TensorRT、DeepSpeed-Inference)和量化,在 16 GB 的消費級 GPU 上,gpt-oss-20b 上的推理是可行的;120B MoE 模型的設計適用於 80 GB 的 H100。
  • 微調/全面訓練:數量級更大——你需要多個 GPU 或專門的訓練實例(多節點 H100/A100 叢集、DFLOP 預算和儲存 I/O)。本文主要關注推理/自託管和輕量級微調方案(QLoRA/LoRA),而不是長達數週的預訓練。

CPU vs GPU vs 專用加速器

  • 僅限 CPU:使用 GGUF/llama.cpp 和微小量化版本可以實現,以降低延遲換取更低的成本。在沒有量化的情況下在 CPU 上運行 20B 是不切實際的。當隱私或本地離線操作至關重要且吞吐量需求較低時,請使用 CPU。
  • GPU:延遲和吞吐量方面的首選。現代機器學習 GPU(A100/H100/4090/4080)在 HBM/VRAM 和 GPU 間結構方面差異很大。 gpt-oss 文件建議 120B 版本使用 H100 等級。
  • TPU / AMD MI300X:受某些運行時(vLLM/ROCm 建置)支持,並且在某些雲端中具有成本效益—選擇硬體時請查看提供者文件。

如何在有限的預算下在本地運行 GPT-OSS? (代碼 + 步驟)

以下是兩種實用方法: (A) GPU 筆記型電腦/桌上型電腦,配備約 16-24 GB VRAM,使用 4 位元量化,以及 (B) CPU/低 GPU(離線)使用 llama.cpp (GGUF) 或小型量化建構。當資金和能力有限時,這兩種方法都被從業者廣泛使用。

注意:這些說明假設您已擁有可用的 Python 環境(建議使用 Linux 以獲得最佳 CUDA 支援)。對於 Windows,請使用 WSL2 以獲得與 GPU 工具鏈的最佳相容性。

A. GPU 路線(建議在預算內達到最佳延遲)—量化 + 使用 bitsandbytes(4 位元)加載

這條路徑旨在運行 openai/gpt-oss-20b 在單一消費級 GPU(例如 24 GB 4090 或 16 GB 4080)上。它使用 bitsandbytes 4 位元量化和 Hugging Face transformers 設備地圖/加速。

步驟 1 — 安裝基礎

# Linux + CUDA (example); pick the correct torch CUDA wheel for your driver

python -m pip install -U pip
pip install torch --index-url https://download.pytorch.org/whl/cu121  # pick your CUDA version

pip install -U transformers accelerate bitsandbytes safetensors

(如果您使用 conda,請建立一個環境並為您的平台安裝與 CUDA 相容的 torch wheel。)

步驟 2 —(可選)登入 Hugging Face 下載大文件

huggingface-cli login

步驟 3 — Python 範例(載入量化的 4 位元模型)

# save as run_gptoss_4bit.py

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig

model_id = "openai/gpt-oss-20b"

bnb_config = BitsAndBytesConfig(
    load_in_4bit=True,
    bnb_4bit_compute_dtype=torch.float16,
    bnb_4bit_use_double_quant=True,
    bnb_4bit_quant_type="nf4"   # or "fp4"/"nf4" depending on support

)

tokenizer = AutoTokenizer.from_pretrained(model_id, use_fast=True)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    device_map="auto",                 # let transformers pick GPU + CPU offload if needed

    quantization_config=bnb_config,
    torch_dtype=torch.float16,
    trust_remote_code=True
)

prompt = "Write a concise summary of quantization for LLMs."
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=200)
print(tokenizer.decode(out, skip_special_tokens=True))

注意事項和提示

  • 使用 device_map="auto" so transformers 自動使用 CPU/GPU 卸載。如果您只有一個 GPU, device_map="auto" 通常會將所有內容放在 GPU 上,並卸載 CPU 上必須執行的操作。
  • 如果 VRAM 不足,請新增 --offload_folder ./offload (或設定 offload_folder in from_pretrained) 將張量卸載到 NVMe。
  • Hugging Face + bitsandbytes 方法已廣泛記錄;有關詳細信息,請參閱 4 位元變壓器指南。

B. CPU / 微小預算路線(llama.cpp / GGUF)

如果你沒有 GPU 或 GPU 非常小, llama.cpp /GGUF 建置(和 AWQ/GPTQ 量化檔案)讓您可以在 CPU 上執行模型,並且單一使用者可以接受延遲。

步驟 1 — 安裝 llama.cpp / Python 綁定

# Download and build (Linux)

git clone --recursive https://github.com/ggerganov/llama.cpp.git
cd llama.cpp
make
# Python bindings (optional)

pip install llama-cpp-python

步驟 2 — 將 safetensors 轉換為 GGUF(如果 gpt-oss 有可用的轉換腳本)
OpenAI/Hugging Face 提供安全張量;社群轉換器(或腳本 llama.cpp) 轉換為 GGUF。具體命令取決於當前 llama.cpp 工具;檢查 repo README convert.py/convert-safetensors-to-gguf。 (社區主題討論新模型的轉換。)

步驟 3 — 使用 llama.cpp

# basic inference (example)

./main -m ./gpt-oss-20b.gguf -p "Explain GGUF and quantization in one paragraph." -n 256

注意事項和權衡

  • CPU 運轉速度較慢。此路線適用於測試、隱私或極低並發的本地代理。
  • 在 CPU 上產生長輸出或為許多並髮用戶提供服務是不切實際的;請轉移到 GPU 進行生產。

磁碟量化建置(GPTQ/AWQ)

如果需要將大型模型壓縮到小型 GPU(例如 8-12 GB)中,社群的結果表明,GPTQ/AWQ 風格的量化可以使一些 20B 模型在低 VRAM GPU 上運行——但轉換通常需要 更多 轉換期間的 CPU RAM 和一個中間 GPU。工具: GPTQ-for-LLaMa, AutoGPTQ (已存檔), AWQQLLM.

預算有限時的實用技巧

  • 優先使用 4 位量化檢查點 (GPTQ/AWQ/MXFP4)—通常是「在 12 GB 中運行」和「需要 80 GB」之間的區別。
  • 限制上下文長度 對於預算推斷:長上下文會耗盡啟動快取。如果必須儲存長上下文,請考慮卸載策略。
  • 謹慎使用統一記憶體/nvmem 卸載 — 框架可能提供 CPU/NVMe 卸載(DeepSpeed ZeRO-Offload / ZeRO-Infinity),但這會增加延遲。

如何在雲端供應商上自行託管 GPT-OSS(實用指南和成本指標)?

選擇哪種雲端硬體?

  • 單 GPU 80 GB H100:非常適合託管 gpt-oss-120b 以應對中小流量。用 AWS 的話來說,P5 執行個體提供 H100 硬體;單 GPU 版本(將於 2025 年發布)可以更經濟地調整推理規模。根據提供者選擇使用 P5 / ND H100 系列。
  • 多 GPU(8× H100):為了實現高吞吐量和冗餘,請使用 p5.48x、p5dn 或類似叢集。在同一實例中使用 NVidia NVLink/NVSwitch 可降低 GPU 間通訊開銷。
  • 替代雲CoreWeave、Lambda Labs、Paperspace、Runpod—通常提供較便宜的現貨/按需 GPU 租賃服務,用於突發推理。在投入長期基礎設施建設之前,建議先將它們用於開發。
  • 尖端/重工業生產: AWS p5 (H100) (每個實例 8 個 H100,80GB)— 適用於單節點最高吞吐量和單 GPU 80GB 以上的需求,或適用於 120GB 以上且較少拆分的需求。 P5 提供 H100 和大型 NVMe 本地儲存。

rmers、文本生成推理 (TGI)/NVIDIA TGI 容器,或設定 DeepSpeed 推理。

  1. 提供快速本地 NVMe 如果您打算卸載大型啟動狀態(ZeRO-Infinity)。 P4/P5 節點通常具有本地 NVMe 和非常高的網路頻寬。 ()
  2. 安全和網路 — 將推理端點置於負載平衡器後面,使用自動縮放群組作為前端,並分離關注點(模型服務與請求路由)。
  3. 監控和 SLO — 追蹤 GPU 使用率、記憶體、令牌/秒、延遲 p95 和錯誤;使用 Prometheus + Grafana 取得指標。

雲端自架工作流程範例(AWS P4/P5)

  1. 選擇實例 (p4d/p5)取決於模型記憶體需求。對於 gpt-oss-20B,單一 16-32 GB 實例即可;對於 gpt-oss-120B,請選擇 80GB HBM 實例或多 GPU 實例。
  2. 準備 AMI/圖像 — 使用捆綁了 CUDA、cuDNN 和優化的 PyTorch 的供應商 AMI(或帶有 NVIDIA 驅動程式的供應商圖像)。
  3. 安裝服務堆疊:vLLM、變壓器、文字產生推理 (TGI)/NVIDIA TGI 容器,或設定 DeepSpeed 推理。
  4. 提供快速本地 NVMe 如果您打算卸載大型啟動狀態(ZeRO-Infinity)。 P4/P5 節點通常具有本地 NVMe 和非常高的網路頻寬。
  5. 安全和網路 — 將推理端點置於負載平衡器後面,使用自動縮放群組作為前端,並分離關注點(模型服務與請求路由)。
  6. 監控和 SLO — 追蹤 GPU 使用率、記憶體、令牌/秒、延遲 p95 和錯誤;使用 Prometheus + Grafana 取得指標。

自託管計劃範例(gpt-oss-20b,小規模生產)

目標: 服務約 20 個同時用戶,回應目標為 1-2 秒,成本敏感。

  1. 看板:1× A10G / 1× 24 GB GPU(例如,G5 / A10G / RTX 6000)用於模型 + 1× 小型 CPU 引導伺服器。
  2. 運行時:vLLM作為模型伺服器(連續批次)+CometAPI網關。
  3. 自動縮放:使用帶有 GPU AMI 和 ALB 的自動縮放組 + 根據 CPU/GPU 指標進行水平自動縮放。
  4. 儲存應用:NVMe 本地用於模型快取;物件儲存(S3)用於冷模型儲存。
  5. 監控:Prometheus + Grafana,追蹤 GPU 利用率、延遲、佇列長度。
  6. 安全性:VPC、私有子網路、模型儲存的 IAM 角色、TLS 憑證。

自託管計劃範例(gpt-oss-120b,生產環境)

目標: 對於許多並髮用戶/企業來說,延遲較低。

  1. 看板:1× H100 80 GB(單 GPU)作為基準;水平擴充或使用多 GPU p5 執行個體來提高吞吐量。為了實現高吞吐量,可以複製單 GPU 服務(資料並行)或使用 DeepSpeed(張量/管線)跨 GPU 對模型進行分片。
  2. 運行時:具有自動 TP 或 NVIDIA TensorRT(如有)的 DeepSpeed-Inference。 vLLM 對 MoE/Multi-GPU 和調優核心的支援也可能有用。
  3. Kubernetes:使用具有設備插件和本地 NVMe 的 K8s;使用混沌測試來確保可用性。
  4. 成本優化:用於可預測負載的預留實例;用於批次工作負載的現貨實例。

範例:為 gpt-oss-20b 啟動 vLLM 服務容器

# assume vllm is installed and CUDA is set up

vllm serve --model openai/gpt-oss-20b --port 8000 --num-gpus 1

然後將你的前端指向 http://<host>:8000/v1/chat/completions (vLLM 支援與 OpenAI 相容的 API)。

成本最佳化技巧

  • 現貨/搶佔式虛擬機 便宜 50–80%,但需要檢查點或快速重生策略。
  • 模型量化 減少實例類型需求(例如,如果引擎支援動態去量化,則量化的 120B 可能會在更少的 GPU 上提供)。
  • 使用僅推理優化的實例係列 (P5/P4/A2 Ultra)在進行多 GPU 模型並行時具有高 NVLink/NVSwitch;網路頻寬對於 GPU 間分片很重要。

如何平衡成本、延遲和模型質量

量化:速度與質量

積極量化(2-4 位,AWQ/GPTQ) → 對於許多任務來說,可以節省大量內存,並且通常質量損失不大。如果要對特定工作負載進行基準測試,請使用 AWQ/GPTQ 進行生產。量化過程中,轉換可能需要大量的 CPU 記憶體。

混合精度和內核優化

使用 fp16, bf16 在支援的情況下;與專用 CUDA 核心(FasterTransformer、TensorRT)結合使用,以實現最大吞吐量。 Nvidia/TensorRT 為許多 Transformer 提供推測解碼和最佳化的核心(NVIDIA 提供最佳化的 GPT-OSS 適配器)。

安全性和可觀察性

開放權重模型意味著您需要負責監控誤用、資料外洩和漂移。請實施請求日誌記錄、內容過濾器、速率限制和人機互動審核。 OpenAI 的發行說明和模型卡強調了其內部測試和外部評估——但自託管模式將安全邊界轉移到了您身上。

最後的思考

GPT-OSS 帶來了突破:由於精心的架構選擇和量化分佈,以前需要大量定制基礎設施的模型現在變得更容易上手。但是 部署仍然是一門學科:硬體規模決定必須考慮模型精度、上下文長度以及應用的並發性能。使用小型測試平台(量化為 20B)測量令牌/秒和 p95 延遲,然後將其相乘以估算雲端運算和生產成本。

如何存取 GPT-OSS API

CometAPI 是一個統一的 API 平台,它將來自領先供應商(例如 OpenAI 的 GPT 系列、Google 的 Gemini、Anthropic 的 Claude、Midjourney、Suno 等)的 500 多個 AI 模型聚合到一個開發者友好的介面中。透過提供一致的身份驗證、請求格式和回應處理,CometAPI 顯著簡化了將 AI 功能整合到您的應用程式中的過程。無論您是建立聊天機器人、影像產生器、音樂作曲家,還是資料驅動的分析流程,CometAPI 都能讓您更快地迭代、控製成本,並保持與供應商的兼容性——同時也能充分利用整個 AI 生態系統的最新突破。

開發人員可以訪問 GPT-OSS-20B   GPT-OSS-120B 通過 彗星API,列出的最新模型版本截至本文發布之日。首先,探索該模型的功能 游乐场 並諮詢 API指南 以獲得詳細說明。造訪前請確保您已經登入CometAPI並取得API金鑰。 彗星API 提供遠低於官方價格的價格,幫助您整合。

SHARE THIS BLOG

一個 API 中超過 500 個模型

最高 20% 折扣