Developer Tools

llama.cpp v b9623 fixes Jinja split/replace bug in local LLM inference

116K-starred open-source project patches critical Jinja templating function with empty first arg.

Deep Dive

ggml-org’s llama.cpp, the wildly popular open-source C++ implementation for running LLaMA-family large language models locally, shipped a new release tagged b9623 on June 13, 2025. This release focuses on a single but important bug fix: patching the Jinja templating engine’s split() and replace() functions when called with an empty first argument. The patch, merged via PR #24574 and commit 341babc, ensures these functions behave correctly in edge cases, preventing crashes or unexpected behavior in model chat templates.

The fix affects any user relying on custom Jinja prompt templates, which are common in local LLM workflows. The release includes pre-built binaries for a wide range of platforms: Apple Silicon (arm64), Intel Mac, iOS XCFramework, Ubuntu (x64, arm64, s390x) with CPU, Vulkan, ROCm, OpenVINO, and SYCL backends, plus Windows x64/arm64 with CPU, CUDA 12/13, Vulkan, SYCL, and HIP support. Android arm64 is also supported. The project continues its rapid release cycle with 116K GitHub stars, solidifying its status as the go-to local inference engine.

Key Points
  • llama.cpp v b9623 fixes a bug in Jinja's split() and replace() when the first argument is empty.
  • The fix (commit 341babc) addresses issue #24574 from the ggml-org repository.
  • Builds available across 20+ platform/backend combinations including macOS, Linux, Windows, iOS, Android, CUDA, Vulkan, ROCm, and SYCL.

Why It Matters

Ensures reliability for developers running local LLMs with custom prompt templates, preventing silent failures in production.

📬 Get the top 10 AI stories daily