🤖

Open WebUIで、ChatGPTとClaudeを月$10で使ってる話

2025/01/06に公開

初投稿です。

私、フリーランスでSEやらせてもらってるんですが、ここ最近は四六時中ChatGPTとClaudeに介護してもらいながら仕事してます。

なので、両方あわせて月$40でも文句はないというか、むしろ感謝して課金していました。

でもやっぱり高いし、どっちかに絞ろうかな〜と悩んでいたときに、知ってしまったのです。

従量課金のAPIを使用してChatGPTとClaudeを使えば、両方使ったままで今より安く済むことに、、、!

そして実際に、この記事で紹介している方法で、私の課金額は月$40から月$10前後まで減りました。

この記事ではOpen WebUIを使用して、API(従量課金)でChatGPTやClaudeを使用する方法の概要をざっくりご紹介します。

(細かい手順は需要があればいずれ)

こんな感じ

この記事でできるようになること

  • 最新の言語モデルを従量課金で使う
  • 様々な種類(OpenAI、Anthropic、Gemini、Ollamaなどなど)の言語モデルが使える
  • ChatGPTっぽい、それなりにモダンなUIでチャットができる

必要になるスキル

じつは万人向けの方法ではないです。
非エンジニアの方には結構難しいかと思うので、最低限必要なスキルを先に列挙しておきます。

  • PythonかDockerが使用できる
  • OpenAIやAnthropicなど、使用したい言語モデル用のAPI Keyが取得できる

これだけでローカルネットワーク(自宅内)では使えます。
外でも使えるようにするには自分でサーバー立てて公開しないといけないので更に難易度が上がります。
(むずかしいのでこの記事には書きません)

主役! Open WebUIの紹介

今回の主役 Open WebUI
オープンソースで無料で使えるChatGPTライクなWebUIです。
APIキーを登録することで様々な種類の言語モデルを使用できます。

同じようなことができるものに、Chatbot UILibreChatというのもあるんですが、Open WebUIはo1-miniやo1-preiewが使えて機能も豊富なので、こちらを使ってます。

ChatGPTのように、画像や音声でのチャットもできます。

個人的に便利だと思っている機能は、会話の途中で言語モデルを切り替えられるところと、AI側のチャットの内容を編集できるところ。
(変な方向に会話が進んだら、微修正できる)

使える言語モデルは非常に多くて、私がよく使っているのは、
gpt-4o, o1-mini, o1-preview, claude-3.5-haiku, claude-3.5-sonnet
あたりですね。
GeminiとかOllamaとかも使えるみたいです。

Funtionsという名前で使用できるモデルを追加する機能があるので、自分が使いたい物があるか確認してみてください!

https://openwebui.com/functions

Open WebUIの使用方法

Open WebUIを使用する方法は2つあります。
Python pipを使用する方法とDockerを使用する方法です。
どちらも公式にのっているコマンドを引用して紹介します。

1.Python pipを使う場合(個人的におすすめ)
コマンド2つで起動できます。

pip install open-webui
open-webui serve

これで、Open WebUIサーバーが起動し、http://localhost:8080 からアクセスできます。簡単!

なお、Pythonのバージョンは3.11以上がいいらしいです。

2.Dockerを使う方法
基本は以下のコマンドで起動すればよさそうです。
ただ、OllamaやGPUを使用する場合は環境変数の設定などが必要そう。
(よくわからんので詳細はこちらを参照ください)

docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

こっちの場合は、http://localhost:3000 からアクセスできます。

Open WebUIが起動できたら、管理者の登録 → API Keyの登録してチャットできるようにしましょう!

OpenAIの言語モデルは、設定 > 接続 > OpenAI APIのところにAPI Keyを登録するだけ。

自分が調べててちょっと分かりづらかったんですが、AnthoropicなどOpenAI以外のモデルはFunction(拡張機能みたいなもの)を追加する必要があります。

Anthoropic系のモデルを使えるようにするFunctionは、ここ で取得できます。

Functionをimportするには、自分が開いているOpen WebUIのURLを入れる必要あり

Functionをimportするには、自分が開いているOpen WebUIのURLを入れる必要あり

Functionが取得できたら、以下の場所にAPI Keyを登録
これでAnthoropic系のモデルも使えるようになるはず!

基本的にはこれでおしまい!
追加で設定すればRAG、Web検索や画像生成などもできるみたいです。
(いずれやりたい)

ただ、このままでは最初に述べた通り、ローカルネットワーク(自宅)でしか使用できません。
なので、私は外でも使えるようにミニPCでサーバーをたてて公開しています。

Open WebUIはデフォルトで、管理者以外のユーザーを登録できないようになっているため、見知らぬ他人に使用されるリスクは(ほぼ)ありません。

ここまでやればほとんどChatGPTやClaudeを使用している感覚と同じようで、いろんなモデルが安く使えますよ!

おわりに

これで今まで以上に、AIにおんぶにだっこしてもらえそうです😊

ありがたや〜

Discussion