gpt-oss-120bは、OpenAIが2025年8月5日に公開したオープンウェイトの推論モデルです。総パラメータ116.8Bのうち1トークンで動くのは5.1Bで、MXFP4量子化により80GBのGPU 1枚に載ります。性能はモデルカードの表で見るかぎりOpenAI o4-miniに近く、o3には届きません。
ただし「120bのほうが常に賢い」とは言えません。推論レベルをhighにした20bが、mediumの120bを数学とコーディングで上回る場面があります。本記事では、モデルカード(arXiv:2508.10925)の数値をもとに、性能・20bとの違い・必要なGPUとメモリ・日本語と幻覚率の弱点を順に整理します。
まとめ:gpt-oss-120bの性能と20bとの違いの要点
| 項目 | gpt-oss-120b | gpt-oss-20b |
|---|---|---|
| 総パラメータ/活性 | 116.83B/5.13B | 20.91B/3.61B |
| 層数/エキスパート数 | 36層/128(上位4を選択) | 24層/32(上位4を選択) |
| 重みのサイズ | 60.8GiB | 12.8GiB |
| 公式の実行目安 | 80GB GPU 1枚 | メモリ16GB |
| MMLU(high) | 90.0 | 85.3 |
| GPQA Diamond(high・ツールなし) | 80.1 | 71.5 |
| SWE-bench Verified(high) | 62.4 | 60.7 |
| MMMLU 日本語(high) | 83.5 | 78.8 |
| コンテキスト長 | 131,072トークン | 131,072トークン |
- 性能はo4-mini相当の手前。数学とコーディングは近く、知識問題(GPQA・HLE)ではo3との差が残る
- 20bとの差は知識量を問う評価で開き、数学・コーディングでは小さい
- 推論レベル(low/medium/high)による差は、モデルサイズによる差と同じくらい大きい
- 弱点は事実知識。SimpleQAの幻覚率は120bで78.2%あり、知識カットオフは2024年6月。検索やRAGと組み合わせる前提で使う
- ライセンスはApache 2.0とgpt-oss usage policyの組み合わせで、商用利用・改変・再配布ができる
gpt-oss-120b・20bの基本仕様と構成
gpt-ossはテキスト専用のMoE(Mixture of Experts)Transformerです。画像は入力できません。両モデルとも各層に並ぶエキスパートから、ルーターがトークンごとに上位4つを選んで計算します。MoEの仕組みそのものはMoE(Mixture of Experts)の疎活性化とルーターの仕組みで詳しく扱っています。
パラメータ内訳とアーキテクチャの数値
モデルカードの表1によると、総パラメータの大半はMoEのMLP部分が占めます。120bではMLPが114.71B、アテンションが0.96B、埋め込みが1.16Bです。活性パラメータ5.13Bは総数の約4%にあたり、この比率の低さが「117Bなのに速い」理由です。
| 項目 | 120b | 20b |
|---|---|---|
| MLP | 114.71B | 19.12B |
| Attention | 0.96B | 0.64B |
| Embed+Unembed | 1.16B | 1.16B |
| 残差ストリーム次元 | 2,880 | 2,880 |
| クエリヘッド/KVヘッド | 64/8(GQA) | 64/8(GQA) |
アテンションは、128トークン幅の帯域窓と全結合を層ごとに交互に使います。全結合の層はYaRNで131,072トークンまで文脈を伸ばしています。トークナイザーはGPT-4oのo200kを拡張したo200k_harmony(語彙201,088)です。学習データは知識カットオフが2024年6月で、120bの学習にはH100で210万GPU時間を使いました。
公開日・ライセンス・2026年9月時点の更新状況
重みはHugging Faceのopenai/gpt-oss-120bとopenai/gpt-oss-20bで配布されています。ライセンスはApache 2.0で、あわせてgpt-oss usage policyへの同意が求められます。usage policyは「適用される法律を守ること」を求める短い文書で、Apache 2.0の商用利用・改変・再配布の自由は変わりません。
公開後、重みそのものの改訂版は出ていません。Hugging Faceの最終更新は2025年8月26日で、2026年9月時点でも同じ重みが配布されています。OpenAIが同系統で追加したのは、2025年10月29日にresearch previewとして公開したgpt-oss-safeguard(120b/20b)です。gpt-ossを安全分類向けにファインチューニングした派生モデルで、汎用の後継ではありません。参照実装のリポジトリは2026年1月13日のv0.0.9が最新リリースです。
重みはファインチューニングにも使えます。Hugging Faceのモデルカードによると、120bはH100を積んだ1ノードで、20bは一般向けのハードウェアでも追加学習できます。
ベンチマークで見るgpt-oss-120bの性能とo3・o4-miniとの比較
以下の比較表では、gpt-ossの推論レベルhigh・既定のシステムプロンプト・公開されたMXFP4量子化重みでの評価を取り上げます。比較対象はOpenAI自身のo3とo4-miniです。
| ベンチマーク | o3 | o4-mini | gpt-oss-120b | gpt-oss-20b |
|---|---|---|---|---|
| AIME 2025(ツールあり) | 98.4 | 99.5 | 97.9 | 98.7 |
| GPQA Diamond(ツールなし) | 83.3 | 81.4 | 80.1 | 71.5 |
| MMLU | 93.4 | 93.0 | 90.0 | 85.3 |
| HLE(ツールあり) | 24.9 | 17.7 | 19.0 | 17.3 |
| Codeforces Elo(ツールあり) | 2,706 | 2,719 | 2,622 | 2,516 |
| SWE-bench Verified | 69.1 | 68.1 | 62.4 | 60.7 |
| Tau-Bench Retail | 70.4 | 65.6 | 67.8 | 54.8 |
| HealthBench | 59.8 | 50.1 | 57.6 | 42.5 |
読み取れるのは3点です。まず、数学(AIME)はどのモデルも97〜99点台で頭打ちになっており、差を測る物差しになっていません。次に、ソフトウェア修正のSWE-bench Verifiedでは120bがo4-miniに5.7ポイント届きません。実務で同じ差が出るかは、対象リポジトリと実行環境で確かめる必要があります。最後に、関数呼び出しを評価するTau-Bench Retailと、医療・健康会話を評価するHealthBenchでは120bがo4-miniを上回ります。エージェント用途の代替候補を検討する際は、Tau-Bench Retailを参考にできます。HealthBenchは医療・健康会話の評価として分け、採用判断には自社のツールとタスクでの検証が必要です。
数値はOpenAI自身の測定です。vLLMの公式レシピには第三者による再現値があり、120bのhighはGPQAで79.4、AIME 2025(ツールなし)で93.0でした。モデルカードの80.1と92.5にほぼ一致します。
推論レベル(low・medium・high)で変わる性能と20bとの逆転
gpt-ossは推論の深さを3段階で切り替えられます。システムプロンプトに「Reasoning: high」のように書くと、思考過程(CoT)の長さが変わります。モデルカードの表3は、この3段階すべての数値を載せています。
| ベンチマーク | 120b low | 120b medium | 120b high | 20b low | 20b medium | 20b high |
|---|---|---|---|---|---|---|
| AIME 2025(ツールなし) | 50.4 | 80.0 | 92.5 | 37.1 | 72.1 | 91.7 |
| GPQA Diamond(ツールなし) | 67.1 | 73.1 | 80.1 | 56.8 | 66.0 | 71.5 |
| MMLU | 85.9 | 88.0 | 90.0 | 80.4 | 84.0 | 85.3 |
| SWE-bench Verified | 47.9 | 52.6 | 62.4 | 37.4 | 53.2 | 60.7 |
| Tau-Bench Airline | 42.6 | 48.6 | 49.2 | 32.0 | 42.6 | 38.0 |
| Codeforces Elo(ツールなし) | 1,595 | 2,205 | 2,463 | 1,366 | 1,998 | 2,230 |
20bのhighが120bのmediumを上回る領域
数学とコーディングでは、20bのhighが120bのmediumを上回ります。AIME 2025は91.7対80.0、SWE-bench Verifiedは60.7対52.6、Codeforcesは2,230対2,205です。SWE-bench Verifiedに至っては、mediumどうしでも20b(53.2)が120b(52.6)をわずかに上回っています。
この領域は「考える量」で点が伸びます。GPUの制約で20bしか置けない環境でも、highに上げれば120bのmedium以上の結果が期待できます。代わりに応答は遅くなります。モデルカードによると、20bはAIMEで1問あたり平均2万トークンを超えるCoTを出力しています。
推論レベルを上げても埋まらない知識の差
知識量を問う評価は逆です。MMLUでは120bのlow(85.9)が20bのhigh(85.3)を上回ります。GPQA Diamondでも120bのmedium(73.1)が20bのhigh(71.5)より上です。知っていない事実は、長く考えても出てきません。社内FAQや専門分野の質問応答では、120bのlow・mediumも比較候補です。ただし、これらの評価は社内文書の回答精度や同一機材での応答時間を測っていないため、採用前に実際の質問で比較してください。
highが常に最善とも限りません。20bのTau-Bench Airlineはhighで38.0と、mediumの42.6より下がります。本番に入れる前に、自社のタスクでmediumとhighを両方測ってください。
gpt-oss-120bの必要GPU・VRAMとローカル実行
80GBと16GBという目安の根拠とKVキャッシュの上乗せ
パラメータの9割以上を占めるMoEの重みには、後学習時にMXFP4(1パラメータあたり4.25ビット)による量子化が組み込まれています。その結果、重みのファイルは120bで60.8GiB、20bで12.8GiBです。Ollamaが表示するサイズ(65GB・14GB)は、この値を10進のGBに換算したものに相当します。本記事で引用するOpenAIの公開スコアは、公開されたMXFP4量子化モデルの評価です。このスコアから量子化分を再度差し引く必要はありませんが、別形式への再量子化や実装変更の影響は別途確認してください。
重みのほかにKVキャッシュが載ります。表1の構成(KVヘッド8×次元64・BF16)から試算すると、1トークンあたり1層で2,048バイト、120bの36層で約72KiBです。131,072トークンを全層で保持すると約9GiBになり、帯域窓の層を128トークンに切り詰める実装でもその半分程度は要ります。
- 120b:重み60.8GiBに加え、KVキャッシュと実行時の作業領域が必要。同時実行数は文脈長・キャッシュ精度・実装によって変わるため、80GBという容量だけでは決められない
- 20b:24層なので131,072トークンで約6GiB。16GBで動くのは文脈を短めに取った場合
実行エンジンによってMXFP4の対応GPUが違う点に注意してください。OpenAI CookbookのTransformers手順では、MXFP4が使えるのはHopper以降(H100・GB200・RTX 50シリーズなど)で、bfloat16に戻すと20bでも約48GBを消費します。一方、vLLMの公式レシピはAmpere世代でもMarlinのMXFP4カーネルで動くとし、A100(80GB)1枚でも120bが載ると明記しています。H100・H200・B200、AMDのMI300X以降も対応GPUとして挙がっています。PyTorchの参照実装は最適化されていないためH100が4枚以上要ります。検証目的以外で使う実装ではありません。
vLLM・Ollamaでの起動コマンドと推論レベルの指定
サーバー用途ならvLLMが第一候補です。OpenAI互換のChat Completions APIとResponses APIを両方提供します。vLLMの仕組みやOllamaとの違いはvLLMのPagedAttentionの仕組みと使い方で解説しています。
uv venv
source .venv/bin/activate
uv pip install vllm --torch-backend=auto
# H100 1枚向け。公式レシピのメモリ不足対策を反映
vllm serve openai/gpt-oss-120b --gpu-memory-utilization 0.95 --max-num-batched-tokens 1024
推論レベルは、Responses APIならreasoning={"effort": "high"}、Chat Completionsならreasoning_effortで渡します。vLLMのソースでは、gpt-ossに"none"を渡すと検証エラーで拒否されます。サンプリングは、Hugging Faceのモデルカードがtemperature=1.0とtop_p=1.0を推奨しています。
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
res = client.responses.create(
model="openai/gpt-oss-120b",
input="MXFP4量子化を3行で説明して",
reasoning={"effort": "high"},
)
print(res.output_text)
ローカルのPCで試すならOllamaが手軽です。Cookbookは120bに60GB以上のVRAMかユニファイドメモリを推奨し、足りない分はCPUへ逃がせるものの遅くなるとしています。Ollamaではgpt-ossの推論レベルをthinkに文字列で渡し、未指定時の既定はmediumです。
ollama pull gpt-oss:120b
curl http://localhost:11434/api/chat -d '{
"model": "gpt-oss:120b",
"messages": [{"role": "user", "content": "MoEの利点を3行で"}],
"think": "high",
"stream": false
}'
生成速度の目安とGPUを持たない場合のAPI
生成速度は、活性パラメータ数だけでなく、機材・実装・文脈長にも左右されます。以下はDGX Spark上での計測例です。llama.cppのDGX Spark計測スレッド(Discussion #16578)では、120bのGGUF(MXFP4・59.02GiB)の生成速度が、ビルドや設定によって毎秒およそ40〜60トークンの範囲で報告されています。機材ごとの詳細はDGX Sparkのスペックと実測性能にまとめています。
GPUを用意しないならAPIで使う手もあります。Groqのモデルページによると、モデルIDはopenai/gpt-oss-120bで、公開値は毎秒約500トークン、料金は100万トークンあたり入力0.15ドル・出力0.60ドル、最大出力は65,536トークンです(2026年9月時点)。移行手順はGroqのLPU推論APIをOpenAI互換で差し替える手順を参照してください。
日本語性能と幻覚率:gpt-oss-120bの弱点
MMMLU日本語スコアとo4-miniとの差
モデルカードの表2は、14言語に人手翻訳したMMLU(MMMLU)の結果です。日本語は120bのhighで83.5、20bのhighで78.8でした。o4-mini(86.9)とは3.4ポイント、o3(89.0)とは5.5ポイントの差があります。
| MMMLU | 120b low | 120b high | 20b high | o4-mini | o3 |
|---|---|---|---|---|---|
| 日本語 | 77.0 | 83.5 | 78.8 | 86.9 | 89.0 |
| 英語以外の平均 | 74.1 | 81.3 | 75.7 | 85.2 | 88.8 |
日本語は14言語の平均より高く、英語以外では上位の部類です。120bの日本語はmediumで82.0、lowでは77.0まで落ちます。業務文書向けの初期設定はmediumを候補とし、実際の文書でlow・highとの精度差と応答時間を比較してください。
SimpleQA・PersonQAの幻覚率と対策
最大の弱点は事実知識です。モデルカードの表9では、短い事実質問のSimpleQAで120bの正答率が16.8%、幻覚率(誤答率)が78.2%でした。20bは正答率6.7%・幻覚率91.4%で、o4-mini(23.4%・75.0%)を下回ります。OpenAI自身も、小さいモデルは世界知識が少なく幻覚が増えるのは想定どおりだと書いています。
| 評価 | 指標 | 120b | 20b | o4-mini |
|---|---|---|---|---|
| SimpleQA | 正答率 | 16.8% | 6.7% | 23.4% |
| SimpleQA | 幻覚率 | 78.2% | 91.4% | 75.0% |
| PersonQA | 正答率 | 29.8% | 15.5% | 35.6% |
| PersonQA | 幻覚率 | 49.1% | 53.2% | 36.1% |
固有名詞・数値・日付を答えさせる用途に、gpt-ossを単体で使うべきではありません。知識カットオフも2024年6月です。モデルカードは検索ツールで外部情報を取りに行くと幻覚が減るとしています。社内文書の検索(RAG)かブラウジングツールを組み合わせ、回答には根拠の文書を添えさせてください。
harmony形式と実装時の注意点
gpt-ossはharmonyという独自の会話形式で学習されています。Hugging Faceのモデルカードは、harmony形式以外では正しく動かないと明記しています。vLLM・Ollama・Transformersのチャットテンプレートは自動でこの形式に変換します。生の文字列やトークン列を直接渡す場合と、自作のテンプレートを使う場合は、harmony形式になっているかを自分で確かめてください。
- メッセージは役割で優先順位が決まる(System>Developer>User>Assistant>Tool)
- 出力はチャネルで分かれる。analysisがCoT、commentaryが関数呼び出し、finalが利用者に見せる回答
- 複数ターンの会話では、過去ターンの推論(analysis)を入力から除く
- CoTには直接の最適化をかけておらず、幻覚や安全方針に沿わない表現を含みうる。フィルタや要約を通さずに利用者へ表示しない
- ツール呼び出しの途中では、APIが返した推論を次の呼び出しに戻す(最終回答が出るまで)
自前でプロンプトを組み立てて性能が出ないときは、まずharmony形式から外れていないかを疑ってください。OpenAIはopenai-harmonyパッケージで、形式の組み立てと出力の解析を提供しています。
gpt-oss-120bを選ぶ場面と他モデルを選ぶ場面
gpt-oss-120bが向くのは、データを外に出せず、80GB級のGPUを1枚用意でき、関数呼び出しやコード生成を中心に使う場合です。Tau-Bench Retailでo4-miniを上回る関数呼び出し性能と、Apache 2.0の扱いやすさが効きます。
次の条件に当てはまるなら、別のモデルを検討してください。
- 画像やPDFの図を読ませたい:gpt-ossはテキスト専用。マルチモーダルのオープンモデルはGemma 4のモデル一覧と必要VRAMで比較できる
- 131,072トークンを超える長文脈を扱う:gpt-ossの文脈長はここが上限。100万トークン級の文脈を持つ後発モデルとの比較はNemotron 3 SuperとQwen3.5・GPT-OSSのベンチマーク比較にある
- 2024年6月以降の事実を検索なしで答えさせたい:知識カットオフと幻覚率の両面で不向き
gpt-oss-120bの公開から1年以上が経ち、同じ規模帯のオープンウェイトMoEは増えました。その中でgpt-ossは、OpenAIが公開したオープンウェイトの汎用推論モデルです(派生のgpt-oss-safeguardは、ポリシーに基づく安全性分類を目的とした別用途のモデル)。o3と同様のCoT強化学習で後訓練され、Responses APIとの互換を前提に設計されているため、OpenAI APIで組んだ処理をローカルへ移す用途では第一候補になります。Codex CLIなどのツールをローカルで動かす構成はOllamaでCodexをローカルLLM実行する方法で紹介しています。
よくある質問
gpt-oss-120bの性能はどのくらいですか?
推論レベルhighで、MMLU 90.0、GPQA Diamond 80.1、SWE-bench Verified 62.4、Codeforces Elo 2,622(ツールあり)です。o3-miniを上回り、o4-miniに近い水準です。
gpt-oss-120bを動かすのに必要なGPUは何ですか?
公式の目安は80GBのGPU 1枚(H100やMI300Xなど)です。重みは60.8GiBあり、残りをKVキャッシュに使います。vLLMの公式レシピではA100(80GB)1枚でも動作するとしています。
gpt-oss-120bと20bはどちらを選ぶべきですか?
知識を問う質問応答が中心なら120bです。MMLUでは120bのlowが20bのhighを上回ります。GPUが16〜24GBなら、20bのhighが候補です。掲載した数学・コーディング評価では120bのmediumを上回りますが、実際のタスクの精度と、長い推論に必要な時間・メモリも確認してください。
gpt-ossは商用利用できますか?
できます。ライセンスはApache 2.0で、商用利用・改変・再配布が認められています。あわせてgpt-oss usage policy(適用法の順守)への同意が必要です。
gpt-oss-120bは日本語に対応していますか?
対応しています。MMMLUの日本語スコアは120bのhighで83.5、20bのhighで78.8です。英語以外の14言語の平均(120bで81.3)より高い一方、o4-mini(86.9)には届きません。