llama.cpp and ggml reach v1.0.0, define semantic versioning rules

The llama.cpp and ggml projects announced v1.0.0 releases, emphasizing a stable public C API for downstream developers and clearer rules for breaking changes. The announcement states that both libraries will use major-version bumps to indicate API or ABI incompatibilities going forward.

Releases and versioning

The published artifacts are llama.cpp v1.0.0 (libllama; headers in llama.cpp/include/) and ggml v1.0.0 (libggml; headers in ggml/include/). The projects set semantic version rules: MAJOR for breaking changes to the public C API in ./include, MINOR for backward-compatible features or backend and model support, and PATCH for bug fixes that do not change the API.

Distribution, backends and model coverage

The announcement outlines multiple distribution channels and supported platforms, including pre-release artifacts for Linux, macOS, Windows, Android and iOS; Docker and Debian for Linux; Homebrew for macOS and Linux; conda-forge for Windows, macOS and Linux; MacPorts for macOS; Winget for Windows; and XCFramework for iOS and macOS.

ggml is described as a portable tensor library with dedicated backends that can be compiled as dynamic libraries and optionally loaded at runtime. The project says it supports more than 150 architecture variants and “all mainstream speculative decoding methods.”

The announcement lists hardware partners that provide support for test runners and builds: NVIDIA, AMD, Qualcomm, Arm, IBM and Intel. It also notes ongoing efforts to extend packaging and release pipelines so ggml-org software can reach more developers and end users.

Development and CI

The projects report continued investment in continuous integration and automated testing. The announcement attributes increased CI capacity to use of HF Buckets and HF Jobs and says more self-hosted runners across major hardware platforms have been added to guarantee correctness for changes landing on the master branches.

The llama.cpp team thanked long-time maintainers and contributors and detailed release artifacts and header locations for developers: libllama (llama.cpp/include/) and libggml (ggml/include/).


Original source: Hugging Face Blog

Leave a Comment