Docker, Conda を使わないやり方で、自宅のローカル環境で有料サービスみたいな感じでLLMを比較しながら使いたいなと思ってセットアップした時のメモです。。
LLMとしてQwen2.5 を選んだのは「新しいのが出たよ!」と教えてもらったので試してみました。
この記事の環境
・Windows 11
・Python 3.11 + venv
・CUDAなどの機械学習関連ツール導入済み
・DockerとWSL2は使っていません
Open WebUI ってなに?
Web ブラウザで LLM にアクセスして ChatGPT とか Claude みたいにおしゃれに使えるようになる Python のツールです。特にollama から使える登録済みモデルならすぐに使えるようになります。
Open WebUI Open WebUI is an extensible, self-hosted AI interface that adapts to your workflow, all while operating entirely offline.
登録済みでないモデルはOpenAI API互換などで繋げられます。
ollama ってなに?
ローカルでオフラインでLLMを動かすのが得意なツールです。Transformers や LangChain と違ってスタンドアローンアプリなのでPythonは不要です。
ollama Get up and running with large language models.
Qwen2.5 ってなに?
アリババクラウドさんのオープンソース LLM 「Qwen(クウェン)(別名「通義千問(Tongyi Qianwen)」」のバージョン2.5です。プログラム用途のQwen2.5-coderや画像は扱う場合は Qwen2-VL のモデルがあります。
Qwen Alibaba Cloud's general-purpose AI models
Qwen2-VLはOllamaは未対応のよう(2024/10/28)
環境の確認
・ollama for Windows が動く環境(今回は Windows 11)
・ストレージの空き容量(最低でも10GB)
・Open WebUI -- Python 3.11 がおすすめらしい
https://github.com/open-webui/open-webui
Installation via Python pip
Open WebUI can be installed using pip, the Python package installer. Before proceeding, ensure you're using Python 3.11 to avoid compatibility issues.
Open WebUI を Dockerでインストールする方法は公式サイトをご確認ください
セットアップ
ここからはさくさくやって実行だけだと1時間以内で終わるはず?
1.1 ollama for Windows のダウンロードとインストール
インストールが完了すると ollama が起動済みの状態で自動的にプロンプトが開きます。
ダウンロード済みモデルを呼び出す場合は ollama run MODELNAME で使用できます。
例)モデルダウンロードと呼び出し
ollama pull qwen2.5
ollama run qwen2.5
モデルのダウンロードが始まります
pull を実行するとダウンロード済みモデルが更新されます
ollama ですぐに使える LLM モデルはこちらから検索
https://ollama.com/library
1.2 ollama for Windows の動作確認
デフォルトではブラウザで下記にアクセスできます。
http://localhost:11434
メッセージのみの画面が表示されます。ここまで確認できれば次に進みましょ。
2.1 Open WebUI のための venv 環境準備
依存関係を調べるの大変なので新規venv環境を作ることをお勧め。
py --list-paths
python -m venv .venv
python -m venv .venv --clear
py -3.11 -m venv .venv
venv 環境に入って、Pythonのバージョンを確認
cd .venv
scripts/activate
python -V
deactivate
2.2 open-webui のインストール
cd .venv
scripts/activate
python -m pip install --upgrade pip
pip install open-webui
deactivate
完了後、起動コマンドを実行
cd .venv
scripts/activate
open-webui serve
___ __ __ _ _ _ ___
/ _ \ _ __ ___ _ __ \ \ / /__| |__ | | | |_ _|
| | | | '_ \ / _ \ '_ \ \ \ /\ / / _ \ '_ \| | | || |
| |_| | |_) | __/ | | | \ V V / __/ |_) | |_| || |
\___/| .__/ \___|_| |_| \_/\_/ \___|_.__/ \___/|___|
|_|
2.3 open-webui の動作確認
デフォルトではブラウザで下記にアクセスできます。
http://localhost:8080
TCP 8080番はいろんなアプリで使われるので同時起動しないように注意しましょ
日本語環境を自動的に検知しているようですね。
メールアドレス、アカウント、パスワードを適当に入力し、セルフサインアップしてログインします。
ログインすると見たことのある画面が現れます。
使用したい LLM モデルの切り替えは左上のスイッチで行います。
ollama で run されてたらすでに表示されていると思います。
OpenAI API 互換の環境設定については左下のアカウントのアイコンから設定画面に移動できます。
チャットをしばらく使っていないとVRAMからフラッシュされるみたいですね、便利!
それではみなさんも快適な ローカルLLMライフをお楽しみください!