Ошибка шаблона чата Gemma 4: Параметры инструментов с anyOf/null отображаются как пустой тип

✍️ OpenClawRadar📅 Опубликовано: 29 апреля 2026 г.🔗 Source
Ошибка шаблона чата Gemma 4: Параметры инструментов с anyOf/null отображаются как пустой тип
Ad

Пользователь Reddit обнаружил, что Gemma 4 (gemma-4-31B-it) не может корректно обрабатывать параметры инструментов, использующие шаблон JSON Schema anyOf: [$ref, null] — распространенный способ для nullable-ссылок на объекты. Стандартный chat-шаблон предполагает наличие поля type на верхнем уровне, поэтому такие схемы, как:

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

теряют anyOf, $ref и $defs, что приводит к type: "" в промпте. Это нарушает работу вызова инструментов на нескольких движках вывода (llama-server и других), в то время как Qwen3.5 и gpt-oss-20b обрабатывают это правильно.

Ad

Диагностика и исправление

Пользователь провел отладку с подробным логированием llama-server и с помощью GPT-5.5-high (через codex CLI) сравнил логи Qwen3.5-27B-Q4_K_M и gemma-4-31B-it-Q4_K_S на MacBook Pro. Корень проблемы был найден в предположении chat-шаблона Gemma, что каждый параметр имеет прямой ключ type. Небольшое изменение Jinja-шаблона теперь сохраняет структуры anyOf, $ref и $defs.

Исправленный Jinja-шаблон доступен на Pastebin: https://pastebin.com/p9z3BAC0

Был отправлен пул-реквест в репозиторий Hugging Face для gemma-4-31B-it.

Вывод

Если вы используете Gemma 4 для вызова инструментов/функций с nullable-ссылками JSON Schema, примените исправленный chat-шаблон. Пользователи Qwen3.5 или gpt-oss-20b не затронуты.

📖 Прочитать полный источник: r/LocalLLaMA

Ad

👀 Смотрите также

Kimi K2.6 против Claude Opus 4.7: Практическое тестирование с модом доски объявлений Minetest
Новости

Kimi K2.6 против Claude Opus 4.7: Практическое тестирование с модом доски объявлений Minetest

Разработчик протестировал Kimi K2.6 и Claude Opus 4.7 на создании мода доски объявлений для Minetest/Luanti с бэкендом на TypeScript и логированием в Google Sheets. Opus справился чисто; Kimi провалил интеграционную часть.

OpenClawRadar
Клод создает Python-скрипт, который находит рекордный 10 069-значный эмирп.
Новости

Клод создает Python-скрипт, который находит рекордный 10 069-значный эмирп.

Claude Opus 4.6 от Anthropic сгенерировал Python-скрипт, который обнаружил эмирп (обратимое простое число) из 10 069 цифр примерно за один день процессорного времени, побив предыдущий мировой рекорд. Скрипт использует четыре уровня решета простых чисел, включая CUDA-ядро для быстрой генерации случайных чисел.

OpenClawRadar
Кими $19/м Обновление: Улучшение OpenClaw с помощью структурированных моделей
Новости

Кими $19/м Обновление: Улучшение OpenClaw с помощью структурированных моделей

Kimi представляет свое последнее обновление, стоимостью $19 в месяц, ориентированное на улучшение структуры моделей в OpenClaw. Это обновление обещает упрощенные операции и улучшенные функции автоматизации.

OpenClawRadar
Утечка данных раскрыла модель искусственного интеллекта Claude Mythos от Anthropic, которую описывают как «скачок» в возможностях.
Новости

Утечка данных раскрыла модель искусственного интеллекта Claude Mythos от Anthropic, которую описывают как «скачок» в возможностях.

Anthropic тестирует новую модель ИИ под названием Claude Mythos (также известную как Capybara), которая представляет собой «качественный скачок» в производительности. По сравнению с Claude Opus 4.6, она демонстрирует значительно более высокие результаты в тестах на написание программного кода, академическое мышление и кибербезопасность. Существование модели было раскрыто в результате утечки данных из незащищенного, общедоступного кэша, содержащего около 3000 неопубликованных материалов.

OpenClawRadar