Google's Gemma 4 Gets 70% Faster Prefill and Fixes Its Laziness Problem
Google patches Gemma 4 with faster vision, FA4 throughput gains, and community-driven fixes for tool calling and lazy responses

- Laziness fixed: Gemma 4 now produces more complete responses, addressing a major complaint in agentic and coding workflows.
- FA4 on Hopper: Flash Attention 4 is now uniformly enabled on NVIDIA H100/H200 GPUs, with 25-70% prefill throughput gains and up to 31% lower time-to-first-token.
- Vision token budget: Default stays at 280 tokens, but bumping
max_soft_tokensto 1120 unlocks 2.51MP resolution for OCR and document parsing tasks. - Tool calling patched: Chat template overhaul fixes crashes on unmatched tool IDs, StrictUndefined errors, and O(n) scan bugs; new Jinja templates available for all model sizes.
- Interactive Space: New Hugging Face Space lets you preview image quality at each token budget before deploying.
- Available now: All updates are free and live on Hugging Face for E2B, E4B, 12B, 26B-A4B, and 31B variants.
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_idin tool responses now falls back to'unknown'instead of crashing - Consistent
.get()access preventsStrictUndefinederrors 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