ИИтак

← Назад

Рекомендации разработчика · модель Gemini 3.5 Flash

Как работать с Gemini 3.5 Flash

Пересказ на русском. Оригинал: «What's new in Gemini 3.5 Flash» ↗ — Google, 23 сентября, на английском.

Руководство Google по переходу на Gemini 3.5 Flash: какой уровень размышлений выбрать, что убрать из запросов и как возвращать модели результаты функций.

Коротко

  • По умолчанию уровень размышлений medium, а не high, как у Gemini 3 Flash: перепроверьте прежние запросы.
  • temperature, top_p и top_k из запросов уберите: рассуждения настроены под значения по умолчанию.
  • Глубину задавайте только через thinking_level; вместе с thinking_budget в одном запросе он даёт ошибку 400.
  • В ответе функции возвращайте id вызова и то же name — ровно один ответ на вызов.
  • Ход рассуждений сам переносится между ходами разговора: многошаговые задачи решаются лучше, но токенов может уйти больше.

Уровень размышлений

Глубину рассуждений задаёт thinking_level; без параметра действует medium.

  • minimal — для скорости: чат, короткие фактические ответы, простые вызовы инструментов; размышления не выключает полностью.
  • low — код и задачи агентов с малым числом шагов, где важна задержка; в этой версии заметно улучшен.
  • medium — лучшее качество для большинства задач; Google советует начинать с него.
  • high — предельная глубина: сложные рассуждения, трудная математика, самые тяжёлые задачи по коду.

Вместо{"thinking": {"thinking_budget": 7500}}

Лучше{"thinking": {"thinking_level": "medium"}}

Какие настройки убрать

Рассуждения моделей Gemini 3.x отлажены под значения по умолчанию.

  1. Удалите temperature, top_p и top_k из всех запросов.
  2. Удалите candidate_count — в Gemini 3.x он не поддерживается.
  3. Если нужна предсказуемость, задайте правила в системной инструкции.

Вместоtemperature: 0.2 ради одинаковых ответов

Лучшесистемная инструкция: «Отвечай только по договору выше. Если ответа в нём нет, напиши: „В договоре не указано“»

Как возвращать результаты функций

Interactions API (историю разговора хранит сервер) отвечает ошибкой на несогласованные ответы функций; generateContent (историю собирает ваш код) пока ошибки не даёт, но модель обычно возвращает пустой ответ с finish_reason: STOP.

  • Совпадение: в FunctionResponse кладите id из FunctionCall (в Interactions API — call_id) и то же name; на каждый вызов — ровно один ответ.
  • Картинки и медиа: возвращайте их внутри ответа функции, а не отдельными частями рядом, иначе рассуждения модели могут просочиться в ответ.
  • Указания к результату: дописывайте в конец текста результата через пустую строку (\n\n), а не отдельной частью.

Что изменилось по сравнению с Gemini 3 и 3.1

  • Умолчание: medium вместо high.
  • Память рассуждений: ход мыслей переносится сам; в generateContent передавайте историю целиком, с подписями мыслей, — SDK делают это сами.
  • Ответы функций: совпадение id, name и числа ответов стало обязательным.
  • Лишние вызовы инструментов: если модель вызывает их слишком часто, понизьте уровень размышлений или ограничьте системной инструкцией: «Не больше пяти вызовов инструментов».
  • SDK: обновите google-genai до 2.0.0 или новее — в ней изменился Interactions API.

Как писать запросы

Gemini 3.x — рассуждающие модели, и запросы для них пишут иначе.

  • Формулируйте коротко и прямо: многословные приёмы для старых моделей заставляют модель разбирать сам запрос вместо задачи.
  • С большими данными — книгой, кодовой базой, видео — сначала данные, вопрос в конце, со слов вроде «Опираясь на приведённые выше материалы…».

Вместо«Давай рассуждать шаг за шагом: сначала перечисли все функции в файле, потом оцени риск каждой, потом…»

Лучше«Найди в этом файле места, где при повторной попытке платежа возможна гонка данных, и предложи исправления» с thinking_level: "high"

Источник: What's new in Gemini 3.5 Flash (Google), лицензия CC BY 4.0. Пересказ ИИтак.