Исследования ИИ

Архитектура мультиагентной системы с отказоустойчивостью: разбор реального кейса

8 параллельных агентов, скоринговая петля качества, автофоллбэк между Claude/GPT/Gemini. Разбираю production-архитектуру на LangGraph с fan-out, retry и fallback.

21 марта 2026 г.
10 мин чтения
мультиагентные системы

Март прошлого года. Наш AI-сервис обрабатывает входящие заявки клиентов: классифицирует, извлекает данные, генерирует ответ, проверяет compliance. Один агент, одна модель, линейная цепочка. Работает — пока работает.

Понедельник утро, 9:47. OpenAI API возвращает 503. Сервис лежит. Очередь заявок растёт. Клиенты ждут. Мы ждём, пока OpenAI починится. 47 минут даунтайма. 230 необработанных заявок.

Через две недели — другая проблема. API работает, но Claude на сложных юридических текстах начинает галлюцинировать: выдумывает номера статей закона. Модель не упала — она уверенно врёт. Ошибку поймали через 4 часа, когда клиент пожаловался.

Два инцидента — два разных типа отказа. Первый: провайдер недоступен. Второй: провайдер доступен, но выдаёт мусор. Линейная архитектура «один агент → одна модель» уязвима к обоим.

Я перестроил систему. Восемь параллельных агентов, три LLM-провайдера, скоринговая петля качества, автоматический фоллбэк. За последние 11 месяцев — ноль минут даунтайма по вине AI-слоя. Разберу архитектуру.

Общая схема

Три слоя: параллельный fan-out → quality gate → fallback chain.

Входящая заявка уходит одновременно в восемь агентов. Все восемь результатов собираются в quality gate. Если скор < 0.8 — только провалившиеся агенты перезапускаются с другой моделью (до 3 попыток).

Слой 1: параллельный fan-out

Параллельность даёт два преимущества: скорость (8×2-4 сек последовательно → max 2-4 сек параллельно) и изоляцию отказов (падение одного агента не блокирует остальных).

Слой 2: Quality Gate

Структурные проверки (без LLM) — правильные категории, числа вместо текста, валидный JSON. Семантические проверки (gpt-4o-mini) — релевантность, полнота, отсутствие галлюцинаций.

Критически важно: scorer и agent используют разные модели. Одна модель не оценивает саму себя.

Слой 3: Retry Loop + Fallback

FALLBACK_CHAIN = [Claude Sonnet → GPT-4o → Gemini 1.5 Pro]. Максимум 3 попытки. После третьей — результат с флагом needs_human_review: true.

Результат: 11 месяцев в production

  • Даунтайм AI-слоя: 0 минут
  • Quality score: 0.91 (было 0.84)
  • Латентность p50: 3.2 сек (было 18 сек)
  • Retry rate: 12%, из них 94% разрешаются на втором провайдере

Монолит быстрее строить. Но жить с ним в production — дороже. Каждый инцидент с монолитом — полный отказ. С параллельной архитектурой — частичная деградация, которую система компенсирует автоматически.

Автор: Алик Завалишев

Эксперт по ИИ и автоматизации процессов

Больше статей