
ローカル環境などでAIモデルを実行する推論エンジン「llama.cpp」と、その計算基盤となるライブラリ「ggml」のv1.0.0が公開されました。今後は公開APIやABIに互換性のない変更が生じる場合、メジャーバージョンを引き上げます。
llama.cppの新版では、古い公開APIの削除に加え、新たなモデルへの対応やサーバー機能の変更が行われました。ggmlにも非推奨APIの削除や、各種ハードウェア向けの処理の更新が含まれています。
公開APIの変更をバージョン番号に反映
llama.cppは、大規模言語モデルなどをC/C++で実行するためのソフトウェアです。手元のPCから企業向けサーバーまで、幅広い機器で動作します。計算には機械学習向けのライブラリであるggmlを使います。
両ライブラリの利用が広がり、ほかのアプリケーションがそのインターフェースに依存しています。APIはソフトウェア同士が機能を呼び出すための取り決めで、ABIはコンパイル済みのプログラム間の互換性に関わる取り決めです。両者の互換性を損なう変更は、今後メジャーバージョンの引き上げで示されます。
公開C APIに互換性を損なう変更があった場合は、バージョン番号のメジャー部分を上げます。後方互換性のある機能追加やバックエンド、モデル対応の更新では、マイナー部分を上げるルールです。APIを変えない不具合修正では、パッチ部分を上げます。
新モデルと推論時のキャッシュに対応
llama.cpp v1.0.0では、非推奨となっていた35の関数などが公開APIから削除されました。一方、NextNと投機的デコーディングのAPIは公開ヘッダーファイルに移されています。投機的デコーディングは、生成する語の候補を先に推測して処理する手法です。
新たにKimi-K3.1-Pro、Ripple、xing4_0のテキストモデル構造に対応しました。音声合成モデルのdrama-3と、画像を扱うMageVL-Cowork、Kimi-K3.1にも対応しています。llama.cpp全体では、150を超えるモデル構造のバリエーションを扱えます。
推論中の情報を保持するKVキャッシュには、OCP FP8形式が加わりました。また、複数の専門部分を使い分けるMoEモデル向けに、メインメモリ上のキャッシュとCPUが担当する割合を設定する機能が追加されました。外部のGGUFファイルに分割されたPLEデータの読み込みにも対応しています。
サーバーの安全対策と操作画面を更新
llama-serverには、OpenAI互換の音声生成用エンドポイント「/v1/audio/speech」が追加されました。クライアントの切断時やタイムアウト時には、MCPツールの呼び出しを取り消し、接続先のMCPサーバーに通知します。MCPは、AIアプリが外部ツールとやり取りするための仕組みです。
サーバーでは、外部から意図しない場所へのアクセスにつながり得るSSRFや、DNSリバインディングに関する修正も行われました。別のオリジンからのアクセスを制御するCORSの設定も修正されています。Hugging Faceの認証トークンは、huggingface.coのホストに限って使用されるようになりました。
ブラウザーで使う画面も更新され、チャットを名前付きのグループにまとめられます。入力欄には、書式を確認しながら文章を編集できるMarkdownエディターが加わりました。モバイル向けには、画面に合わせた配置や全画面ダイアログが用意されています。
ggmlの各ハードウェア向け処理を改良
ggml v1.0.0では、非推奨の公開APIと古い演算処理が削除されました。遠隔の機器と処理をやり取りするRPCプロトコルはv9に更新され、互換性のない接続先を拒否します。接続先に到達できない場合や接続手続きが失敗した場合の処理も変更されています。
CUDAとMetal向けには、MoEの複数の処理をまとめる変更が入りました。Vulkan向けには、入力文を処理する段階で使うIntel向けFlashAttentionカーネルが追加されています。SYCL向けには、デバイス側で動くMoEのスケジューラーが加わりました。
WebGPU向けには複数の演算カーネルが追加され、Hexagon向けにはQ5_0とQ5_1の量子化形式への対応が加わりました。共通のスケジューラーは、読み取られない入力の転送を省きます。また、前の処理区間で生成された入力に限って先読みします。
量子化と配布方法、Ollamaとの関係
llama.cppは、モデルの重みを少ないビット数で表す量子化に対応しています。CanRunの比較では、Qwen3 14BのGGUF形式ファイルはQ4_K_Mが9.00GB、Q8_0が15.70GBです。量子化は元のモデルからの精度の損失を伴う場合があり、その程度はモデルや用途によって異なります。
Ollamaは、モデルの取得や設定などを扱うローカルAI向けのソフトウェアで、従来はllama.cppのようなエンジンを内部で利用してきました。llama.cppを直接使う場合は、モデルの量子化方式や実行時の設定を選べます。また、ライブラリとしてアプリケーションに組み込むこともできます。
llama.cppは、配布済みバイナリのほか、ソースコードからのビルドやDockerで利用できます。配布経路には、macOSとLinux向けのHomebrew、Windows向けのWinget、iOSとmacOS向けのXCFrameworkなどがあります。開発側は今後、配布方法をさらに拡充する方針です。











