見出し画像

【ローカルAI】LM Studio + Open WebUIでローカルAIチャットを作る方法

この記事はLM Studio + Open WebUIを使って、ローカルAIチャットを作る方法だよ。今回はローカルネットワーク環境(自宅内)のみで動作することを目指すから外出先などでは使えないから注意してね。

概要

PCにLM Studio + Open WebUIをセットアップして、AIチャット環境を構築するよ。ローカルネットワーク環境(同じネットワーク内)のPCやスマートフォンからアクセスできるAIチャットを実現するための手順をまとめてみたよ。


準備

■ 環境構成

今回はノートPCにLM Studio や Open WebUI環境をセットアップするよ。AIチャットを利用する際はブラウザ経由で接続するよ。別のPCやスマホからアクセスすることができるよ。

AIチャットの性能は、使用するAIモデルの性能や、PCの性能によって左右するので注意してね。当然高性能なモデルを高速に動作させるためには高性能なPCが必要になるよ。また、動作させるためには、常にPCが動作している必要があることも注意してね。

■ システム構成

今回はAIモデルを動作させるためにLM Studioを使用するよ。AIチャットを使うためのインターフェースはOpen WebUI、インターフェースを動作させるためにDockerを使用するよ。

  • LM Studio: AIモデルをPC上で動かす

  • Open WebUI: ローカルAIチャットの画面(インターフェース)

  • Docker: Open WebUIを動かすための仮想環境



環境構築手順

ステップ1: Dockerのインストール

まず、Open WebUIを動かすためにDockerをPCにインストールするよ。

1.Docker Desktopをダウンロード

画像

Docker公式サイトから、お使いのOS(Windows/Mac)に合ったインストーラーをダウンロードしてね。私はWindowsだからWindows版ををインストールするしているよ。

2.インストール

ダウンロードしたファイルを実行し、画面の指示に従ってインストールしてね。

画像
画像
画像


3.起動

Docker Desktopを起動するよ。

画像
同意が必要だね
画像
ここら辺は今回は必要ないから「Skip」を選択

アップデートが必要と出てくるので、Windowsに戻ってターミナルを開くよ。”Windowsマークを右クリック”→”ターミナル(管理者権限)を左クリック”

画像

ターミナルで以下の文字を入力してエンター!

wsl --update
画像

終わったらとりあえずDockerのインストールは完了



ステップ2: LM StudioでAIサーバーを起動

次に、ローカルAIを動作させるLM Studioを準備するよ。基本的なインストールは終了している前提で進めるよ。インストール手順を知りたい人はこっちを見てね。

1.モデルのダウンロード

今回は試しに以下の4つをインストールしているよ。基本的には1つあればいいから好きなモデルを適宜追加してね。

画像

2.LM Studioのサーバー設定

LM Studioのサーバー設定をするよ。左の上から2つ目、緑色の">_"マークの開発者の項目を開くよ。

画像

Status: Running”をONにするよ。またその右のSettingsは適宜変更してね。今回はローカルネットワークで提供を”ON”に変えているよ。

そのまま右を見ると ”htttp://xxx.xx.x.xx:xxxx” (←noteが無駄にURL判定して記事が公開できなるから無駄な大文字表記)があるね。これがローカルネットワークから見たときのこのPCやLM-Studioの接続先だよ。(自宅内のローカルネットワークでの話だから自宅の外との通信とは関係ないよ。)

画像

ちなみに、”未使用時のJITロードモデルを・・・” の時間を短くすると。アクセスされていないときに自動的にモデルをアンロードするよ。あまり短いと毎回ロードされて待たされちゃうから適宜調整してね。



ステップ3: Open WebUIコンテナの起動

Dockerを使って、チャット画面(Open WebUI)環境を作るよ!

1.ターミナルを起動
”Windowsマークを右クリック”→”ターミナル(管理者権限)を左クリック”。これでpowershellを開けるよ。

2.起動コマンドの実行

以下のコマンドをコピーして、ターミナルで実行してね。

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

-p 8080:8080 の部分は、PCの8080番ポートとコンテナの8080番ポートを繋ぐための設定だよ。これをつけないとうまく動かなかったからつけているよ。

画像

Dockerの画面を見ると、こんな感じで“open-webui”が追加されているよ。右のActionsで停止させることもできるよ。



ステップ4: Open WebUIとLM Studioの連携

最後に、Open WebUIの設定を変更してLM Studioと接続するよ。

1.PCのIPアドレスを調べる

いろいろやり方があるけど、一番簡単なのはタスクマネージャーを開いてネットワークから今のIPアドレスを調べる方法かな?今回だと(192.168.0.16)だね。

画像

2.Open WebUIにアクセス

PCのブラウザ(ChomeとかEdgeとか)でアドレスバーに http://localhost:8080
を入れて開くよ。

※localhostで開かないときは、IPアドレスに置き換えてみてね!

画像


3.初回アカウント登録

管理アカウントを設定するよ。といっても、これはDocker上で動いているだけだけら、メールアドレスとかは適当でOK

"mail@test.com"みたいなほんと適当なので大丈夫だよ!

登録したら登録したメールアドレスとパスワードでログインしてね!

画像


4.接続設定

管理アカウントでOpen WebUIとLM Studioを連携させる設定をするよ。
上のメニューに”設定”があるからそれを選択

上の”設定”を選んで左の”接続”を選択。

OpenAI APIのところにある”OpenAI API接続の管理”を選択して以下のURLを追加。(※IPアドレス部分はさっき確認した自分の環境に合わせてね)

192.168.0.16 ➡ IPアドレス
1234 ➡ LM Studioのポート設定の1234の部分だよ。
/v1 ➡ OpenAI APIとして認識させるためには必要みたい!

http://192.168.0.16:1234/v1
画像

5.モデルの設定

接続の下のモデルの項目を開くとLM Studioにインストールしたモデルが表示されているよ。使いたいモデルは右のボタンでONにしておこうね。

画像

チャット画面に戻って左上からモデルを選択してあげれば使うことができるよ!

画像



ステップ5:スマホからアクセス

1.スマホをPCと同じネットワーク(Wi-Fi)

携帯回線では別のネットワークになってしまうからアクセスできないから注意してね。

2.ブラウザで接続

ブラウザを開くよ。

http://192.168.0.16:8080

192.168.0.16や8080は環境に合わせてね。

192.168.0.16 ➡ PCのIPアドレス
8080 ➡ Dockerを起動したときのコマンドの番号(ポート番号)

3.ログイン

管理者アカウントでログインするか、もしくはPCの管理設定で、アカウントを追加しておいてログインするよ。

画像

これでスマホからもアクセスすることができるよ✨✨✨





いいなと思ったら応援しよう!

この記事が参加している募集

コメント

コメントするには、 ログイン または 会員登録 をお願いします。
日常のひとりごとを書いていこうと思うよ。メタバースやVRChatに関する記事は https://note.com/kotoha_siro_page で毎日投稿しているよ!
【ローカルAI】LM Studio + Open WebUIでローカルAIチャットを作る方法|ことはしろのひとりごと
word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word word

mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1
mmMwWLliI0fiflO&1