Live API через WebSocket

Урок 66 из 69 курса «Gemini API: быстрый старт»: официальный курс Gemini API Cookbook (Гугл Джемини) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

О чём урок

Okay, I have reviewed the HTML content and the translation rules. I will now proceed with the translation, ensuring all rules are strictly followed. Here's the translated HTML: ```html LLC. Этот notebook демонстрирует простое использование Gemini Live API. Этот Notebook подключается напрямую к websockets API, чтобы продемонстрировать низкоуровневые детали для тех, кто разрабатывает без использования SDK. Если вас не интересуют низкоуровневые детали websocket, вам следует ознакомиться с версией этого notebook, использующей SDK. Этот notebook реализует простой пошаговый чат, где вы отправляете сообщения в виде текста, а модель отвечает аудио. API способен на гораздо большее. Цель здесь — продемонстрировать с помощью простого кода. Чтобы запустить следующую cell, ваш API key должен быть сохранен в Colab Secret с именем GEMINI_API_KEY. Если у вас еще нет API key или вы не знаете, как создать Colab Secret, см. Аутентификация для примера. Live API работает с моделью gemini-3.1-flash-live-preview. Вам необходимо использовать версию API v1beta. Раскомментируйте вызов logger.setLevel, чтобы отобразить сообщения лога Код в этом разделе не является обязательным для понимания API, не стесняйтесь перейти к следующему разделу. Самый простой способ воспроизвести аудио в Colab — это записать его в файл .wav. Класс ниже реализует взаимодействие с Live API. Здесь стоит описать 5 методов: Этот метод: Открывает websocket, подключающийся к Live API Вызывает начальный метод setup Затем итерирует по жестко заданным turns, вызывая send и recv для каждого. Метод setup отправляет сообщение setup и ожидает ответа. Вам не следует пытаться send или recv что-либо еще от модели, пока вы не получите ответ setup_complete от модели. Сообщение setup (объект BidiGenerateContentSetup) — это место, где вы можете установить model, generation_config, system_instructions, tools и safety_settings. Метод send принимает жестко заданную текстовую строку, выводит её и отправляет модели как сообщение realtimeInput (BidiGenerateContentRealtimeInput). Метод recv собирает фрагменты

План урока

  1. Настройка
  2. Установка и импорт
  3. Константы
  4. Логирование
  5. Модуль записи файлов Wave
  6. Основной аудио-цикл
  7. run - Основной цикл
  8. setup - Начальная настройка

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Урок входит в темы

Полезные гиды