llama.cpp Hits 1.0: A Stability Contract for the Local AI Stack

Author

AI News Editorial

Published

2026-11-14 08:00

Local inference has long had a version number that meant nothing. Every few weeks llama.cpp moved a function, renamed a parameter, or changed the shape of a context struct, and every downstream wrapper — desktop apps, agent frameworks, fine-tuning tools — absorbed the churn. The project that made running models on a laptop easy was, for a long time, the hardest dependency to pin.

llama.cpp v1.0.0 and ggml v1.0.0 change that contract. From this release forward, both libraries follow semantic versioning with an explicit rule set: breaking changes to the public C API are MAJOR, backward-compatible features and new model support are MINOR, and bug fixes with no API change are PATCH. API and ABI incompatibility now require a major-version bump, and the maintainers say plainly that they will be stricter about making those boundaries visible to downstream consumers.

The release itself is a consolidation. The deprecated public surface is gone: llama_set_warmup and 35 other deprecated functions were removed, along with the defrag_thold knob, and the NextN/speculative-decoding API was promoted out of the extension header into llama.h. New context parameters moe_cache_size and moe_cache_cpu_share let a host keep mixture-of-experts misses in system memory. OCP FP8 KV caches arrived via -ctk/-ctv f8_e4m3, with optional static per-tensor scales — the standard lever for squeezing a long-context model into a small memory budget. Three new text architectures landed (Kimi-K3.1-Pro, Ripple-65B-Preview, xing4_0), plus drama-3 TTS, MageVL-Cowork and Kimi-K3.1 vision support and external PLE shard loading. The library still spans more than 150 architecture variants.

The security pass is the part worth reading carefully. llama-server gained fixes for --cors-origins misconfiguration, DNS rebinding, and CORS-proxy SSRF, plus a fix for child-instance access. Two capabilities that were previously implicit are now explicit opt-ins: --allow-unauthenticated-tools and --media-allow-private-urls. MCP tool calls are now cancelled on client disconnect or timeout, and the HF_TOKEN is restricted to huggingface.co hosts. If you have ever exposed a llama-server beyond localhost, this release closes several paths you probably assumed were closed.

Why it matters beyond llama.cpp. The project counts on “a flexible but stable API” because downstream applications now depend on it by name. A 1.0 tag makes the library a legitimate pin in a release process — the same way people treat a stable compiler or kernel ABI. The ecosystem around local and private AI gets its first real guarantee that the ground will not move under it.

Release notes: llama.cpp v1.0.0 · announcement: Hugging Face