gpt-ossが発表されました
OpenAIがApache 2.0ライセンスで利用可能なオープンウェイト言語モデルであるgpt-ossを発表しました。gpt-ossには20bと120bのモデルがあり、軽量な20bのモデルは比較的手軽に試すことができます。この記事では、gpt-oss:20bをOllamaを用いて動かし、カスタム・モデルとしてwatsonx Orchestrateに登録してAgentを動かす手順と、実際の動作の様子について紹介します。
Ollamaの導入とgpt-ossのダウンロード
Ollamaの導入手順については省略します。Ollama起動後、チャットUIからgpt-oss:20bを選択してメッセージを送信することで自動的にダウンロードが始まります。
試しに、IBMについて100文字で説明してとメッセージを送信してみました。筆者の環境はVRAMが8Gのため、非常に動作が遅く、何度も文字数を数えなおして再作成したりと8分ほどかかりましたが、最終的に以下のような回答を得られました。
IBMはアメリカのIT企業で、ハードウェア、ソフトウェア、クラウドサービスを提供し、AI研究も推進する。その歴史は1940年代からで、コンピュータ基盤から量子計算へと進化を遂げた。国際的に影響大も。
文字数を指定したテキスト生成はReasoningモデルと相性が悪いのかもしれません。なお、デフォルトではReasoning effortはMediumで動作し、明示的に設定するにはシステム・コンテキストに"Reasoning:high"などと設定すれば良いようです。
APIでアクセスするための設定
OllamaはいくつかのAPIのエンドポイントを提供しますが、watsonx Orchestrateから利用するエンドポイントは以下の通りです。
今回は、watsonx OrchestrateのDeveloper Editionが動作する別PCのコンテナからアクセスされるため、localhostではなく、192.168.1.1のようなIPアドレスを指定する必要があります。デフォルトではOllamaは別IPからのアクセスは許可されないため、環境変数に以下の2つの変数を追加し、Ollamaを再起動します。(OLLAMA_ORIGINSの値はネットワーク環境に応じて適切な値を設定してください)
- OLLAMA_HOST
値:0.0.0.0 - OLLAMA_ORIGINS
値: 192.168.1.*
custom modelの追加
watsonx Orchestrate側の設定を行います。まず、サーバーとチャットUIを起動します。
orchestrate server start -l -e env
orchestrate chat start
orchestrate env activate local
以下のコマンドでモデルを追加します。
コマンドの詳細についてはこちらを参照してください。
orchestrate models add -n virtual-model/ollama/gpt-oss:20b --provider-config '{"api_key":"ollama","custom_host":"http://192.168.1.x:11434"}'
api_keyについては、何かしらの値を設定する必要があるようです。
Agentでの利用
AgentBuilderよりAgentを作成します。modelリストにgpt-ossが表示されるので選択します。
こんにちはとプレビュー画面からメッセージを送信すると、正しく返答が返ってきました。
Toolの実行も行ってみましょう。
今回はこの記事で紹介した、Kintoneから顧客情報を取得できるToolを追加し、実行しました。こちらも正しくTool呼び出しを行い結果が返ってきました。
langfuseで動作を確認してみました。
2回のLLM呼び出しが行われており、初回の呼び出しに1分19秒、2回目の呼び出しに1分54秒かかっていますが、正しくgpt-ossが呼ばれていることが分かります。
これ以外のパターンでも動作を確認してみましたが、Agentを動作させるためのLLMとしての能力は非常に高いという印象を持ちました。
まとめ
gpt-oss:20bはOpenAIがリリースしたオープンソースのLLMで、比較的軽量ながら、日本語での動作やTool呼び出しを含めてAIAgentを動作させるのに十分な能力を持っていそうです。現時点ではwatsonx Orchestrateが提供するLLMには含まれていませんが、今後の提供モデルへの追加を期待したいところです。
※2025/08/08追記 gpt-oss:120bが利用可能なモデルとして追加されました。ただし、現状Tool呼び出しができないようです。
また、今回Ollamaを使用したように、watsonx OrchestrateはCustomLLMの機能を用いることで外部のLLMと簡単に連携して動作させることが可能です。VRAMが24GのRTX5090などがあれば、非常に高速に動作するようなので、高速なマシンさえあれば、Token使用量を気にせずにオフライン環境での開発も快適に行えそうです。