ローカルPC上で外部APIを使わずにチャットLLMを動かしたくなったので、
Ollama + OpenWebUIの構成で一通りセットアップしてみました。
本記事では、
- LAN内においてブラウザでローカルAIチャットが使える
- まずは「動くところまで」
をゴールに、最小構成での導入手順をまとめます。
1. 構成
構成は下記の通りです。割と一般的と思います。
- チャットサーバー:OpenWebUI
- LLMサーバー:Ollama
- LLMモデル:gpt-oss:20b
- ベースOS:Linux
- 他:Docker、WEBブラウザ
OpenWebUIは「ブラウザUI+簡易ワークフロー管理」まで面倒を見てくれるため、
まずは手軽にローカルLLMを触る用途に向いています。
OllamaはAIモデル管理が手軽で外部接続APIの提供を行います。
現状スタンダードです。
LLMモデルは選択肢は様々です。gpt-oss:20bはそれなりに重いモデルです。
GPUメモリが少ない場合は、7b~8b系のモデルに置き換えてください。
2. 導入手順:Ollama + LLMモデル(gpt-oss:20b)
インストール
まずはLLMサーバー(Ollama)をインストールします。
LLMモデルも合わせてダウンロードします。手順は下記。
# Ollama本体:
curl -fsSL https://ollama.com/install.sh | sh
# モデルDL:
ollama pull gpt-oss:20b
# 起動:
ollama run gpt-oss:20b
※gpt-oss:20bが重い場合、llama3.1:8bやqwen2.5:7bに置き換えてください。
サービス状態確認&管理操作
ollamaの稼働状況の確認と操作コマンドは下記の通りです。
状態確認でactiveと表示されればOKです。
- サービスの状態確認:
systemctl status ollama - サーバ再起動:
systemctl restart ollama - サーバ起動(手元でログ確認):
ollama serve - サーバ起動:
systemctl start ollama - サーバ停止:
systemctl stop ollama - 設定ファイルを再読み込み:
systemctl daemon-reload
外部からの接続許可
チャットサーバーとの接続を行うための設定です。
systemctl edit ollamaで下記を追記
[Service]
Environment="OLLAMA_HOST=0.0.0.0"
Environment="OLLAMA_ORIGINS=192.168.*"
Environment="OLLAMA_FLASH_ATTENTION=1"
Environment="OLLAMA_KEEP_ALIVE=-1"
※OLLAMA_ORIGINSのアドレスはLAN環境にあわせる
※必須なのは上2項目のみ。下2項目は別機能の設定なので任意。
※実際に編集されるファイル:
/etc/systemd/system/ollama.service.d/override.conf
接続確認
http://<PCのIP>:11434/api/tagsでモデルの一覧が取得できればOK
※外部接続に失敗した場合は先のサービス状態確認&管理操作から
「設定ファイルの再読み込み」と「再起動」を試す。
3. 導入手順:OpenWebUI
インストール&起動
続いてOpenWebUIのインストールです。Dockerを使います。
- OpenWebUIダウンロード:
docker pull ghcr.io/open-webui/open-webui:ollama - 起動:
docker run -d -p 8080:8080 --restart always --gpus=all \
--name open-webui \
-v open-webui:/app/backend/data \
-v open-webui-ollama:/root/.ollama \
ghcr.io/open-webui/open-webui:main
※-vオプションで指定しているモデルの保存場所は環境により異なります。
※--gpus=allはGPUを使う場合に必要。CPUの場合は削除。
起動確認
- ブラウザからアクセス:
http://<PCのIP>:8080/ - 初回接続時はアカウント作成などが求められます。(外部には漏れません)
Ollamaとの接続設定
Ollamaとの接続・連携のため、UIから設定を行います。
右上のアカウントアイコンから、以下のメニュー。
→管理者パネル→設定→接続→Ollama API接続の管理→+ボタンクリック
設定内容は次の通り。
- 接続タイプ:外部
- URL:http://:11434/
- 右側の丸矢印アイコンをクリックして接続確認
- 緑のメッセージが表示されればOK。赤はNG
- 以下の設定はデフォルトのまま
4. 動作確認
Ollamaとの接続確認ができたら「新しいチャット」から会話してみます。
以下、実践例。
プロンプト:君、稼働してる?
回答:はい、稼働しています!😊 何かお手伝いできることがあれば教えてくださいね。
5. まとめ
以上でローカルPCでのAIチャットの立ち上げ手順は完了です。
一度この構成を作ってしまえば、
- APIを叩いて遊ぶ
- RAGを組む
- 社内ツールに組み込む
といった実験が気軽にできるようになります。
特に内部構造を理解しつつAIを活用していきたい方にはおすすめです。
(しかし、私も学習中です)