Skip to main content

Краткий ответ

Три золотых правила, которые закрывают 90% проблем с таймаутом:
  1. Установите таймаут 360 секунд для синхронных эндпоинтов генерации изображений. У генерации изображений нет async task ID — если разорвать соединение раньше, с вас все равно будет списана тарификация, но изображение вы не получите.
  2. Дайте reasoning-моделям достаточно времени. gemini-3.1-pro-preview, gpt-5.6-sol и gpt-5.5-pro могут выполняться несколько минут, независимо от того, используете вы потоковую передачу или нет.
  3. Никогда не пропускайте длительные запросы через узел CDN. api-cf.apiyi.com находится за Cloudflare и возвращает 524 примерно после 100 секунд; он подходит только для быстрых текстовых вызовов.
Отдельно: если конкретная модель продолжает возвращать 429 (недостаточно параллельных запросов), обратитесь в поддержку, чтобы проверить вашу квоту.

Шпаргалка по тайм-аутам

Запрос с истекшим тайм-аутом все равно тарифицируетсяПосле того как ваш клиент отключится, сервер и upstream-провайдер все равно завершают задачу, и запрос тарифицируется как обычно.Иными словами: если тайм-аут задан слишком низким, вы заплатили и ничего не получили. Задайте безопасную верхнюю границу один раз, вместо того чтобы позволить почти успешному запросу оборваться из-за вашего клиента.

Четыре ключа подробно

Все модели генерации изображений APIYI — синхронные: вы отправляете запрос, удерживаете соединение, и результат возвращается в теле ответа. Здесь нет ID асинхронной задачи и нет эндпоинта опроса — разорвите соединение, и результат исчезнет.Почему значения по умолчанию вредят вам: распространенные HTTP-клиенты по умолчанию ставят 30-60 секунд, тогда как генерация изображений — действительно долгий запрос:
  • GPT-Image-2 при high качестве с 2K/4K на практике занимает 3-5 минут
  • Генерация 4K в Nano Banana начинается примерно с 50 секунд и на пике длится дольше
  • Задачи с несколькими референсными изображениями часто превышают 5 минут
Рекомендация: если не уверены в задержке модели, используйте 360 секунд как базовое значение; для тяжелых задач, таких как 4K и multi-image reference, давайте 600 секунд. Значения для конкретных моделей приведены в Лучшие практики Image API.
Иногда в журнале видно, что изображение завершилось за 30 секунд, тогда как клиент ждал 5 минут. Это связано с тем, что upstream удерживает хвост ответа, и это находится в пределах нормальной вариативности — при щедром таймауте вы все равно получите изображение.
Обычные текстовые модели возвращают ответ за секунды, и легко предположить, что текстовым вызовам никогда не нужна настройка таймаута. Исключение — модели рассуждения:
  • gemini-3.1-pro-preview
  • gpt-5.6-sol
  • gpt-5.5-pro (дороже и медленнее)
  • Любая модель, работающая с высоким уровнем рассуждения
Эти модели долго думают внутри, прежде чем выдать ответ, и несколько минут общей задержки — это нормально.Ключевой момент: streaming не решает эту проблему. Многие считают, что stream=True означает немедленное поступление данных, но модель рассуждения может не выдавать никаких tokens вообще во время фазы размышления, поэтому ваш таймаут чтения все равно срабатывает — и общее время от первого token до последнего по-прежнему велико.Рекомендация: установите таймаут на 300-600 секунд для моделей рассуждения и соотнесите свой уровень рассуждения (reasoning_effort / thinking) со временем, которое вы выделили — более высокий уровень требует большего запаса.
api-cf.apiyi.com APIYI обслуживается глобальной CDN Cloudflare. Она обеспечивает ускорение по всему миру и низкую задержку из-за рубежа, но у нее есть таймаут запроса примерно 100 секунд, после чего вы получаете ошибку 524.⚠️ Это касается не только image endpoints. Любой вызов, который может превысить 100 секунд, плохо подходит, включая:
  • ❌ Генерацию / редактирование изображений
  • ❌ Генерацию видео
  • ❌ Длинный текстовый вывод (длинные статьи, большие переводы, крупные генерации кода)
  • ❌ Задачи с глубоким рассуждением на моделях рассуждения
Подходит: обычный чат и короткие генерации, которые завершаются в пределах 100 секунд.Рекомендация: для длинных запросов используйте api.apiyi.com (рекомендуется в материковом Китае) или vip.apiyi.com (рекомендуется за рубежом). Полное сравнение узлов — в Руководстве по базовому URL.
Если таймауты сопровождаются частыми 429 Too Many Requests, проблема обычно в квоте параллельных запросов, а не в вашем таймауте.Лимиты параллельных запросов действуют для каждой модели отдельно, а не для всего вашего аккаунта. У конкретной модели — особенно у недавно запущенной или дефицитной — может быть более низкая квота.Что делать:
  1. Реализуйте exponential backoff, чтобы не забивать лимит всплесками
  2. Если 429 сохраняются, обратитесь в поддержку APIYI — мы можем проверить фактическую квоту этой модели и помочь ее скорректировать
См. Сколько параллельных запросов я могу использовать? для правил.

Примеры кода

Будьте осторожны с автоповтором при длинных запросах: многие SDK по умолчанию повторяют попытку дважды. Если задача на генерацию изображений или рассуждение завершится по тайм-ауту и выполнит повтор, с вас могут списать оплату три раза, а результата не будет. Установите max_retries в 0 и управляйте повторами в логике своего приложения.

Все еще возникает тайм-аут после увеличения времени ожидания? Проверьте каждый участок пути

1

Шаг 1: Подтвердите, что тайм-аут SDK действительно применяется

Некоторые фреймворки добавляют еще один тайм-аут поверх HTTP-клиента. Выведите фактическую конфигурацию и убедитесь, что используется именно тот параметр, который вы изменили.
2

Шаг 2: Проверьте каждый участок пути

Любой уровень с тайм-аутом, меньшим, чем время генерации, отключит соединение раньше, чем это сделает ваш клиент:
  • Самостоятельно размещенный обратный прокси: Nginx proxy_read_timeout (60с по умолчанию)
  • Облачный балансировщик нагрузки: тайм-аут неактивного соединения
  • API gateway / CDN: тайм-аут origin
  • Serverless-функции: лимит выполнения (часто 30-60с по умолчанию)
  • Воркеры очереди задач: тайм-аут для каждой задачи
Каждый участок пути должен быть увеличен — изменение только на стороне клиента ничего не даст.
3

Шаг 3: Подтвердите, что вы не на узле CDN

Проверьте, что ваш базовый URL — api-cf.apiyi.com. Для длительных запросов переключитесь на api.apiyi.com или vip.apiyi.com.Как правило, 524 почти всегда означает тайм-аут на уровне Cloudflare, а не медленную модель.
4

Шаг 4: Отличайте тайм-ауты от лимитов параллельных запросов

Смотрите на код статуса: 524 и разорванные соединения — это проблемы с тайм-аутом; 429 — это проблема квоты. Способы исправления совершенно разные.
5

Шаг 5: Проверьте журналы вызовов на фактическую задержку

Посмотрите фактическую длительность запроса и тарификацию в консоли журналы вызовов, затем определите на ее основе разумный тайм-аут.

Частые вопросы

Нет. Как только ваш клиент отключается, сервер и upstream все равно завершают задачу, поэтому расходы действительно возникают.Правильный подход — сразу установить таймаут с безопасным верхним пределом, а не использовать маленькое значение и полагаться на повторные попытки — они только увеличивают счет.
Эндпоинты генерации изображений сейчас работают в режиме синхронной сквозной передачи, и мы не храним бизнес-данные клиентов, поэтому вариант «получить по ID после разрыва соединения» недоступен.Рекомендуемая схема: синхронный вызов + щедрый таймаут + ваша собственная таблица состояний задач. По сути это легковесная асинхронная очередь. См. Эндпоинты генерации изображений синхронные или асинхронные?Модели video generation изначально асинхронны и это их не затрагивает.
Частично — но не полагайтесь на это.Потоковая передача действительно выдает первый token раньше, что снижает риск полного отсутствия ответа. Но модель рассуждения может не выдавать ничего во время фазы рассуждения, поэтому таймаут чтения все равно срабатывает, а полный вывод в целом занимает столько же времени.Правильный подход — потоковая передача плюс щедрый таймаут.
На тарификацию это не влияет — с вас взимается плата за использованные tokens и вызовы, а не за то, сколько вы ждали.Единственный вопрос — это использование ресурсов на вашей стороне: долгое соединение занимает воркер или слот пула соединений. При высокой параллельности пропускайте запросы на генерацию изображений и рассуждение через асинхронный I/O или выделенную очередь для долгих задач.
  • 524: таймаут на уровне Cloudflare, то есть вы использовали api-cf.apiyi.com, и запрос превысил примерно 100 секунд. Переключитесь на другие узлы.
  • 429: лимит параллельных запросов или rate limit, не связанный с длительностью. Добавьте экспоненциальную задержку между повторами и обратитесь в поддержку, если это сохраняется.

Лучшие практики Image API

Таблица таймаутов по моделям и справка по формату вывода

Как задать базовый URL?

Различия между четырьмя узлами и как выбрать подходящий

Эндпоинты для изображений синхронные или асинхронные?

Синхронный режим и управление задачами на стороне клиента

Сколько параллельных запросов я могу использовать?

Ограничения параллельных запросов по типу модели и запросам на квоту

Свяжитесь с нами

Поддержка WeCom

QR-код поддержки WeComСканируйте QR-код или нажмите, чтобы связаться с поддержкойВопросы по устранению таймаутов и запросам квоты на параллельные запросы

Электронная почта

Поддержка: [email protected]Коммерческий отдел: [email protected]