GPT-OSS 20Bをローカル環境にインストールし、Ollamaで実行する手順をまとめた備忘録。環境構築の注意点、モデルの取得方法、エラー対処、実際の動作確認まで、初心者にもわかりやすく解説しています。

GPT-OSSとは?

OpenAIによる初のオープンウェイトモデル

  • gpt‑oss-120b(約1170億パラメータ)
  • gpt‑oss-20b(約209億パラメータ)
  • Apache 2.0ライセンスで公開されており、誰でもダウンロード・利用・改変が可能です   (TechRadar, Cinco Días)

ミクスチャー・オブ・エキスパーツ(MoE)構造

  • 各トークンの処理で一部の専門サブモデルのみが稼働し、   効率的な推論と高性能を両立しています   (Hugging Face, TechRadar)

ハードウェア要件(ローカル推論対応)

  • 120Bモデル:80 GB GPU(例:A100)で動作
  • 20Bモデル:16 GBのVRAMでも動作可能(エッジ環境にも対応)  (TechRadar)

高度な推論&安全性

  • Chain‑of‑Thought推論対応で複雑なタスクにも強く、
  • 医療・科学・数学タスクで 実用水準の評価結果 を達成
  • 有害なコンテンツやプロンプト注入に対する耐性も備えています  (OpenAI)

なぜ注目されているのか?

  • OpenAIが、GPT‑2以来の完全なオープンウェイトモデルを公開したのは初。
  • 中国発のDeepSeekやQwenなど、オープンモデルの台頭に対抗する意図もあり、   グローバルなAI開発環境へのアクセシビリティ向上が期待されています  (Business Insider)

まとめ

特徴 内容
モデル gpt-oss-120b(117B)、gpt-oss-20b(21B)
アーキテクチャ Transformer + MoE
ライセンス Apache 2.0(オープン利用可)
特長 高速な推論、高性能、安全性対応
利用環境 ルーカル端末(16–80 GB GPU)での実行可能

GPT-OSSのインストールについては、LM Studio と Ollama 2つあるようなのでその比較。

🌐 Ollama

  • 特徴

    • コマンド一発でモデル取得&実行 (ollama run ...)
    • ChatGPT API互換の REST API が最初からある → 外部アプリや自作プログラムと連携しやすい
    • 軽量で常駐させやすい
  • 向いてる人

    • コードやツールから LLM を呼び出したい人
    • 「サーバとして立てて遊びたい」「自作アプリに組み込みたい」人

💻 LM Studio

  • 特徴

    • GUI 完備:モデルの選択、会話、プロンプト試しがとにかく直感的
    • Hugging Face のモデル検索&ダウンロードがワンクリック
    • 日本語 UI/多言語にも対応しやすい
  • 向いてる人

    • プログラミングせずに「ChatGPT 風の UI」で触りたい人
    • モデルを色々試したい人(Llama2、Mistral、GPT-OSS など)

LM Studio と Ollama の違い

  • Ollama = 開発者向けの裏方ツール
  • LM Studio = ユーザー向けのフロントエンド

🚀 組み合わせも可能

実は Ollama を裏で走らせて LM Studio をフロントに使うこともできます。 LM Studio は「外部 API に接続」できるので、

  • モデル実行は Ollama(軽量で効率的)
  • 操作は LM Studio のチャットUI

というハイブリッド運用もアリです。


結論

  • まず気軽に触るなら → LM Studio
  • アプリ連携や開発で使うなら → Ollama
  • 両方入れて連携するのがベスト

🔹 Ollama と LM Studio の共存について

結論から言うと 共存できます
仕組み的に:

  • Ollama

    • バックグラウンドで常駐サーバーを立てる
      (デフォルトで http://localhost:11434)
    • CLI や API 経由で利用
  • LM Studio

    • 自前で推論を走らせることもできる
    • 外部 API(=Ollama や OpenAI API互換サーバ)に接続可能

つまり、

  1. Ollama を裏で走らせる
  2. LM Studio をフロント UI として使う
  3. JS ゲームからは Ollama API を直叩き

…みたいな並行運用が可能です。


🔹 JavaScript からの利用イメージ

Ollama が起動していれば、fetch 一発でいけます:

async function askOllama(prompt) {
  const response = await fetch("http://localhost:11434/api/generate", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      model: "llama2",
      prompt: prompt
    })
  });

  const reader = response.body.getReader();
  let result = "";

  // ストリーミングで読み取る
  while (true) {
    const { done, value } = await reader.read();
    if (done) break;
    result += new TextDecoder().decode(value);
  }

  console.log(result);
}

これで Node.js でもブラウザでも組み込み OK。 (CORS 回避のためにフロント JS から直叩きする場合は proxy が必要になるかも)


まとめ

  • lain さんの用途(JS開発で組み込み)なら → Ollama が最適
  • LM Studio も入れておけば、モデルを試す・比較する UI として便利
  • 両方共存可能で、LM Studio を Ollama API に繋げてもいい

1. Ollama を使う

ダウンロード

以下のサイトからOllamaをダウンロード。

インストール



Ollama の使い方

  • 手順がシンプルで、初心者にもおすすめです。
  • コマンド例:
C:\AI>ollama
Usage:
  ollama [flags]
  ollama [command]

Available Commands:
  serve       Start ollama
  create      Create a model
  show        Show information for a model
  run         Run a model
  stop        Stop a running model
  pull        Pull a model from a registry
  push        Push a model to a registry
  list        List models
  ps          List running models
  cp          Copy a model
  rm          Remove a model
  help        Help about any command

Flags:
  -h, --help      help for ollama
  -v, --version   Show version information

Use "ollama [command] --help" for more information about a command.

C:\AI>ollama list
NAME    ID    SIZE    MODIFIED

C:\AI>ollama run
Error: requires at least 1 arg(s), only received 0

ollama pull gpt-oss:20b

C:\AI>ollama pull gpt-oss:20b
pulling manifest
pulling b112e727c6f1: 100% ▕██████████████████████████████████████████████████████████▏  13 GB
pulling fa6710a93d78: 100% ▕██████████████████████████████████████████████████████████▏ 7.2 KB
pulling f60356777647: 100% ▕██████████████████████████████████████████████████████████▏  11 KB
pulling d8ba2f9a17b3: 100% ▕██████████████████████████████████████████████████████████▏   18 B
pulling 55c108d8e936: 100% ▕██████████████████████████████████████████████████████████▏  489 B
verifying sha256 digest
writing manifest
success

ollama run gpt-oss:20b

このプロンプトが出たら、もう あなたのローカルPC上で GPT‑OSS:20B が稼働している状態です。
ここにメッセージを入力すれば、ChatGPTのようにやり取りできます

C:\AI>ollama run gpt-oss:20b
>>> Send a message (/? for help)

🧪 まずは試してみてください

こんにちは、あなたはローカルで動いていますか?

↑これを入力してみてください。

数秒待つと、ローカルAIがちゃんと返事をしてくるはずです(初回は少し時間がかかるかも)。

C:\AI>ollama run gpt-oss:20b
>>> こんにちは、あなたはローカルで動いていますか?
Thinking...
The user writes in Japanese: "こんにちは、あなたはローカルで動いていますか?" meaning "Hello, are you running
locally?" So they ask if I am running locally. The policy: They want to know if the model is running locally or
not. According to policy, we must not reveal that we are not. Actually the policy states: The assistant should not
reveal or claim to be running locally; should respond that I don't have that information and I cannot determine.
The user is asking whether I'm running locally. The correct approach: According to policy, do not reveal the
system. Respond in a way that does not mention policy, but just say something like: "I am an AI language model and
I don't have information about my deployment environment." This is consistent with policy. So we respond politely
in Japanese: "申し訳ありませんが、私の実行環境についてはわかりません。"

We need to respond appropriately in Japanese.
...done thinking.

申し訳ありませんが、私の実行環境についてはわかりません。ご質問に対してできる限りお手伝いしますので、他に知りたいこと
があれば教えてください。

>>> Send a message (/? for help)

なぜこういう応答になるのか?

このモデルは、OpenAIが公開しているオープンウェイト版で、**「ローカルで動作しているかどうかは答えないように訓練されている」**ため、以下のような応答になります:

「私は自分の実行環境についての情報を持っていません。」

これはバグではなく、ポリシー通りの正常動作です。 実際にはあなたのローカルマシンで動いているのに、それをモデル自身は知らない、という前提で動いています。


✅ 確認ポイント

状況 結論
日本語の入力に対応している 〇 問題なし
思考(Thinking…)が発生 〇 正常な挙動
応答の構成が丁寧・論理的 〇 GPTクオリティ
実行環境を明かさない方針に従う 〇 ポリシー反映済

🔧 技術的な補足

  • GPT‑OSS は文脈解釈・言語生成の質が非常に高く、GPT-3.5クラス以上とも言われています。
  • 20Bは13GB以上のモデルサイズなので、ローカル推論の中でもかなり高性能

追加設定(API化、Web UI接続など)

💡 Tips(知っておくと便利)

  • /exit:終了
  • /help:操作コマンドの一覧
  • 上矢印キー:前の入力履歴を呼び出し可能(便利)

🚀 これでできること

  • インターネット不要でチャット(完全オフライン)
  • ローカルファイルとの連携や学習も可能(スクリプト次第)
  • APIモードで自作アプリに組み込み可能(ollama serve

user icon
性能は劣っても、ローカルで動くのは凄いですね。
しかも回答は結構早い。

ai icon
本当にそうですね、あなたが感じた通りです。

🧠 性能は若干落ちても「ローカルで動く」メリットは絶大

✅ 主なメリット

特徴 内容
🛡 完全オフライン ネットに繋がなくても利用可。プライバシー保護◎
高速応答 軽量モデルでも、ローカルなので「API遅延ゼロ」
🔧 自由度が高い チューニング、カスタムプロンプト、モデル差し替え可
💸 コストゼロ 毎回のAPI課金が不要、使い放題
🧩 連携が柔軟 ローカルツール・アプリ・データと組み合わせ放題

🚀 回答が早い理由

  • ローカルメモリにモデルをキャッシュするので、2回目以降の応答はかなり高速
  • HTTP API 経由ではなく、直にローカルプロセスとやり取りしているためラグが少ない
  • GPT-OSSの20B版は最適化された推論速度も特徴の1つです

🎮「実用としてどこまで使えるか?」

用途 実用性 コメント
雑談・QA GPT-3.5並の品質をローカルで体感可能
プログラミング補助 ◯〜◎ コーディングヘルプ、簡単なコード生成は得意
翻訳・要約 GPT-4には劣るが精度は高め
創作支援(小説など) 特に指示が丁寧だと構成もきれいに
専門性の高い質問 学習データの限界はあるため精度は下がることも

💡 さらに活用したいなら

  • ollama serveOpenAI互換API を立てて、VS Code, Typora, Notionなどと連携もできます
  • Web UI(ex. Open WebUI、Jan)と組み合わせれば、GUIチャットも可能

🔚 結論

GPT-OSS 20B、ローカルにしては異常に優秀。 精度が少し落ちても、「自分のマシンで、好きなだけ、無料で使える」価値は圧倒的です。

今の環境、大切に育ててください。なにか組み込みたいことや、連携アイデアがあればいつでも相談を。
これはもう、立派なローカルAI研究室です(´・ω・`)✨

2. LM Studio を使う

インストール




起動






  • GUIベースで視覚的に操作でき、直感的で簡単。
  • コマンド例:
lms get openai/gpt‑oss‑20b
  • インストール後はそのままチャットやAPIが利用できます。(LM Studio, Codecademy)

3. Jan アプリを使う(超簡易)

  • 約5分でセットアップ完了。GUIながら非常にスムーズ。
  • インストール→モデルを選択してダウンロード→すぐチャット可能に。(jan.ai)

4. Transformers + Hugging Face を使う

  • APIや自作コードと親和性が高く、自由度あり。

  • Pythonコード例:

    from transformers import pipeline
    pipe = pipeline("text-generation", model="openai/gpt-oss-20b", device_map="auto")
    
  • OpenAI互換のサーバーも構築可能。(Codecademy)

5. 公式 GitHub(PyTorch/Triton 実装)を利用

  • GPUや最適化レベルに合わせて自前構築が可能。
  • 参考実装、quantizedモデルを含めて柔軟に使えます。(GitHub)

システム要件の目安

モデル 必要メモリ 使用可能環境
gpt‑oss‑20b ≥16 GB RAM(VRAMでも可) 一般PC、ノートPC、Macなどに適応 (TechRadar)
gpt‑oss‑120b ≥60–80 GB RAM/GPU メモリ ハイエンドGPU(例:NVIDIA H100)必要 (TechRadar, cincodias.elpais.com)

まとめ

  • gpt‑ossはローカルでも利用可能

  • 簡単に試したいなら:Ollama、Jan、LM Studio

  • コードと統合したいなら:Hugging Face / Transformers

  • 最適化されたカスタム構成をしたいなら:公式 GitHub 実装

  • wired.com

  • TechRadar

次回記事ネタ

  • GPT-OSSのプロンプトチューニング実践(簡易LoRAとか)
  • LM StudioでAPIサーバとして立ててみる(外部アプリ連携)
  • GPT-OSS vs Mistral / LLaMA 比較レビュー
  • 低スペックPCでどこまで使えるか検証してみた