Ollama と Open WebUI を使ってセルフホストの ChatGPT もどきを用意する
Ollama という LLM を動かすためのツールがある。コレを使うと簡単に色々なモデルをインストールできる。
今回は Intel N150 搭載の Ubuntu 機で、CPU モードで軽量な LLM を動かしてみることにする。
まずは Ollama をインストールする。
$ curl -fsSL https://ollama.com/install.sh | sh
インストールはコレだけ。ollama
コマンドが叩けるようになる。続いて、日本語で対話できる軽量な LLM を選択してインストール・起動してみる。
$ ollama run 7shi/ezo-common-t2-gemma-2:2b-instruct-q8_0
なんとコレだけ。ターミナルで対話が出来るようになる。回答は一文字ずつストリーム出力されるので、Intel N150 CPU のみのモードで動いていても、そこそこの速度で回答してもらえている気がする。
- 参考 : Xユーザーのホーダチ | AI✖️Cloud✖️Dev | 外資×ひとり法人さん: 「ミニPCでLLMが動くのか試してみた。 1~3万円でこれは、かなり実用性レベルに近づいてきていると感じる。 https://t.co/Tw9wcRQNYn」 / X
- 参考 : Xユーザーの七誌さん: 「OllamaでGemma 2 2Bを試したら、次に、それをチューニングして日本語性能を向上させたEZO-Common-T2-2B-gemma-2-itを試してみることをお勧めします。アップロードしておきましたので、コマンド一発で使えます。 ollama run 7shi/ezo-common-t2-gemma-2:2b-instruct-q8_0 https://t.co/lnbL9PDg4k」 / X
- 参考 : 7shi/ezo-common-t2-gemma-2:2b-instruct-q8_0
さて、次はコレをブラウザベースで表示できるようにする、Open WebUI というモノを使ってみる。コチラは Docker でサクッと起動できる。個人で利用するだけなので認証機能は無効にしてある。
$ docker run -d -p 3000:8080 -e WEBUI_AUTH=False -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main
http://localhost:3000
にアクセスすると、ChatGPT とよく似た UI が開き、先程 Ollama で起動した 7shi/ezo-common-t2-gemma-2:2b-instruct-q8_0
モデルを使った対話ができるようになっている。
- 参考 : 第825回 ローカルLLMの実行ツールであるOllamaをUbuntuで動かす | gihyo.jp
- 参考 : open-webui/open-webui: User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
- 参考 : ⏱️ Quick Start | Open WebUI
あとはコレを Cloudflare Tunnel などを使って外部公開してしまえば、自分だけのプライベートな ChatGPT もどきの出来上がりである。
正直 Intel N150 CPU だけでの動作だと、ChatGPT のような高速な回答は期待できないが、一生懸命考えて出力している感があって中々可愛らしい。ローカル LLM ならプライバシーにも配慮できるので、NVIDIA GPU 搭載マシンがあればなお快適に利用できそうだ。