目的
Raspberry Pi 5 が買えたので軽量LLMであるTinyLlamaを使えるようにしてみた。
すべて参考にした記事のままなので新しいことは特にないです。
自分メモのようなものです。
環境
本体 : Raspberry Pi 5
メモリ : 8GByte
Raspberry Pi 5 の初期設定
OSのインストールまでは省略。
その後TinyLlamaには関係ないけど下記もインストール&設定した。
更新
$ sudo apt update
$ sudo apt upgrade
その後再起動。
日本語入力
$ sudo apt install fcitx5-mozc
$ im-config -n fcitx5
Chromiumの入力設定
Chromiumのtext inputのサポートバージョンが古いせいでChromiumではfcitx5を使ってもそのままでは日本語入力できないとのことなので、メニューからの起動で下記の引数がつくように設定した。
$ chromium-browser --gtk-version=4
docker
$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh
$ sudo gpasswd -a $USER docker
TinyLlamaのインストール
モデルのダウンロード
$ mkdir tinyllama
$ cd tinyllama
$ wget https://huggingface.co/TheBloke/TinyLlama-1.1B-Chat-v1.0-GGUF/resolve/main/tinyllama-1.1b-chat-v1.0.Q4_K_M.gguf
ライブラリのインストール
$ python -m venv llama2
$ llama2/bin/pip install llama-cpp-python
スクリプトの作成
llama2.py というファイルを下記の内容で保存する。
import sys
from llama_cpp import Llama
llm = Llama(model_path="tinyllama-1.1b-chat-v1.0.Q4_K_M.gguf", verbose=False)
output = llm("<user>\n" + sys.argv[1] + "\n<assistant>\n", max_tokens=40)
print(output['choices'][0]["text"] + "...")
実行してみる
$ llama2/bin/python llama2.py "How tall Mt. Fuji?"
Mt. Fuji is approximately 3,776 meters (12,384 feet) tall....
$ llama2/bin/python llama2.py "富士山の高さは?"
The height of Mount Fuji is unknown....
$ llama2/bin/python llama2.py "How tall Mt. Everest?"
Mt. Everest is a mountain located in the Himalayan region of Nepal, and it stands at approximately 29,029 feet (8841 meters)...
$ llama2/bin/python llama2.py "How to use python venv"
1. Creating a new virtual environment:
python -m venv env_name
2. Activating the virtual environment:
ちゃんと5秒くらいで回答がされていることを確認しました。
日本語がうまく認識できないわけではなさそうだけど、富士山の固有名詞が分からないのかな?
ラズパイでここまで動くのはすごいですね。
スクリプト内のmax_tokensを100にすると11秒くらいかかりました。
$ llama2/bin/python llama2.py "How to use python venv"
1. Create a virtual environment:
python -m venv my_env
2. Activate the virtual environment:
source my_env/bin/activate
3. Install required packages:
pip install packages here
4. Test package installation:
pip install packages here
5. Run your...
参考URL
Raspberry Pi 5上で軽量LLM、TinyLlamaを動かしてみる
https://qiita.com/kazuhitoyokoi/items/66e8c9e1b447a2850ba7