シンギュラリティ実験ノート

購入した1000ドルPCで何がどこまでできるのか実験した記録です。

LM StudioでLlama3-8B日本語強化版を試してみた

mmngaさんのHugginfaceのページにLlama3-8Bの日本語強化学習モデル lightblue-suzume-llama-3-8B-japanese-gguf があったので試してみた。8Bは70Bに比べると能力的に劣るであろうことは分かっているが、日本語の能力とUM790 Proで動かした時の応答速度を確認したかったので試してみた。

 

 

LM Studioへのモデル追加手順

ダウンロードしたモデル lightblue-suzume-llama-3-8B-japanese-Q4_K_M.gguf を以下のようにLM Studioの環境の中にセットした。フォルダ名の Suzume-Llama-3-8B-ja-Q4-K-M-GGUF は他に習って分かり易い名前にしておけばいいと思う。TheBlokeフォルダの下にフォルダを作ればアプリが自動的に認識してくれる。チャット画面にある「Select a model to load」ボタンを押した時にモデル名が表示されれば成功だ。

~/.chache
  └ lm-studio/
    ├ models/
      ├ lmstudio-community
      └ TheBloke
        ├ Mistral-7B-Instruct-v0.2-GGUF
        └ Suzume-Llama-3-8B-ja-Q4-K-M-GGUF
          └ lightblue-suzume-llama-3-8B-japanese-Q4_K_M.gguf

後はSettingusでPresetファイル「Llama 3」を選ぶだけである。

 

日本語能力と応答速度

GPUを利用した場合(Windows版)

GPUの利用率をmaxとして、日本語で質問した。

User:人生の意味とは何か?

AI:人生の意味については、哲学者や思想家によってさまざまな解釈が存在します。ただし、多くの人が共有する考え方としては、以下のようなものがあります。

1. **幸福と満足感**: 人生を楽しむこと、幸福にすること、その他に価値を見いだすことを意味する。このような解釈では、人生はその自身の価値を持っており、それを追求することで意味が見出される。
2. **愛し合う関係と遺産**: 自分や他人との間に築く関係、子供たちに育てたり、社会に贡献したりすることなどが、人生を通じて得られる価値の一つとなる。この解釈では、人生は自分の周りの人間や自然環境とのつながりによって価値を見いだされる。
3. **成長と学習**: 自分の能力や知識を向上させること、その他に心身を鍛えることで、人生が豊かに感じられるようになる。この解釈では、人生は自己成長と自律性を通じて価値が見出される。

これらの解釈は、人生の意味についてさまざまな考え方の一例です。最終的な答案は個人の価値観や目標によって異なるため、人生の意味を理解する際には、自分の生き方や価値観に応じて解釈してみることが重要です。

また、人生の意味について深く考えることで、多くの哲学的・倫理的な質問にも対処できるようになります。例えば、「善とは何か?」「正しい行為とは何か?」などが考えられるでしょう。

人生の意味を理解することは、自分自身や他人に対して価値を見いだすこと、もしくはそのために努めることが重要です。このような探求は、人生をより豊かに感じられるようするだけでなく、自分の生き方や目標を明確にする助けにもなります。

人生の意味について、Llamaくんが教えてくれた。普遍的な質問なので内容的にも英語と同レベルの回答になっている。

 

上記質問をGPUを使用して回答させた場合の応答速度は以下の通り。

  • time to first token    14.03 s
  • speed 7.85 tok/s

タスクモニタでGPU利用状況を見てみた。最初のトークンが表示されるまではGPU利用率は70~90%で、トークンを表示し始めると56%になった。メモリは専用GPUメモリを使用している。

 

CPUのみ使用(Windows版)

CPUのみで日本の歴史について質問した。

User:日本史における「大化の改新」の概要を説明してください。

AI:日本史における「大化の改新」は、天平宝字4年(750年)の時期に始まったとされ、天平宝字8年(756年)まで続いた、大きな社会的・政治的な変革である。この時期、天皇権力強化が進められ、律令法の施行により国家の統治が効率化された。また、この時期には仏教の興隆が見られた。

大化改新は、藤原京(藤原宮)に遷都し、朝廷中心主義を強化したことでも知られています。この政策は、律令法の施行とともに行われ、国家の統治が効率化され、地方から中央への支配力が強化された。また、この時期には、学問や文化の振興も進められ、儒学や仏教などの知識が広まった。

大化改新は、日本の歴史を大きく変化させるきっかけとなり、律令制を基盤にした国家システムが整備されることになった。このシステムは、日本古代において長らく続いたとされています。

日本の歴史や文化については深く学習できていないのか、Command-R 35Bの回答に比べると物足りない。パラメタ数の違いもあるので単純には比較できないが。

 

CPUのみで回答させた場合の応答速度は以下の通り。

  • time to first token    1.39 s
  • speed 10.29 tok/s

CPUのみの方が早いという結果になった。ただし、これは起動直後の場合で、2問、3問と質問するとtime to first tokenの数値は変わってくる。

前回の記事で回答開始までの時間はCPU/GPU性能、回答開始後の速度はメモリ転送速度が関係するらしいと書いたが、それを裏付ける結果は得られなかった。特に回答開始までの時間は、質問するたびに変化するし、モデルによっても大きく違うので、傾向がよく分からないというのが正直なところだ。

回答開始後の速度は一定の傾向があり、CPUで10~11 tok/s、GPUで8~9 tok/s とCPUの方が若干早い結果になった。これはWindowsでの結果である。

Ubuntu環境での応答速度

Ubuntu環境で同様にLM StudioとLlama3で試した結果は以下の通りであった。回答開始後の速度はGPUの方が若干早いという結果になっている。

GPU利用率maxの場合

  • time to first token    4.17 s
  • speed 11.83 tok/s

CPUのみ使用の場合

  • time to first token    3.69 s
  • speed 7.38 tok/s

まとめ

LM Studioでも量子化モデルを入手でき、Presetファイルを何とかできれば自分でモデルを追加できる。

UM790 Proの場合、LLMの応答速度はCPUでもGPUでもあまり変わらないことが分かった。CPUがそれだけ優秀なのだといい意味で解釈したい。

GPUを使った方が気分的にはいいので私はよく使っているのだが、一つだけ注意が必要だ。Llama3の8BクラスではGPU利用率をmaxにしても問題はないが、Command R 35Bのような大きいモデルで利用率をmaxにすると64GBのメモリを使い切り、Windowsが異常終了する。Windowsのメモリ管理能力の問題だと思うので、Ubuntuでどうなのかを今後試してみたい。メモリが64GBあれば暫くは大丈夫と思っていたが、もっとメモリを搭載できるPCが最近は気になり初めている。