ローカルLLM構築:Open WebUIのインストールとOllamaとの接続

OpenWebUIに今更ながら感動した記事を書いてから、設定を触ってみたりしてたんですがー。

色々なソースを参照しながら構築したせいか、リソースだけが減っていく状態にw

動かしたいものが動かない状態となってしまったので。

Open WebUIのドキュメントを元に、再度インストールし直すことにしました。

・Ollamaのインストール
・Docker上にOpen WebUIをインストール
・コンテナの実行
・Open WebUIにアクセス
・Ollamaに接続

という感じで、MACに構築していきます。

Ollamaのインストール

LLMをローカル環境で実行するオープンソースソフトウェアの、Ollamaをインストールします。

これだけでもAIと会話できますが。

主にモデルの管理などを行う目的で入れます。

今のところ、Open WebUIを使うならOllamaを併用する方が便利みたいです。

ローカルLLMならこの組み合わせか、LM Studioのどちらかが良さそうです。

両方使って見た感じ、オープンソースのOpen WebUI+Ollamaの方が色々とできそうだなと。

選んで今に至ります。

Docker上にOpen WebUIをインストール

私はすでにインストールしてあるDocker Desktopを利用します。

インストールしてなければ、以下のリンクから。

ターミナルからdockerを起動しようかと思ったんですが。

“command not found"の表示。

んん??

調べてみると、どうもパスの問題らしいんですが。

とりあえずOpen WebUIのインストールだけ済ませたいなと思ったのでー。

Dockerのターミナルを直接使うことに。

docker desktopの右下にあるCLIをクリックすれば、Dockerでターミナルを使えます。

ターミナル起動
どこで開くかわからなくなったので、備忘録として載せておきます。
Open WebUIのインストール中です。

まずはGitHubからイメージを取得します。

docker pull ghcr.io/open-webui/open-webui:main

これをターミナルで実行すると、ダウンロードが始まります。

コンテナの起動

ダウンロードが終わったら、以下のコマンドでコンテナを起動します。

docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:main

実行後、docker desktopで起動を確認しましょう。

コンテナの起動

左メニューの「Containers」を選択し一覧を表示。

次に、「open-webui」行の再生ボタンを押せば起動中のコンテナを確認できます。

NvidiaのGPUを利用している場合は、以下のコマンドで実行するそうです。

docker run -d -p 3000:8080 --gpus all -v open-webui:/app/backend/data --name open-webui ghcr.io/open-webui/open-webui:cuda

このあと、Open WebUIの初回起動(アクセス?)時にログインを求められますが。

それを回避するなら、以下のコマンドで実行。

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

ただし、シングルユーザーモードでの利用となり、他ユーザーのアカウントを作成できなくなるみたいです。

複数人での利用を考えている場合には、実行しないようにしましょう。

で、Open WebUIの自動更新設定もついでに。

docker run --rm --volume /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --run-once open-webui

前回使用していた時に、アップデートの通知が毎回あったことを思い出し。

せっかくなので。

通知が気にならないとか、あくまでローカル利用で済ませる場合は、特にいらないかもしれないですね。

アップデートも自己責任です。

Open WebUIにアクセスする

コンテナを起動したら、Open WebUIにアクセスします。

以下のURLまたは、dockerの「open-webui」のコンテナの右側にある「3000:8080」からもいけます。

http://localhost:3000/

そうするとブラウザが立ち上がり。

Open WebUIのアイコンが表示されたあと、サインイン画面が表示されます。

ログイン画面
塗りつぶすために赤色になっています。本来は白です。

もしサインイン画面に移動しない場合は、再読み込みをしてみてください。

ここで入力する情報は初回の登録なので、お好きなメールアドレスとパスワードを入力すればOKです。

そうすると、見慣れたチャットUIが表示されます。

サインイン成功

以前の設定が残っていたので、gpt-oss:20bになってます。

初期モデルなどのインストールが終われば、ローカルLLMとチャットできるようになりますね。

2回目なのであれですが、1回目は感動しました。

「おぉ・・・自分のMacと話してる・・・」というような感じでw

Ollamaに接続する

接続すると言っても、ドキュメントにある通り自動で接続試行してくれます。

その後、OllamaをOpen WebUIから管理できるようになります。

Open WebUIを使うと良く訪れることになる「管理者パネル」へ移動します。

左下のユーザー名をクリックすると開くメニューから移動できます。

管理者パネルへ

Open WebUIの設定は、この「管理者パネル」と「設定」の2箇所あるので、名称で覚えておくと迷いません。

設定からも管理者パネルへの誘導はありますが。

で、管理者パネル内の「設定」タブ➾左メニュー「接続」を選択します。

管理パネル操作

そして、「Ollama API」の下のURLの右側にあるダウンロードボタンのようなものをクリックします。

すると、Ollamaの管理画面が開きます。

Ollamaの管理画面

この管理画面の項目の通り、Ollamaでインストールしているモデルの管理を行うことができます。

Open WebUIがOllamaにモデルのダウンロードなどを促してくれるという、連携のようですね。

モデルのダウンロードだけなら、チャット画面上部のモデルセレクターからも可能です。

モデルセレクター

これで、ローカル上で色々なモデルを試すことができますねー。

どんなモデルがあって、どんな特徴があるかは以下のようなサイトを参考にしています。

ここから色々と

これで、Open WebUIを再インストールできました。

生成AIを使ってやってみたいことが多いので、とりあえず自分専用のAIを構築しようと思い。

手を出したのが1回目ですがー。

その後にドキュメントを見つけたので、どうもうまく設定できなかったんですよね。

なので、ここからドキュメントを元に色々とやってみようと思います。

このブログや記事の内容について、疑問に思っている事はありますか?

もしあれば、どんなことでも構いませんので、コメントを残していただくか、問い合わせフォームよりご連絡ください。

著者プロフィール
ぽんぞう@勉強中

はじめまして、「ぽんぞう@勉強中」です。
小企業に一人情報部員として働いている40代のおじさんです。IT技術での課題解決を仕事にしていますが、それだけでは解決できない問題にも直面。テクノロジーと心の両面から寄り添えるブログでありたいと、日々運営しています。詳しくはプロフィールページへ!