Slide 1

Slide 1 text

Intel Macで雑にローカルLLM

Slide 2

Slide 2 text

このスライド ● 自宅のIntel MacBook Proで雑にローカルLLMを 試した記録。

Slide 3

Slide 3 text

自己紹介 ● 氏名:木下 兼一 ● 趣味: – 家のインフラいじり – FreeBSD、Linux、Raspberry Pi いじり – サイクリング – キャンプ – ドローン(野外で飛ばせるのが欲しい&資格取らんと) – 小田原で有害鳥獣駆除のお手伝い – 猟銃所持(安全な取り扱い練習中) ※技術相談、執筆依頼等お伺いいたします。

Slide 4

Slide 4 text

ローカルLLMが面白そう ● ローカル環境でChatGPTみたいなことができる ● しかし見ていると日本語向けの環境がない? ● できるけど微妙という話も

Slide 5

Slide 5 text

やってみるか ● サクッと使えるツールを見つけた ● 日本語学習モデルが出てきた – https://huggingface.co/elyza/ELYZA-japanese-Llam a-2-13b  ※ 現時点でダウンロードして使用可能な最新モデ ル – 詳細はこちら https://note.com/elyza/n/n5d42686b60b7

Slide 6

Slide 6 text

使えそうなもの 調べてみたところこんなところかと ● ツール – llama.cpp ● https://github.com/ggerganov/llama.cpp – Ollama ● https://ollama.com ● 日本語学習モデル – ELYZA ● ということでこれらを組み合わせて動かしてみた

Slide 7

Slide 7 text

使用したマシン ● 16インチ MacBook Pro 2019 – CPU:2.4GHz intel Corei 9 8core 16thread – GPU:AMD Radeon Pro 5500M 8GB – メモリ:64GB – ストレージ:1TB

Slide 8

Slide 8 text

お試しその1-llama.cpp ● リポジトリダウンロード – git clone https://github.com/ggerganov/llama.cpp.git ● ビルド – cd llama.cpp – make -j ※ 実行後 mainという実行モジュールが作成される ● 学習モデルダウンロード – wget https://huggingface.co/mmnga/ELYZA-japanese-Llama-2-13b- instruct-gguf/resolve/main/ELYZA-japanese-Llama-2-13b-instruct- q4_K_M.gguf

Slide 9

Slide 9 text

動かしてみる ● 下記コマンドで実行 – ./main -m 'ELYZA-japanese-Llama-2-13b-fast-instruct-q4_0.gguf' -n 256 -p '[INST] <>あなたは誠実で優秀な日本人のアシスタント です。<>仕事の熱意を取り戻すためのアイデアを5つ挙げて ください。 [/INST]' ● 動いた!!しかし激重(実行時間7分近く) ● CPUだけで動かしたら更に重いだろ、ネタでやってみようw ● やってみたら結構早かった (@@;;(実行時間1分ちょい)

Slide 10

Slide 10 text

比較 ● GPU(Metal)使用 – llama_print_timings: eval time = 331950.94 ms / 233 runs ( 1424.68 ms per token, 0.70 tokens per second) – llama_print_timings: total time = 383524.05 ms / 273 tokens ● CPUのみ – llama_print_timings: eval time = 71923.93 ms / 255 runs ( 282.05 ms per token, 3.55 tokens per second) – llama_print_timings: total time = 81259.32 ms / 295 tokens ● 謎???

Slide 11

Slide 11 text

お試しその2- Ollama ● インストール – 公式サイト https://ollama.com よりアプリをダウン ロードしてインストール ● 使い方 – ターミナルでコマンドを使って実行 – ollama run (学習モデル)

Slide 12

Slide 12 text

OllamaでELYZAを使う ● 設定ファイルを作成 – ollama show llama2:7b-chat --modelfile ● .Modelfileというファイルが生成されるのでエディタのFROMセク ションにダウンロードした学習モデルのパスを記載 ● ローカルに使える形式に変換 – ollama create elyza:13b-instruct -f Modelfile ● 実行 – ollama run elyza:13b-instruct

Slide 13

Slide 13 text

使ってみて ● CPUだけでもそこそこ使える ● GPUについてはチューニング次第で傾向が変 わったりしないだろうか? ● 最近のMac向けにはApple Siliconでの使用が前 提で高速なようなのでM*のMacBook Proが欲し い

Slide 14

Slide 14 text

その他試してみたもの ● CrewAI – https://github.com/joaomdmoura/crewai/ – 仮想のエージェントを複数作成してお題についてやりとりした結果を表 示する ● なんとか動かせたものの – 回答時間が長い – 回答が微妙な気が – しかしそれぞれのエージェントが議論している様な出力もあるので、も う少し試してみるかなと

Slide 15

Slide 15 text

ご清聴ありがとうございました。