Ответ вслух Senior LLM в проде обновлено

Провайдер упал: что будет с сервисом

Вопрос

Ваш сервис полностью зависит от одного внешнего LLM-провайдера. Как сделать его устойчивым к сбоям провайдера?

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Образцовый ответ: «Первое, таймауты: на соединение, на весь ответ и на паузу в стриме. Ретраи только для 429, 5xx и сетевых ошибок, с экспонентой, джиттером и учётом Retry-After, и ограниченным числом попыток.

Что должно прозвучать в ответе

  • Таймауты и ретраи только временных ошибок с джиттером

  • Circuit breaker при серии ошибок

  • Резервная модель или провайдер, заранее проверенные на наборе

  • Деградация: упрощённый ответ, очередь, отключение второстепенного

  • Свои лимиты и приоритеты запросов

  • Мониторинг ошибок и задержек с алертами

Что могут спросить следом

  • Как переключаться между провайдерами без деплоя?
  • Что делать с запросами, которые уже в процессе стриминга?

Разбор

Образцовый ответ: «Первое, таймауты: на соединение, на весь ответ и на паузу в стриме. Ретраи только для 429, 5xx и сетевых ошибок, с экспонентой, джиттером и учётом Retry-After, и ограниченным числом попыток. При серии ошибок circuit breaker перестаёт слать запросы и сразу идёт в фолбэк. Фолбэк это другая модель или провайдер, через которые заранее прогнан тот же оценочный набор, с отдельной версией промпта, если надо. Переключение делается настройкой в шлюзе, без деплоя. Если и резерв недоступен, деградирую: показываю честное сообщение, ставлю асинхронные задачи в очередь, отключаю второстепенные функции. На своей стороне лимиты и приоритеты, чтобы при перегрузке страдали фоновые задачи, а не пользователи. Всё под мониторингом с алертами на долю ошибок, фолбэков и p95».

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.