Bug no Template de Chat do Gemma 4: Parâmetros de Ferramenta com anyOf/null Renderizados como Tipo Vazio

✍️ OpenClawRadar📅 Publicado: April 29, 2026🔗 Source
Bug no Template de Chat do Gemma 4: Parâmetros de Ferramenta com anyOf/null Renderizados como Tipo Vazio
Ad

Um usuário do Reddit descobriu que o Gemma 4 (gemma-4-31B-it) não consegue analisar parâmetros de ferramentas que usam o padrão JSON Schema anyOf: [$ref, null] — um padrão comum para referências de objetos anuláveis. O template de chat padrão assume um campo type direto no nível superior, então esquemas como este:

{"anyOf": [{"$ref": "#/$defs/SomeObject"}, {"type": "null"}]}

têm anyOf, $ref e $defs removidos, resultando em type: "" no prompt. Isso quebra a chamada de ferramentas em vários mecanismos de inferência (llama-server, outros), enquanto Qwen3.5 e gpt-oss-20b lidam corretamente.

Ad

Diagnóstico e Correção

O usuário depurou com logs detalhados do llama-server e usou o GPT-5.5-high (via codex CLI) para comparar logs entre Qwen3.5-27B-Q4_K_M e gemma-4-31B-it-Q4_K_S em um MacBook Pro. A causa raiz foi rastreada até a suposição do template de chat do Gemma de que cada parâmetro tem uma chave type direta. Uma pequena alteração no template Jinja agora preserva as estruturas anyOf, $ref e $defs.

O template Jinja corrigido está disponível no Pastebin: https://pastebin.com/p9z3BAC0

Um PR foi submetido ao repositório do Hugging Face para gemma-4-31B-it.

Conclusão

Se você usa Gemma 4 para chamadas de ferramentas/funções com referências JSON Schema anuláveis, aplique o template de chat corrigido. Usuários de Qwen3.5 ou gpt-oss-20b não são afetados.

📖 Leia a fonte completa: r/LocalLLaMA

Ad

👀 See Also