Oleksandr Kuzmenko, РедакторОпубліковано 4 хв читанняЗа участі AI · перевірено редактором
TL;DR
- Оновіть клієнтську логіку голосових агентів: `turnComplete: true` більше не означає завершення відповіді.
- Налаштовуйте виклики функцій виключно через `behavior: NON_BLOCKING`, щоб уникнути помилок сесії.
- Встановлюйте `thinking_level: low` для рутинних голосових сценаріїв заради зниження затримок.
Ключові факти
- ID моделі
- gemini-3.8-live-extended-thinking
- Режим виклику функцій
- Лише асинхронний неблокуючий
- Рівні міркувань
- low, medium, high (MINIMAL не підтримується)
- Проактивне аудіо
- Увімкнено постійно
Протокол асинхронного мислення
Google запустила модель gemini-3.8-live-extended-thinking, розроблену для аудіо-взаємодії реального часу зі складним фоновим міркуванням. На відміну від стандартних Live API, прапорець turnComplete: true більше не свідчить про завершення роботи моделі, оскільки сервер може продовжувати обчислення чи викликати зовнішні інструменти під час відтворення аудіо.
Управління станом через interaction_status
Клієнтські застосунки мають валідувати статус через поле interaction_status у вхідних пакетах:
IN_PROGRESS: сервер обробляє контекст, виконує міркування або очікує асинхронних відповідей інструментів.IDLE: виконання завершено, система готова слухати користувача.
Неблокуючі виклики функцій та конфігурація
Модель підтримує виключно неблокуючі виклики (behavior: NON_BLOCKING), блокуючий режим викликає апаратну помилку API. Рівень міркувань регулюється об'єктом thinking_config зі значеннями thinking_level: low, medium або high (MINIMAL не підтримується). Надсилання клієнтського прапорця turn_complete=true миттєво зупиняє активну відповідь моделі.
Спробуй за 2 хвилини
{
"model": "models/gemini-3.8-live-extended-thinking",
"generationConfig": {
"thinking_config": {
"thinking_level": "medium"
}
},
"tools": [{
"function_declarations": [{
"name": "lookup_order",
"behavior": "NON_BLOCKING"
}]
}]
}Коли використовувати
- Розробка голосових ботів підтримки, які роблять запити до бази даних прямо під час розмови.
- Голосові інтерфейси для діагностики, що запускають команди в терміналі з паралельним озвученням.
- Аудіо-агенти реального часу, які потребують складного ланцюжка міркувань перед фінальною відповіддю.
Коли НЕ варто
- Прості сценарії транскрипції та озвучення без паралельних обчислень.
- Текстові чат-боти, де стандартний Gemini 3.8 Flash працює дешевше та простіше.
- Застарілі клієнтські архітектури, розраховані лише на блокуючі синхронні виклики функцій.
Що зробити сьогодні
- Оновіть обробники WebSocket у Live API для перевірки `interaction_status` перед завершенням сесії.
- Перенесіть синхронні виклики функцій на неблокуючі черги з асинхронними колбеками.
- Переконайтеся, що обробка переривання користувачем коректно надсилає `turn_complete=true`.
Назви кроків узяті з блоку «Що зробити сьогодні».
Назви кроків узяті з блоку «Що зробити сьогодні». Оновіть обробники WebSocket у Live API для перевірки `interaction_status` перед завершенням сесії.. Перенесіть синхронні виклики функцій на неблокуючі черги з асинхронними колбеками.. Переконайтеся, що обробка переривання користувачем коректно надсилає `turn_complete=true`.
- Оновіть обробники WebSocket у Live API для перевірки `interaction_status` перед завершенням сесії.
- Перенесіть синхронні виклики функцій на неблокуючі черги з асинхронними колбеками.
- Переконайтеся, що обробка переривання користувачем коректно надсилає `turn_complete=true`.
Що каже спільнота
Confirmed that when you interrupt it, it shuts up immediately. Ya know, like a tool that is useful instead of a friend that burns tokens for no reason.
