自分のPCでLLaMAを実行するツールが公開されたのでご紹介します。
LLaMAとは
FacebookでおなじみのMeta社が開発した研究者向けの大規模言語モデルです。
パラメータ数により、4つのモデルがあります。
- 7B(70億)
- 13B(130億)
- 30B(300億)
- 65B(650億)
Dalai
そのツールはこちら。
名前は「ダライ・ラマ」から来ていると思われます。
(中国からアクセスできなさそう ^^;)
早速、環境構築から始めてみます。
なお、この記事を書いているときのDalaiのバージョンは「0.1.0」になります。
(注:毎日のように更新されており、以降の説明はもはや過去のものとなっています)
環境構築
私の環境はWindowsですので、以降、Windowsでの説明になります。
WSL環境の構築
残念ながらWindowsネイティブな環境では動かないので、WSL環境を用意します。
(注:現在は、公式サイトにVisual Studio Communityを使った環境構築方法が載っています)
ここではubuntuを用意します。
(詳細は省略)
環境は最新に更新しておいてください。
sudo apt update
sudo apt upgrade -y
sudo apt dist-upgrade -y
sudo apt autoremove -y
Node.jsのインストール
次にNode.jsをインストールします。
そのため、まずはnvmをインストールします。
sudo apt install curl
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
source ~/.bashrc
その後、Node.jsをインストールします。
nvm install node
pythonのインストール
次にpythonをインストールします。
sudo apt install python3 -y
venvのインストール
さらに、仮想環境であるvenvをインストールします。
sudo apt install python3.8-venv
venvのバージョンは、pythonに合わせてください。
Dalaiのインストール
「Dalai」をNode.jsにインストールします。
以下のコマンドを実行します。
npx dalai llama
(npmパッケージの中身はこちらで確認できます)
なお、このコマンドでインストールされるモデルは「7B」というモデルで、それ以外のモデルもインストールしたい場合は、以下のように指定します。
npx dalai llama 7B 13B 30B 65B
なお、途中のダウンロードや変換処理で失敗したときは、もう一度コマンドを実行してみてください。
これで環境構築は終了です。
おまけ
モデルをダウンロードしてくると、大量にストレージを使ってしまいますが、各モデルのフォルダ内の「consolidated.00.pth」等は削除することができます。
(「ggml-model-f16.bin」「ggml-model-q4_0.bin」等に量子化変換されているため)
実行
では動かしてみます。
まずWebサーバを起動します。
npx dalai serve
(後ろにポート番号を付けることもできます)
次にWebブラウザから「http://localhost:3000」にアクセスします。
右上の「models」で、使用するモデルの変更が出来ます。
なお現在は、残念ながら7Bだと英語でしか会話ができないみたいですし、回答がまともではありません。
おまけ
バックグラウンドでは、以下のようなコマンドが動いているようです。
./main --seed -1 --threads 4 --n_predict 1000 --model models/7B/ggml-model-q4_0.bin \
--top_k 40 --top_p 0.9 --temp 0.8 --repeat_last_n 64 --repeat_penalty 1.3 \
-p "お金持ちになる方法を教えてください。"
まとめ
それほど簡単ではないですが、一応、自分のPCに大規模言語モデルAIを入れて動かすことが出来ました。
API経由での利用もできるようなので、こちらを利用することに意味があるのかもしれません。
追加情報
どんどんバージョンが上がっているdalaiですが、updateは以下のように行えばいいようです。
(以下は、0.3.0に上げる場合)
npx dalai@0.3.0 setup