On November 13, ggml-org published llama.cpp v1.0.0 on GitHub and announced on the Hugging Face blog that both the llama.cpp and ggml libraries are now at v1.0.0. From here on, breaking changes to the public C API in ./include bump the major version, backward-compatible features, backends and model support bump the minor version, and pure fixes bump the patch version. The release removes 35 deprecated functions, promotes the NextN/speculative decoding API into llama.h, adds OCP FP8 KV caches and a MoE expert cache with a configurable CPU share, supports new architectures such as Kimi-K3.1-Pro, hardens llama-server against SSRF, CORS and DNS rebinding issues, and adds an OpenAI-compatible /v1/audio/speech endpoint. Creator Georgi Gerganovs release post has about 4,180 likes.
Key Takeaways
- ✓Versioning rules: MAJOR = breaking change to the public C API in ./include; MINOR = backward-compatible feature, backend, model support or API addition; PATCH = fix with no API change
- ✓Breaking changes: llama_set_warmup, 35 deprecated functions and --defrag-thold are gone, and llama_set_embd_state_src is renamed llama_set_ctx_state_src, so apps embedding libllama need code changes before upgrading
- ✓New capabilities: FP8 KV caches (-ctk/-ctv f8_e4m3), a MoE expert cache (moe_cache_size, moe_cache_cpu_share) and loading external PLE shards via --shard/--ple
- ✓llama-server is hardened against SSRF, CORS, DNS rebinding and MCP tool cancellation issues, gains an OpenAI-compatible /v1/audio/speech endpoint and a redesigned web UI (GitHub release)
- ✓Distribution channels include Docker, Debian, Homebrew, conda-forge, MacPorts, Winget and XCFramework; the project supports more than 150 architecture variants

Key Decision Metrics at a Glance
Turn your technical choice into a development budget
Compare 40 dev plans & simulate token costs vs $20/mo subscriptions
Project Links & Resources
Direct AccessIn-Depth Technical Analysis
Background
llama.cpp is one of the most widely used engines for running LLMs locally, and many desktop apps, quantization tools and language bindings are built on it. For its 3.5 years it shipped under build numbers like b12xxx with no API stability promise, so downstream projects kept chasing interface changes. ggml-org says that with more and more developers integrating it, a stable yet flexible API is now a top priority.
What changed
llama.cpp (libllama) and ggml (libggml) both move to v1.0.0 under semantic versioning: an incompatible change to the public C API in ./include bumps the major version, new features, backends and model support bump the minor version, and pure fixes bump the patch version. v1.0.0 starts with a cleanup that removes 35 deprecated functions and folds the NextN/speculative decoding API into llama.h. It also adds FP8 KV caches, a MoE expert cache with a configurable CPU share, and support for models including Kimi-K3.1-Pro, Ripple-65B-Preview and drama-3 TTS.
Numbers
No performance benchmarks were published with this release. The verifiable figures are about 3.5 years of development, support for more than 150 architecture variants, 35 deprecated functions removed, and about 4,180 likes and 310K views on Georgi Gerganov's release post.
What developers should do
People using llama-server or the desktop apps directly can upgrade normally. Teams embedding libllama in their own products should first check for calls to removed or renamed functions, then pin to 1.x so later minor releases are safe to take. Anyone exposing llama-server on a network should upgrade soon to get the SSRF, CORS and DNS rebinding protections.
Benchmark side-by-side against alternatives, or calculate monthly token cost vs subscription break-even.
Discussion & Comments
0Sign in to join the discussion
Connect with AI developers to exchange benchmark insights.