llama.cpp, the open-source engine that powers much of the software people use to run AI models on their own computers, has reached version 1.0.0 — and the headline is not a new feature or a speed boost. It is a promise: from now on, breaking changes to the project's public interface will arrive only with a major version bump.
The release, published on November 13, covers both llama.cpp itself — libllama, the C and C++ inference engine — and ggml, the tensor library underneath it, which also moved to v1.0.0. Both now follow semantic versioning, the familiar scheme that tells developers at a glance whether an update might break their code.
The project began in March 2023 as an experiment in running Meta's LLaMA model in pure C and C++, without Python or a graphics card. In the three and a half years since, it has become the foundation of the local AI ecosystem: the engine underneath tools such as Ollama and LM Studio. According to the maintainers' announcement on Hugging Face, “many downstream applications already depend on our work” — which is exactly why the stability pledge matters.
A version number that means something
Until now, llama.cpp shipped continuous, build-numbered releases — tags such as b12359 and b12360, derived from the git commit count rather than describing what changed. The last conventionally numbered releases were llama.cpp v0.9.0 and ggml v0.29.0. Under the new rules, a major version means a breaking change to the public C API, a minor version means a backward-compatible feature, backend update, new model support or API addition, and a patch means a bug fix with no API change.
The same promise covers the binary interface: both projects “will reflect API and ABI incompatibilities with major-version bumps,” the maintainers wrote. For developers building on these libraries, a breaking change will now show up in the version number, so they can plan for it.
What 1.0 actually changes
The 1.0 release uses the milestone to clear out old code. It removes the deprecated public API, including 35 deprecated functions, along with the warmup setter and the defragmentation-threshold option. It also promotes the NextN speculative-decoding API into the main llama.h header.
There are new capabilities too. The release adds FP8 key-value caches, which cut the memory used to hold a model's conversation context, and a host-memory cache for mixture-of-experts models with a configurable CPU share. It adds support for new models, including Kimi-K3.1-Pro, and hardens llama-server against server-side request forgery, cross-origin attacks and DNS rebinding.
llama.cpp now supports more than 150 model-architecture variants, and ggml is designed, in the maintainers' words, to run on “virtually any hardware in existence.” Pre-release builds cover Linux, macOS, Windows, Android and iOS.
Why it matters for anyone running models locally
For most users, nothing changes today: no app suddenly behaves differently because of the 1.0 tag. The benefit is slower and indirect — the tools people use to run models on their own machines should break less often as the engine underneath them evolves.
There is one warning for developers. Version 1.0 is a stable contract, but it is not a drop-in upgrade for every app: code that calls any of the 35 removed deprecated functions will fail to compile until it is updated. The maintainers frame the release as part of a commitment to AI sovereignty and privacy — technology anyone can run on their own hardware. The real test is the next breaking change: if the team holds to its rules, it will arrive as v2.0.0 rather than inside a routine update.



