llama.cpp tags version 1.0.0 and moves to semantic versioning
By Leon Mallett
Originally announced by llama.cpp (GitHub releases) . We link the primary source so you can read it for yourself.
llama.cpp, the C/C++ inference engine a large share of the local AI ecosystem is built on, published a release tagged v1.0.0 on 13 November 2026. Its underlying tensor library, ggml, was bumped to the same number in the same release. This is the first time the project has carried a semantic version number of its own, and the change is the news here rather than any single feature.
For most of its life llama.cpp has shipped continuous, build-numbered tags: a steady stream of releases like b12359 and b12360, with the number derived from the git commit count rather than describing what changed. Those build tags are still being published, several of them on the same day as v1.0.0, so the day-to-day cadence has not stopped. What is new is a version on top of that stream that follows the familiar major.minor.patch pattern.
The release page itself is deliberately terse. It carries an automatically generated changelog of commit titles since the previous v0.9.0 tag, the line “New version has been released”, and a note promising more detail later in the day. A fuller written rationale from the maintainers was not available at the time of writing, so the reasoning below is drawn from the project’s own versioning work rather than a launch post. The licence is unchanged: llama.cpp remains MIT.
Why a version number matters for a project like this
llama.cpp is infrastructure. It introduced the GGUF format, and a great deal of the rest of the ecosystem wraps it: Ollama, LM Studio, KoboldCpp and others sit on top of the same engine. When the thing underneath you only identifies itself by a commit count, the projects and packagers downstream have no stable, meaningful point to pin to and no quick way to say which of two builds is newer or whether a change between them was breaking. A semantic version is a small piece of plumbing that makes all of that easier.
It is worth being clear about what the number does not mean. Reaching 1.0.0 is not a signal that llama.cpp has only now become usable or stable. It has been production-grade and widely depended on for a long time, through the entire build-numbered period. The request for a pinnable release number is an old one, raised by downstream users as far back as 2023, and the move to semantic versioning in the ggml projects over recent months was motivated by exactly this: build numbers made it hard to track changes across the projects that depend on the library. Read 1.0.0 as the project adopting a versioning scheme its dependents have wanted, not as a maturity milestone it has suddenly cleared.
What landed alongside it
Because v1.0.0 collects everything since v0.9.0, its changelog is also a reasonable snapshot of recent work. The entries below are taken from that changelog, so treat them as a record of what was merged rather than as independently tested results. The ones most likely to matter locally:
- FP8 KV-cache support. The KV cache is the running memory of a conversation, and it grows with context length until it can dominate memory use on long sessions. Storing it in an 8-bit floating-point format rather than a wider one is a further step in the same direction as existing KV-cache quantisation: less memory for long contexts, in exchange for some precision. How much quality that costs in practice will depend on the model and the workload, and is not something the changelog line settles.
- A Vulkan flash-attention kernel for prefill on Intel GPUs. Prefill is the stage where the model reads your prompt before it generates anything, and it is the part that feels slow on long inputs. A dedicated kernel here is aimed at that cost on Intel hardware through the Vulkan backend.
- An OpenAI-compatible
/v1/audio/speechendpoint in the bundled server, which extends the server’s text-to-speech surface to match the shape of a widely used API. - New model support, including Kimi K3.1 Pro as a text model and the Ripple model from ricursiveai, both of which landed in the catalogue and in our coverage earlier this month, plus multimodal additions covering Gemma 4 audio input and Kimi K3.1 vision.
The wider picture
This follows the engine’s recent trajectory rather than breaking from it. Ollama, which wraps llama.cpp, moved its Apple Silicon inference onto Apple’s MLX framework earlier in the autumn, which we covered at the time, and has continued shipping its own frequent point releases on top of the engine. The versioning change does not alter any of that. For most people running models locally, nothing about their setup changes today. The value is further down the stack, in making the thing everyone builds on a little easier to build on.
If you want to read the maintainers’ own account of the versioning change, the release links to a discussion on releases and versioning across the ggml-org projects; that is the primary source to follow for the reasoning once it is published in full.