社内利用者が Open WebUI でモデルを選択できるようにするための、管理者向け手順です。Apple Silicon Mac 上の LM Studio と、Docker で動く Open WebUI を組み合わせます。
まず Docker Desktop for Mac を導入して起動し、ターミナルで docker version を確認します。Docker Desktop および Open WebUI の利用条件は、組織での利用に合うか確認してください。
新規構築する場合のみ、次のように起動できます。既存の open-webui コンテナがある場合は、そのまま再実行せず既存設定を確認してください。
openssl rand -hex 32
表示された値を、下の 生成した秘密の値 に置き換えます。値は公開せず保管し、コンテナを作り直す際も同じ値を使います。
docker run -d \ --name open-webui \ -p 3001:8080 \ --add-host=host.docker.internal:host-gateway \ -v open-webui:/app/backend/data \ -e WEBUI_SECRET_KEY='生成した秘密の値' \ --restart always \ ghcr.io/open-webui/open-webui:main
この例の :main は更新されるタグです。継続運用では、検証済みのリリースタグやダイジェストに固定し、バックアップを取ってから更新してください。open-webui ボリュームにはアカウント・履歴・設定等が保存されます。削除しないでください。
同じ Mac のブラウザで http://localhost:3001 を開き、初期管理者を登録します。初期設定は管理者が行い、一般利用者の登録・承認方針も設定します。
社内の他端末へ案内する URL は、サーバー名・ネットワーク・ファイアウォール・HTTPS や SSH 転送の構成に合わせて決めます。localhost は各利用者自身の端末を指すので、そのまま配布しないでください。本例のポート公開は他端末からも到達し得るため、公開範囲を社内の必要範囲に制限します。
| 検索する配布名 | 今回の確認 |
|---|---|
lmstudio-community/Qwen3-0.6B-MLX-4bit | 軽量な試用モデル。Kisagai 上で日本語応答を確認。 |
lmstudio-community/Qwen3-14B-MLX-4bit | より大きな比較用モデル。Kisagai 上で日本語応答を確認。画面上の保存サイズは 8.32 GB。 |
上記は今回の実測確認であり、同時利用や長文処理の性能保証ではありません。コンテキストを増やすと必要メモリも増えます。モデルのライセンスも確認してください。
今回表示された到達先は http://192.168.1.197:1234、14B の API モデル識別子は qwen3-14b-mlx でした。IP アドレスは環境によって変わります。LAN 公開は必要な接続元に限定し、LM Studio の認証を有効にする場合は Open WebUI にも対応する API キーを設定します。
管理者アカウントで設定を開き、左メニューの「管理者」内の「AI」→「接続」へ進みます。「サービス」欄の個人用「接続」(ダイレクトコネクション)とは別です。
| 環境 | 接続先 URL の例 |
|---|---|
| 今回の既存設定(動作確認済み) | http://192.168.1.197:1234/v1 |
| Open WebUI が Docker、LM Studio が同じ Mac 本体 | http://host.docker.internal:1234/v1 |
| 別のサーバー上の LM Studio | http://接続可能なサーバー名またはIP:1234/v1 |
Docker 内の localhost はコンテナ自身です。ブラウザで開く Open WebUI の URL と、Open WebUI サーバーから LM Studio へ接続する URL は区別してください。認証なしの LM Studio ではキーを空欄にし、入力が必須の画面ならダミー値を指定します。認証ありなら実際のキーを使用します。
qwen3-0.6b-mlx や qwen3-14b-mlx が表示されるか確認します。必要ならブラウザを再読み込みします。一覧への表示と、メモリへの読み込みは別です。未読み込みモデルの扱いは LM Studio の自動読み込み設定に依存します。最初は使うモデルを明示的に読み込み、切り替え時の待ち時間や同時利用時の負荷を確かめてください。
failed to initialize MTL0 backend は今回 LFM3 の GGUF 版で発生しました。エンジン 2.66.0、GPU オフロード無効、アプリ再起動でも解消せず、原因は未特定です。一方、上記 Qwen3 の MLX 版は動作しました。