2026年7月21日火曜日

Open WebUI

Gemma(4)からの続き


図:Open WebUIの画面(http://127.0.0.1:3000/


Ollamaを使って,オープンソースLLMの各ローカルモデルを立ち上げる方法はなんとなくわかった。そこで問題になるのは,提供されるモデルの最終学習時点以降の情報をどうやってとりこむのか,つまり,外部のウェブソースにアクセスできるのかということだ。

これについて,調べたところ,Ollama−Open WebUI から,いくつかの検索モジュールを導入すればよいらしいことがわかった。さっそく,ChatGPTの指示に従いながらインストールしてみた。うーん,最終的にOKというまでには至らなかった。残念。

A(ChatGPT):
ここまでを、成功した流れだけに絞って整理すると次の通りです。

(1) Ollama と Gemma モデルの動作確認
% ollama --version
% ollama list
$ollama run gemma4:12b-it-qat "日本語で一文だけ自己紹介してください。"
意味:
 Ollama が入っているか、バージョンが何かを確認した。
 gemma4:12b-it-qat` が手元にダウンロード済みか確認した。
 実際に Gemma 4 12B QAT モデルがローカルで推論できることを確認した。
結果:
 ollama version is 0.30.8
 gemma4:12b-it-qat    7.2 GB
 なので、Ollama と Gemma 側は正常。

(2) Colima / Docker の動作確認
% colima status
意味:
 Docker を動かすための Colima 仮想環境が起動しているか確認した。
結果:
 colima is running using macOS Virtualization.Framework
 runtime: docker
 なので、Colima は正常に起動中。

(3) Docker コンテナ一覧の確認
% docker ps -a
意味:
 現在ある Docker コンテナを確認した。
結果:
 "hello-world"だけがあり、"open-webui" はまだ存在していないことを確認した。

(4) Open WebUI コンテナの起動
% docker run -d \
  -p 3000:8080 \
  --add-host=host.docker.internal:host-gateway \
  -e OLLAMA_BASE_URL=http://host.docker.internal:11434 \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --restart always \
  ghcr.io/open-webui/open-webui:main
意味:
 Open WebUI を Docker コンテナとして起動した。
 Mac 側の `3000` 番ポートを、コンテナ内の `8080` 番ポートにつないだ。
 Open WebUI から Mac 本体側で動いている Ollama に接続できるようにした。
 "open-webui"という名前でコンテナを作った。
 設定やユーザーデータを "open-webui" という Docker ボリュームに保存するようにした。
 Mac再起動後などにも自動再起動する設定にした。

(5) Open WebUI コンテナの起動確認
% docker ps -a --filter name=open-webui
意味:
 "open-webui" コンテナが存在し、正常に動いているか確認した。
結果:
 STATUS: Up ... (healthy)
 PORTS: 0.0.0.0:3000->8080/tcp
 なので、Open WebUI は正常に起動していた。

(6) ブラウザから Open WebUI を開く
web: http://127.0.0.1:3000
意味:
 Mac上で動いている Open WebUI に Safari からアクセスした。
 localhost ではなく 127.0.0.1 を使うことで、ローカル接続を明示した。
結果:
 Open WebUI の初期画面が開いた。

(7) Open WebUI の管理者アカウント作成
意味:
 初回起動時に、名前・メールアドレス・パスワードを入力した。
 この最初のユーザーが Open WebUI の管理者になる。
 これは Ollama や Tavily のアカウントではなく、Open WebUI ローカル環境用のログイン情報。

(8) Open WebUI から Gemma を実行
Open WebUI 上でモデルとして
gemma4:12b-it-qat
を選び、
「日本語で一文だけ自己紹介してください。」
を実行した。
意味:
 Open WebUI から Ollama に接続し、Ollama上の Gemma モデルを呼び出せるか確認した。
結果:
 Gemma が日本語で応答した。
 したがって、
 Open WebUI → Ollama → gemma4:12b-it-qat
 の接続は成功。

(9) Tavily API Key の取得
Tavily公式サイト](https://tavily.com/)にアクセスし、アカウントを作成してAPIキーを取得
意味:
 Web検索用の外部検索APIとして Tavily を使うため、Tavily のサイトで API Key を取得した。
 このキーは Open WebUI が Tavily に検索要求を送るための認証情報。

(10) Open WebUI に Tavily を設定
Open WebUI の管理画面で、おおむね次の設定を行った。
Admin Panel
→ Settings
→ Web Search
→ Enable Web Search: ON
→ Web Search Engine: tavily
→ Tavily API Key: 取得したキーを入力
→ Save
意味:
 Open WebUI に「Web検索が必要なときは Tavily を使う」と教えた。
 ただし、推論そのものはローカルの Gemma が行う。
 外部に出るのは検索クエリや取得URLなど。

(11) 現時点の到達点
成功している部分
MacBook Air M1
→ Colima / Docker
→ Open WebUI
→ Ollama
→ gemma4:12b-it-qat
ここまでは正常。
設定済みの部分
Open WebUI
→ Tavily API Key
ただし、直近のテスト回答を見る限り、Gemma はまだ実際のWeb検索結果を読まず、自分の学習済み知識だけで答えていた。



0 件のコメント: