AndroidタブレットでローカルLLMのllama.cppをTermux上でビルドして軽量高性能モデルPhi-2をサーバモードで起動して遊んでみた。メモリさえあればそこそこちゃんと動いて驚いた。LLM禁止職場へどうぞ
- kapper1224
- 3557
- 26
- 1
- 17
AndroidタブレットにTermux入れて its-pointless repo追加してからgccとcmake入れてllama.cppをgit cloneしてmake。無事サーバー版llama.cppを起動してから小型モデルのphi-2を動かした。 メモリ3.6GB程度。Androidでも完璧 pic.twitter.com/bI6Adi0sH1
2024-01-02 10:22:38AndroidでTermuxとllama.cppを動かす方法はこちらを参考。感謝 reddit.com/r/LocalLLaMA/c…
2024-01-02 10:24:01まずTermuxを入れたら termux-setup-storage で内部ディスクをマウント 次にgccを入れるために its-pointless repoを追加する curl -LO its-pointless.github.io/setup-pointles… bash setup-pointless-repo.sh pic.twitter.com/AZxE3bBzEv
2024-01-02 10:30:42次にaptでパッケージを追加 apt update apt install gcc-11 git cmake clang git clone github.com/ggerganov/llam… cd llama.cpp cmake . make pic.twitter.com/GH5Va0XlZu
2024-01-02 10:35:32llama.cppのmakeが完了したらAndroidのブラウザでLLMモデルをダウンロード メモリの関係で3B以下の小さいものを推奨。端末次第。 今回はここからPhi-2をダウンロードした huggingface.co/kroonen/phi-2-…
2024-01-02 10:37:37ダウンロードしたらTermuxに戻ってサーバ版llama.cppを起動。-mオプションでダウンロードしたモデル指定 ./bin/server -m ../storage/downloads/phi-2.q4_0.gguf 起動したらAndroidのブラウザで http://127.0.0.1:8080 を開くといつものllama.cppの画面 後は質問するだけ。メモリ注意 pic.twitter.com/hHlFg7sVxz
2024-01-02 10:43:41モデルは小さいのをq4で量子化したのを選ぶと良い。1.1Bなら3GBメモリ、2.2Bや3Bまでなら4GBメモリ程度?7B動かそうと思ったら12GBメモリ欲しい。 aarch64で。 ここから好きなモデルをダウンロードしても良い huggingface.co/TheBloke
2024-01-02 10:51:36英語なら2.2BだけどPhi-2は結構賢い。 PythonやJavaのソースコードも書いてくれる メモリとCPUを大幅に節約できるので低コストでいい 侮ってはいけないレベルで素晴らしい pic.twitter.com/9xgwxHWJry
2024-01-02 10:55:14プロセッサマニア大好きなllama.cppのARMハードウェアチェックでは n_thread 4 total_thread 8 NEON = 1 ARM_FMA = 1 2.2Bでも遅いけど割とコア数多い。 GPU対応すれば結構ARM速くなりそうな予感 pic.twitter.com/bHjeWjhEm5
2024-01-02 11:04:17なおllamafileはAndroidでは動かず。残念 pic.twitter.com/ixjgn0er38
2024-01-02 10:52:51x.com/kapper1224/sta… を参考に1万円くらいで買った中国製のタブレットでllama.cppを動かしてみました。ちょっと手間取ったところを以下に書きます。
2024-01-19 22:59:12its-pointless repoをインストールするために bash setup-pointless-repo.sh を実行したらレポジトリのサーバーが見つからないので、termux-change-repoで変更しろと言う感じのエラーがたくさん出ました。
2024-01-19 23:04:32llama.cppのmakeのために必要なプログラムのインストールのため apt install gcc-11 git cmake clang を実行したらgcc-11はないってエラーが出ました。調べたらどうもgccはclangをインストールすればよいようだったのでgcc-11は省いてインストール。
2024-01-19 23:09:01調べたらtermux-change-repoを実行してサーバーを選べばよいようでしたので、実行したらサーバー選択画面が表示され、なるべく広くなるように選択しました。その後 bash setup-pointless-repo.sh を実行したら無事完了。
2024-01-19 23:06:30huggingface.co/TheBloke/phi-2… から phi-2.Q3_K_M.gguf をダウンロードして使ってみました。とりあえず動くけど、すごく遅い。メモリの状況を見たらスワップしてるみたいだったので一度タブレットを再起動して再度やってみたらそこそこ使える速度で動いてくれました。
2024-01-19 23:17:42動作中のCPUの負荷はこの程度。4コアなのでほぼフルに動いてます。(screenを使って複数の端末を動かしています。) pic.twitter.com/6uxZmZG8ai
2024-01-19 23:50:29Tiny Vicunaを試してみました。軽くていいですね。日本語は無理っぽいですが。tiny-vicuna-1b.q8_0.ggufです。これくらいならタブレットで楽に使えそう。 twitter.com/ysdkz/status/1… pic.twitter.com/iF5su2WowW
2024-01-20 09:03:54