2026年4月10日金曜日

llama.cpp on ubuntu あれ?もしかしてvulkan?

今の今までllamaでintelならoneAPIでしょ?って思って疑わなかったんですが…もしかして正式にはvulkanじゃないとダメなのかなw

リリースの一覧を見ていると…Ubuntu x64 (CPU) Ubuntu arm64 (CPU) Ubuntu s390x (CPU) Ubuntu x64 (Vulkan) Ubuntu arm64 (Vulkan) Ubuntu x64 (ROCm 7.2) Ubuntu x64 (OpenVINO)あれ?さらに下を見ると…Windows x64 (Vulkan) Windows x64 (SYCL) Windows x64 (HIP)…SYCLってWindowsしかないんじゃ…(汗

と、おもって少しvulkanでllama-cppをmakeして、ちょっと強引に動かしてみました。

まず結果から。

なんかもっさり感がさらにもっさりに。

GPUのRender/3Dが100%になることが多く感じた(gpu_layers:0なのにね…)

genma3nは画像も認識してくれた。

gemma4 26B a4bは画像を渡すとエラーが発生してだめっぽい。

 

結論。ubuntuでもまだSYCLの方がよさげ。というか、どちらかと言うと現状ではllama.cppはvulkan対応は後手に回っている気がする。見てると一番早いのはCUDAではないかと思いますが。

 

以下、ざっくりと個人的感触 

面白いのがvulkanとSYCLのメモリー消費量の差が結構ありました。とある量子化モデルの動作中のメモリーが、SYCLでは8GB程度で済んでいたものがvulkanだと10GBを超えたりしてました。この辺は対応範囲が異なっている結果なのかもしれません。

それと、認識できた文字の内容もSYCLのほうが精度が高いような印象を受けています。

localAI v4.1.3で最初のトークンがダブる現象はvulkanでも変化ありませんでした。

残りは、CPUだけで動かしてみてどうなるか見るぐらいですかねぇ…Gemma4への対応で結構バグがもりもり出てきているような状態なので、大きな不具合があったりしなければ最新版のllama.cppは手を出さない方がよさげです。

ただ、今日のパッチで結構各モデルの反応が変化したんですよねぇ…各パラメータの反映とか、localAI側の設定でtemperature: 1.0 top_p: 0.95 top_k: 64 とかモデルの推奨値が分かったものを指定するようにしているからなのかもしれませんが、言葉の節々や言い回しが変わってるんですよねぇ…

gemma 3nってこんな反応あったっけ?と言うような部分もあったりして。

生成AIって結構乱暴に扱っても動いちゃっているみたいで、細かいところが正しくなっていくと、まともになってるような気がします。とくにgemma 4 26B A4Bモデルなんて半分ぐらいメモリー消し飛ばされながらも、会話がまともにできていたりするわけで(笑)

逆に、思考が深くなったおかげなのか、レスポンスは若干低下気味w

モデルの評価はザックリとはできますが、細かいところまで見るとなるとそれぞれのプラットフォームの対応状況で動き方ががらりと変わってきそうというのが分かりました。

localAIの場合は各バックエンドを完全に切り離せるので、llama-cppを使わずにllama.cppを動かすようにしてもいいかもしれないけど。でもそうするとモデルの管理が変わるのかもしれないのかな… 

 

ちなみに、細かいことを言わなければ、llama.cppのリリースb8683ぐらいでもGemma 4はマルチモーダルな感じで動かすことができました。あとはOllamaとかunslothさんのとかで動かしてもいいんじゃないでしょうかね?

0 件のコメント:

コメントを投稿