Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Intel Macで雑にローカルLLM

kenkino
April 21, 2024

Intel Macで雑にローカルLLM

kenkino

April 21, 2024
Tweet

More Decks by kenkino

Other Decks in Technology

Transcript

  1. 自己紹介 • 氏名:木下 兼一 • 趣味: – 家のインフラいじり – FreeBSD、Linux、Raspberry Pi

    いじり – サイクリング – キャンプ – ドローン(野外で飛ばせるのが欲しい&資格取らんと) – 小田原で有害鳥獣駆除のお手伝い – 猟銃所持(安全な取り扱い練習中) ※技術相談、執筆依頼等お伺いいたします。
  2. 使えそうなもの 調べてみたところこんなところかと • ツール – llama.cpp • https://github.com/ggerganov/llama.cpp – Ollama

    • https://ollama.com • 日本語学習モデル – ELYZA • ということでこれらを組み合わせて動かしてみた
  3. 使用したマシン • 16インチ MacBook Pro 2019 – CPU:2.4GHz intel Corei

    9 8core 16thread – GPU:AMD Radeon Pro 5500M 8GB – メモリ:64GB – ストレージ:1TB
  4. お試しその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
  5. 動かしてみる • 下記コマンドで実行 – ./main -m 'ELYZA-japanese-Llama-2-13b-fast-instruct-q4_0.gguf' -n 256 -p

    '[INST] <<SYS>>あなたは誠実で優秀な日本人のアシスタント です。<</SYS>>仕事の熱意を取り戻すためのアイデアを5つ挙げて ください。 [/INST]' • 動いた!!しかし激重(実行時間7分近く) • CPUだけで動かしたら更に重いだろ、ネタでやってみようw • やってみたら結構早かった (@@;;(実行時間1分ちょい)
  6. 比較 • 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 • 謎???
  7. お試しその2- Ollama • インストール – 公式サイト https://ollama.com よりアプリをダウン ロードしてインストール •

    使い方 – ターミナルでコマンドを使って実行 – ollama run (学習モデル)
  8. OllamaでELYZAを使う • 設定ファイルを作成 – ollama show llama2:7b-chat --modelfile • .Modelfileというファイルが生成されるのでエディタのFROMセク

    ションにダウンロードした学習モデルのパスを記載 • ローカルに使える形式に変換 – ollama create elyza:13b-instruct -f Modelfile • 実行 – ollama run elyza:13b-instruct
  9. その他試してみたもの • CrewAI – https://github.com/joaomdmoura/crewai/ – 仮想のエージェントを複数作成してお題についてやりとりした結果を表 示する • なんとか動かせたものの

    – 回答時間が長い – 回答が微妙な気が – しかしそれぞれのエージェントが議論している様な出力もあるので、も う少し試してみるかなと