自分のPCでLLMを動かすための定番ソフト「llama.cpp」が、ライブラリとしてバージョン1.0.0になった。開発元のggml-orgが11月13日、Hugging Faceのブログで発表した。llama.cppの土台となる機械学習向けテンソルライブラリ「ggml」も同時に1.0.0になった。

互換性のルールを明確に

llama.cppは約3年半前に始まったプロジェクトで、量子化による軽量化や各種ハードウェア向けの最適化により、一般のPCからサーバーまで幅広い環境でLLMを動かせるようにしてきた。多くのアプリが内部でllama.cppを使うようになったことから、ggml-orgは安定したAPIを提供する責任を示すために1.0.0を出したと説明している。

今後はセマンティックバージョニングのルールに従う。公開しているC言語のAPIに互換性のない変更を加える場合はメジャー番号、後方互換のある機能追加や新しいモデルへの対応はマイナー番号、APIを変えない不具合修正はパッチ番号を上げる。llama.cppを組み込んでいるアプリの開発者は、更新で動かなくなるかどうかを番号で判断しやすくなる。

配布経路も拡大

配布はLinux、macOS、Windows、Android、iOS向けのビルド済みファイルのほか、Docker、Debian、Homebrew、conda-forge、MacPorts、Winget、Apple向けのXCFrameworkなどで行う。開発ではLLMも慎重に取り入れつつ、コードの品質や設計の主導権を保つことを最優先にするとしている。テストのための計算資源には、Hugging FaceのHF BucketsやHF Jobsを使っているという。

ローカルLLMの環境では、NVIDIAの体制変更がオープンモデル支援に与える影響も注目されている(NVIDIAのオープンモデル支援の記事)。