Обработка ошибок и повторные запросы

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

О чём урок

Этот Colab notebook демонстрирует стратегии обработки распространенных ошибок, с которыми вы можете столкнуться при работе с Gemini API: Временные ошибки: Временные сбои из-за проблем с сетью, перегрузки сервера и т. д. Лимиты запросов: Ограничения на количество запросов, которые вы можете сделать в течение определенного периода времени. Тайм-ауты: Когда вызов API занимает слишком много времени для выполнения. Вам доступны два основных подхода: Автоматические повторные попытки: Простой способ повторно выполнять запросы, когда они завершаются сбоем из-за временных ошибок. Ручной откат и повторная попытка: Более настраиваемый подход, обеспечивающий более точный контроль над поведением повторных попыток. Лимиты запросов Gemini Лимиты запросов по умолчанию для различных моделей Gemini изложены в документации по моделям Gemini API. Если вашему приложению требуется более высокая квота, рассмотрите возможность запроса на увеличение лимита запросов. Чтобы запустить следующие cells, сохраните ваш API key в Colab Secret с именем GEMINI_API_KEY. Если у вас нет API key или вам нужна помощь в создании Colab Secret, см. руководство по аутентификации. При использовании google-genai вы можете настроить повторные попытки через HttpRetryOptions в google.genai.types. Это позволяет согласовать поведение повторных попыток с исключениями, которые фактически вызывает SDK. Преимущества: Простота: Требует минимальных изменений в коде для значительного повышения надежности. Надежность: Эффективно устраняет большинство временных ошибок без дополнительной логики. Настройка поведения повторных попыток: Используйте HttpRetryOptions для управления количеством попыток, задержками и тем, какие коды состояния HTTP должны вызывать повторную попытку. attempts: Общее количество попыток до отказа. initial_delay: Начальная задержка в секундах перед первой повторной попыткой. max_delay: Максимальная задержка в секундах между повторными попытками. http_status_codes: Коды состояния HTTP, которые должны вызывать повторную попытку. Если вы сталкиваетесь с ошибками ReadTimeout или DeadlineExceeded, означающими, что вызов API превышает тайм-аут по умолчанию (600 секунд), вы можете вручную настроить его, определив timeout в аргументе http_options.

План урока

  1. Настройка вашего API ключа
  2. Автоматические повторные попытки
  3. Ручное увеличение тайм-аута при длительном ответе
  4. Ручная реализация отката и повторной попытки с обработкой ошибок
  5. Тестирование обработки ошибок с механизмом повторных попыток

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

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

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