Таймауты и длинные ответы
Клиентские таймауты, потоковая передача и неполные результаты
Время ответа зависит от модели, входного контекста, длины вывода и нагрузки Для долгой генерации используйте потоковую передачу
Таймауты клиента
Настраивайте отдельно время подключения, ожидание данных и общий срок задачи, если библиотека это позволяет Значение таймаута выбирайте под сценарий Не используйте время одного ответа как гарантированный предел для всех моделей
Пример настройки Python SDK
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["GETAPI_API_KEY"],
base_url="https://api.getapi.ru/v1",
timeout=120.0,
max_retries=0,
)120 секунд в примере являются настройкой приложения, не лимитом сервиса
Потоковая передача
SSE позволяет показывать результат до завершения генерации Первое событие может содержать роль или рассуждения без пользовательского текста Сохраняйте неполный результат отдельно от завершённого ответа
Прерывание
Закрытие клиентского соединения не гарантирует отмену обработки у поставщика Не считайте прерванный запрос бесплатным При повторе возможно дополнительное списание
Диагностика
Сохраните модель, время отправки, время первого события, длительность и HTTP-статус Если поток оборвался, укажите последний тип события и наличие завершающего признака Не сохраняйте ключ или полные пользовательские сообщения без необходимости
Разбор JSON
Перед объектом ответа допустимы пробельные символы
Используйте стандартный JSON-парсер, а не проверку первого байта на {