はじめに
ローカル環境にてLLMをより気軽に試す手段としてollamaというものがあります。
以前から自分のPCで試そうと思っていましたが、中々時間が取れず後回しになっていましたが、環境構築ができたのでその備忘録です。
環境概要
ollama本体はWindows版のバイナリをDLしてインストールしています。
ollama本体はCLIツールなので利便性良くするためにopen-webuiも入れています。
こちらは、WindowsのAnaconda上にPython3.11の環境を作成し導入しました。
ollamaのインストール
- 下記のURLからダウンロードします。
https://ollama.com/download - インストーラの起動
任意のパスにインストールする場合には下記のようにします。
OllamaSetup.exe /DIR="d:\llmtest"
- ollama導入後の動作確認
導入直後の状態では言語モデルが入っていません。
次のコマンドでインストールします。
ollama run ollama run granite3.1-dense:2b
この時モデルはアカウントのホームディレクトリにダウンロードされます。
変更する場合はOLLAMA_MODELSという環境変数に値を入れる必要があります。
私はCドライブの空き容量が少ないのにホームディレクトリに入れてしまったので後日試します。
今回はIBMのLLMであるgranite3.1-dense:2bを導入しました。
利用可能なモデルは以下のURLから確認できます。
https://ollama.com/search
最近話題の中国のLLMであるdeepseekやqwenもリストされていますので追々試してみます。
ollama run
を入れた後、プロンプトが表示されるので、何か適当に聞いてみましょう。 - AirGappedでのLLM動作確認
オフライン状態でもLLMが利用できることを確認しました。
問題なく動くようです。
Open-webuiのインストール
- Python3.11の環境を作成します
私は環境の管理がしやすいAnacondaを利用しています。(この検証は私用PCでの個人的な検証です)
コマンドプロンプトを開き、以下のコマンドを実行します。
pip install open-webui
WebUI関連のモジュールがダウンロードされ準備されます。 - open-webuiの開始
次のコマンドでWebUIが開始されます。
open-webui serve
- open-webuiの起動画面
管理アカウントの作成が必要になります。
必要な情報の入力をしましょう。
- 動作確認
先ほどDLしたモデルがリストされるので会話してみましょう。
会話時のGPU負荷とVRAM使用状況です。私はRTX3060 12Gを使っています。
まとめ
ollamaとOpen-webuiを利用することで、かなり簡単にLLMのローカル環境を構築できました。
今後はRAGとの連携なども試してみます。
LLMの活用に興味はあるが、データの外部接続やクラウド利用に制限のある状況下で比較的安価なコンシューマー向けGPUでもLLMを試すことができるのは良いと思いました。
私はまずは、モデルのDL先を指定ディレクトリに変えてみます。