4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

gpt-ossをローカルのAPIとして使う24行

Last updated at Posted at 2025-08-07

SS 192.png これでいろいろ遊べるぞ

やりたいこと

gpt-ossを立ち上げて(もちろんローカル環境)、
APIみたいにしてpythonから使いたいのです。

準備物

・パソコン(手元ではUbuntu)
・RTX 3090(手元のグラボ)

WinやMacでもLM Studioさえ動けば同様の手順で動くと思います。
もちろんグラボは高性能なほどよいです。

やること

STEP1 : LM Studioを導入する
STEP2 : gpt-ossを導入する
STEP3 : LM Stuidoをサーバー化する
STEP4 : Pythonから問い合わせる

STEP 1

LM Studioは公開されているLLMをすぐに使える超便利なGUI環境です。
npakaさんの記事などを見て、LM Studioを導入します。

「LM Studio 入門」などで検索すれば、ざっくりとした使用方法なども見つかると思います。

STEP 2

gpt-ossの導入についても、さきほどのnpakaさんの記事で丁寧に紹介されていますので参考に進めます。

gpt-ossは先日発表されたばかりのローカル用LLMで、コンパクトなサイズでありながら、かなりの応答速度と精度のあるオープンウェイト言語モデルです。
このLLMをベースとしてファインチューニングを試すなど、これから様々な研究へと発展していきそうな素材です。

手元の環境では120Bはうごかなかったので、20Bで試していきます。

STEP 3

LM Studioを使えば、基本機能そのままですぐにgpt-ossをチャットボットのように利用することができます。

さらにgpt-ossの出力をTextToSpeachに渡したり、オリジナルゲームに組み込んだりと、自分好みの形で利用するには、コードからAPIのように使えた方が便利です。

それは、LM Studio + gpt-ossをローカルサーバー化することで可能になります。

サーバー化といってもやることは簡単で、LM Studioの緑のプロンプトアイコン(黄色い吹き出しの下)のタブ選び、「Status:Stopped」と書いてあるスイッチをオンにするだけです。

すると、Status:Runningと変化し、gpt-ossがAPIとして使えるようになります。
APIにはhttp://127.0.0.1:1234/v1 でアクセスできるようになったはずです。

STEP 4

PythonからAPI経由で問い合わせてみます。
コードのサンプルは下記のとおりです。

gpt-oss-test.py
from openai import OpenAI

client = OpenAI(
    base_url="http://localhost:1234/v1",
    api_key="dummy_api_key" # api_keyはダミーなので何でもよい
)

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

# 最初のシステムプロンプト(会話の前提や制約。内容は増やせます。)
messages = [
    {
        "role": "system",
        "content": (
            "あなたは知識豊富なメイド型の日本語アシスタントです。"
        )
    }
]

while True:
    user_input = input("YOU > ").strip()
    messages.append({"role": "user", "content": user_input})

    response = client.chat.completions.create(
        model=MODEL_NAME,
        messages=messages
    )

    reply = response.choices[0].message.content.strip()
    messages.append({"role": "assistant", "content": reply})

    print("AI  : " + reply)

もうこれだけで完成です。
(コードの詳細はChatGPTに聞けば教えてくれます。)

gpt-oss-test.pyというファイル名で保存し、そのディレクトリで

python gpt-oss-test.py

と入力して開始してください。

このサンプルコードは、コンソール画面からの会話入力に対して、即座に回答をしてくれる簡易チャットボットです。
性格や会話のルールなども、"あなたは知識豊富なメイド型の日本語アシスタントです。"の部分を変更したり書き足していくことで設定できます。

ロボットの発話システムやゲーム内のキャラとの会話は、これを基本にして作れてしまいそうです。

ネット接続せずにローカルで使えるので、課金を気にせずいろいろな実験を楽しめそうですし、プライベートな情報も扱いやすくなりそうです。

実行例:(設定条件がゆるいので、いかにもGPTっぽい回答)

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?