Graceful degradation в 2026 нужна потому, что LLM-приложение почти никогда не падает одним бинарным способом. Чаще система начинает частично терять capability: retrieval не нашёл документы, premium model недоступна, tool отвечает медленно, structured output больше не проходит валидацию, queue растёт, а внешний провайдер даёт rate limits. В этот момент вопрос уже не "жив ли сервис", а какую минимально честную и полезную функцию он всё ещё может дать пользователю.
Это и есть правильная рамка деградации: не вернуть "что-нибудь", а сохранить как можно больше полезности и как можно меньше лжи.
Старая трактовка слишком узкая. Реальная деградация затрагивает разные слои:
Поэтому degraded mode полезно описывать не как "secondary model", а как набор service modes:
Это главный design step.
Для разных продуктов минимально допустимый контракт разный:
Именно этот минимальный контракт определяет, что является graceful degradation, а что уже dangerous improvisation.
Подходит, если:
Система выдаёт только ту часть результата, которая ещё подтверждена:
Когда синхронный path перегрет, лучше:
Подходит там, где automation boundary уже нарушена:
Иногда лучший degraded path - не отвечать категорично вообще.
Когда система под нагрузкой, команды часто слишком быстро выбирают "давайте ответим чем угодно, лишь бы быстро".
Но в ряде продуктов лучше:
Это особенно верно для:
Queue-first UX выглядит менее эффектно, но обычно честнее и дешевле, чем массовый low-quality downgrade.
Есть capabilities, исчезновение которых нельзя прятать:
Если такой слой недоступен, система должна либо явно понизить режим, либо отказать, либо уйти на manual review.
Система уже без retrieval или validation, но интерфейс тот же.
Одинаковый fallback для low-risk FAQ и high-risk action.
Никто не видит, сколько трафика уже работает в пониженном режиме.
Пользователь не понимает, что сервис сейчас ограничен.
Система умеет деградировать, но не умеет нормально вернуться в full mode.
Минимальный degradation dashboard обычно включает:
Отдельно полезно считать silent degradation incidents - случаи, когда capability пропала, а продукт не сообщил об этом.