Google has pushed a batch of improvements to Gemma 4 across all model sizes, addressing a set of pain points that the community had been vocal about since the model's April launch. This isn't a new model, but it's a meaningful quality-of-life update that touches inference speed, vision quality, tool calling reliability, and response completeness.

The laziness problem, finally addressed

One of the most consistent complaints from Gemma 4 users was the model cutting answers short or refusing to complete tasks mid-way. Google says it has significantly reduced these edge cases, leading to more complete responses. This was a real blocker for agentic workflows: users found the model particularly prone to incomplete outputs at higher context lengths, and in coding agent setups, it would sometimes fail to call tools consistently, leading to minutes of trial and error.

Alongside this, the chat template has been overhauled. The previous template had several structural bugs that caused crashes and malformed conversations:

  • Unmatched tool_call_id in tool responses now falls back to 'unknown' instead of crashing
  • Consistent .get() access prevents StrictUndefined errors for optional message keys
  • The backward scan for model-turn continuation is now O(1) instead of O(n) per message

Google has also provided new Jinja chat templates for multiple Gemma 4 variants (31B, 27B, E4B, and E2B) specifically aimed at improving tool-calling behavior. If you're running Gemma 4 locally via llama.cpp, it's recommended to use the newly updated templates and apply them via the

Alpha Signal

Don't miss what's next in AI

Join 300,000+ engineers and researchers who get the signal, not the noise.

  • Full access to in-depth AI research breakdowns
  • Be the first to know what's trending before it hits mainstream
  • Daily curated papers, repos, and industry moves