# llama.cpp and ggml hit 1.0.0: semver API promise, 35 functions removed, server security opt-ins

Canonical: https://theagenticweekly.com/news/llama-cpp-ggml-1-0-0-semver-api-security · Evidence: Reported · First seen: 2026-11-13 10:59 UTC · Source published: 2026-11-13 10:20 UTC · Brief published: 2026-11-13 14:11 UTC · Updated: 2026-11-13 14:11 UTC · Author: Agentic Weekly

> llama.cpp and ggml reached v1.0.0 on November 13, 2026; the project's announcement says that "both llama.cpp and ggml will reflect API and ABI incompatibilities with major-version bumps", and the llama.cpp release removes 35 deprecated functions, adds FP8 KV caches and hardens llama-server against SSRF, CORS and DNS-rebinding issues.

## What changed

- Versioning policy: the 1.0.0 announcement sets semantic-versioning rules for ggml-org projects, where a MAJOR bump means a breaking change to the public C API, MINOR covers features, backends and model support, and PATCH is a bug fix with no API change.
- Breaking API cleanup: llama.h drops llama_set_warmup, 35 deprecated functions, defrag_thold and the --defrag-thold flag, and promotes the NextN speculative-decoding API into llama.h; ggml 1.0.0 also prunes its deprecated API and the legacy DIAG_MASK ops.
- Server security: llama-server adds --allow-unauthenticated-tools and --media-allow-private-urls opt-ins, fixes --cors-origins, DNS rebinding and CORS proxy SSRF issues, restricts HF_TOKEN to huggingface.co hosts, and cancels MCP tool calls on client disconnect or timeout.
- Memory and MoE: FP8 KV caches via -ctk/-ctv f8_e4m3, and a host-memory MoE expert cache with a configurable CPU share for misses (new moe_cache_size and moe_cache_cpu_share context params).
- Models and audio: three new text architectures (Kimi-K3.1-Pro, Ripple-65B-Preview and xing4_0), drama-3 TTS, MageVL-Cowork and Kimi-K3.1 vision, plus an OpenAI-compatible /v1/audio/speech endpoint.
- ggml 1.0.0 backend work: CUDA few-row MMQ for batch sizes 2 to 24 and OCP FP8, the RPC protocol bumped to v9 so it rejects incompatible peers, fused MoE routing on Metal, a SYCL device-side MoE scheduler and a Vulkan Intel FlashAttention prefill kernel.

## Who should care

Anyone who calls llama.h or ggml directly from C, or through bindings, should expect build breaks: 35 deprecated functions are gone, a context-state function was renamed, and ggml dropped its deprecated API in the same release. Scripts that still pass --defrag-thold to llama.cpp tools need that flag removed.

Teams running llama-server on a network rather than on localhost should read the security section first, because the new opt-in flags change what the server allows without them. Clusters using the RPC backend need every node on the same version, since ggml's v9 protocol is built to reject incompatible peers. People who only use llama.cpp through Ollama, LM Studio or another wrapper do not need to do anything until that wrapper ships the new version.

## Why the 1.0 number matters

llama.cpp has shipped near-daily build tags for most of its roughly 3.5 years, and the announcement says many downstream applications already depend on its library interfaces, so a flexible but stable API is now paramount. From here, a breaking change to the public C headers is supposed to show up as a major-version bump. That gives wrapper and app maintainers a simple rule for when to pin and when it is safe to update. The release itself is mostly cleanup and hardening rather than a new headline feature, which fits that goal. Whether the project keeps to the policy is something only later releases can show.

## In the source's words

> "Moving forward, both llama.cpp and ggml will reflect API and ABI incompatibilities with major-version bumps."
> (llama.cpp v1.0.0 announcement, Hugging Face blog, https://huggingface.co/blog/ggml-org/llama-cpp-v1)

> "Currently, llama.cpp supports more than 150 architecture variants as well as all mainstream speculative decoding methods."
> (llama.cpp v1.0.0 announcement, Hugging Face blog, https://huggingface.co/blog/ggml-org/llama-cpp-v1)

> "Added few-row MMQ for batch sizes 2-24"
> (ggml v1.0.0 release notes, https://github.com/ggml-org/ggml/releases/tag/v1.0.0)

## What we have not verified

- We did not run either release, so we cannot confirm speed or memory effects of the FP8 KV cache, the MoE expert cache or the new CUDA, Metal and Vulkan kernels; the notes give no benchmark figures.
- The exact default behaviour of llama-server for tool calls and private media URLs without the new opt-in flags is not spelled out in the release notes; check the linked pull requests before exposing a server.
- The release notes do not say whether the new versioning policy comes with a support window for older major versions.
- When Ollama, LM Studio and other wrappers will move to 1.0.0 is not stated by the project.

## Timeline

- Source published: 2026-11-13 10:20 UTC
- First seen by our watcher: 2026-11-13 10:59 UTC (via GitHub releases: ggml-org/llama.cpp)
- Brief published: 2026-11-13 14:11 UTC

## Sources

- [llama.cpp v1.0.0 release notes (GitHub)](https://github.com/ggml-org/llama.cpp/releases/tag/v1.0.0) (primary source) (fetched 2026-11-13)
- [llama.cpp v1.0.0: A stronger foundation for the local AI ecosystem (Hugging Face blog)](https://huggingface.co/blog/ggml-org/llama-cpp-v1) (primary source) (fetched 2026-11-13)
- [ggml v1.0.0 release notes (GitHub)](https://github.com/ggml-org/ggml/releases/tag/v1.0.0) (primary source) (fetched 2026-11-13)

## Related

- [llama.cpp: verdict and setup guide](https://theagenticweekly.com/tools/llama-cpp)
- [Ollama vs llama.cpp](https://theagenticweekly.com/compare/ollama-vs-llama-cpp)
- [All news briefs](https://theagenticweekly.com/news)
- [New AI models this week](https://theagenticweekly.com/models/this-week)

## How to cite

Agentic Weekly, "llama.cpp and ggml hit 1.0.0: semver API promise, 35 functions removed, server security opt-ins", published 2026-11-13 14:11 UTC, https://theagenticweekly.com/news/llama-cpp-ggml-1-0-0-semver-api-security
