Представьте: AI-агент вашего ключевого клиента отвечает на запросы с задержкой в 30 секунд, а потом еще и галлюцинирует, предлагая неверные данные. Клиент теряет деньги, вы — репутацию. Именно так произошло с одним финтех-стартапом: их агент по обработке транзакций превысил p95 latency в 12 секунд, и они потеряли 15% контрактов за квартал. Мы внедрили SLA-систему с мониторингом в реальном времени, и за месяц latency упал до p95 < 4 секунд. При этом доступность выросла до 99.7%. Наш опыт — более 50 внедрённых AI-решений, сертификация по Kubernetes и лицензии на ML-платформы. Мы знаем, как построить SLA-систему, которая гарантирует доступность, скорость и качество ответов под ваши конкретные метрики.
Проблемы, которые решаем
Зависимость от LLM-провайдеров. Если OpenAI или Anthropic падают — ваш агент тоже падает. Мы добавляем fallback-цепочки на резервные модели (например, Claude 3.5 → LLaMA 3 через vLLM) и кэшируем embeddings в ChromaDB. Доступность остаётся > 99.5% даже при падении одного провайдера.
Непредсказуемое время ответа. LLM генерирует токены нелинейно: p95 может быть в 5 раз выше p50. Мы оптимизируем через streaming, квантизацию INT8 и batch-обработку на Triton Inference Server. Типичный результат — p95 < 5 секунд, p99 < 8 секунд, что сокращает затраты на инфраструктуру до 40%.
Качество ответа — субъективная метрика. LLM может формально ответить, но не решить задачу. Мы используем LLM-судью на базе GPT-4 с ансамблем классификаторов, чтобы детектировать галлюцинации, отказы и нерелевантные ответы. Метрика task completion показывает, завершил ли агент задачу успешно, с точностью > 95%.
Как мы строим мониторинг SLA?
Мы строим систему на базе Prometheus + Grafana с кастомными экспортёрами для LLM-запросов. Прометеус собирает метрики с интервалом 15 секунд, а Grafana визуализирует дашборды реального времени. Для алертинга используем Alertmanager с интеграцией в Slack и PagerDuty. Кастомные экспортёры написаны на Python с библиотекой prometheus_client — они измеряют latency per token, скорость стриминга и качество ответа.
Типовые SLA метрики для AI-агентов
| Метрика | Обычное SLA | AI-специфика |
|---|---|---|
| Availability | > 99.5% | Включая LLM provider availability |
| Response time (p95) | < 5s | Зависит от длины ответа (tokens/s) |
| Error rate | < 1% | Включая AI-ошибки (hallucination, refusal) |
| Task completion | N/A | > 95% задач завершаются успешно |
| Quality score | N/A | > 4.0/5.0 по LLM-судье |
Почему SLA для AI-агентов сложнее традиционного?
Традиционный SLA оперирует простыми метриками: аптайм, latency, error rate. Для AI-агентов добавляется качество ответа — метрика, которую нельзя измерить пингом. Мы используем ансамбль классификаторов и LLM-as-a-judge, чтобы детектировать галлюцинации и отказы. К тому же время ответа сильно зависит от длины генерируемого текста, поэтому мы отслеживаем не просто latency, а latency per token. Например, модель с контекстным окном 8K токенов может генерировать ответ в 10 раз длиннее, чем простая команда — это приходится учитывать в SLO.
Реальное внедрение: кейс логистического оператора
Клиенту требовался AI-агент для автоматизации обработки заказов. Первоначальный прототип на GPT-4 имел p95 latency 9.2 секунды и доступность 98% из-за частых таймаутов OpenAI. Мы применили fallback на Mistral Large, кэш embeddings в pgvector, и настроисли streaming с batch-обработкой. Итог: p95 = 3.8 секунды, availability = 99.6%, task completion = 97%. Error budget позволил клиенту безопасно внедрять новые функции без риска нарушения SLA.
Мониторинг SLA в реальном времени
from dataclasses import dataclass from datetime import datetime, timedelta @dataclass class SLADefinition: name: str metric: str threshold: float comparison: str # "gte" / "lte" measurement_window: int # минуты alerting_threshold: float # процент нарушений для алерта SLA_SET = [ SLADefinition("availability", "uptime_pct", 99.5, "gte", 60, 0.1), SLADefinition("p95_latency", "p95_latency_ms", 8000, "lte", 5, 0.05), SLADefinition("task_success", "success_rate", 0.95, "gte", 60, 0.1), SLADefinition("quality", "avg_quality_score", 4.0, "gte", 1440, 0.05), ] class SLAMonitor: def check_sla(self, agent_name: str) -> SLAStatus: violations = [] for sla in SLA_SET: current_value = self.metrics.get(agent_name, sla.metric, sla.measurement_window) is_met = self._compare(current_value, sla.threshold, sla.comparison) if not is_met: violations.append(SLAViolation( sla_name=sla.name, expected=sla.threshold, actual=current_value, since=self.metrics.get_violation_start(agent_name, sla.name) )) return SLAStatus( agent_name=agent_name, is_healthy=len(violations) == 0, violations=violations, checked_at=datetime.utcnow() ) Error Budgets (следуем подходу Google SRE)
SLA 99.5% availability = 0.5% error budget. Это 216 минут в месяц, которые можно потратить на деплои и эксперименты. При исчерпании — freeze на изменения. Мы автоматизируем расчёт и алертинг при сгорании бюджета. Например, если burn rate превышает 1.0 за последнюю неделю — система предупреждает команду об ускоренном расходе.
class ErrorBudgetTracker: def calculate(self, agent_name: str, period_days: int = 30) -> ErrorBudget: sla_availability = 0.995 # 99.5% total_minutes = period_days * 24 * 60 # Суммарное время недоступности за период downtime_minutes = self.metrics.get_downtime(agent_name, days=period_days) actual_availability = 1 - (downtime_minutes / total_minutes) budget_minutes = total_minutes * (1 - sla_availability) # 216 минут за 30 дней consumed_minutes = downtime_minutes remaining_minutes = budget_minutes - consumed_minutes remaining_pct = remaining_minutes / budget_minutes return ErrorBudget( total_budget_minutes=budget_minutes, consumed_minutes=consumed_minutes, remaining_minutes=remaining_minutes, remaining_pct=remaining_pct, is_exhausted=remaining_pct <= 0, burn_rate=consumed_minutes / budget_minutes / (period_days / 30) ) Сравнение подходов к мониторингу
| Параметр | Prometheus + Grafana | Cloud-мониторинг (CloudWatch) |
|---|---|---|
| Настройка кастомных метрик | Гибкая, любой экспортёр | Ограничен стандартными метриками |
| Алертинг по сложным условиям | Поддержка PromQL | Условные правила |
| Хранение истории | Любые Retention | Ограниченные планом |
| Стоимость при большом объёме | Ниже | Выше при масштабе |
Prometheus-based мониторинг даёт экономию бюджета до 30% по сравнению с облачными решениями, при этом скорость настройки кастомных метрик в 2–3 раза выше.
Отчётность для клиентов
Ежемесячный SLA-отчёт включает: фактические значения vs SLA targets, время нарушений с причинами, RCA по инцидентам, план мероприятий. Публичный status page для enterprise клиентов с историей инцидентов и плановых работ. Мы также предоставляем дашборды в Grafana для самостоятельного мониторинга.
Контрактные штрафы и кредиты
Для enterprise SLA с финансовыми обязательствами: автоматический расчёт кредитов при нарушении SLA. Например: availability 99.0–99.5% → 5% credit, < 99.0% → 15% credit. Система автоматически рассчитывает и инициирует credit notes через биллинговую систему.
Процесс работы
Мы идём по этапам: аудит текущих AI-агентов → проектирование метрик и SLO → реализация мониторинга и алертинга → настройка error budget и отчётов → тестирование и деплой. На выходе вы получаете работающую SLA-систему с документацией, дашбордами и алгоритмом действий при нарушениях.
Чек-лист внедрения SLA-системы
- Определить SLO для каждой метрики (latency, availability, quality)
- Настроить сбор метрик через Prometheus экспортёры
- Развернуть дашборды Grafana с визуализацией SLA и error budget
- Настроить алерты в Alertmanager (Slack, Telegram, PagerDuty)
- Интегрировать биллинг для автоматических кредитов
- Провести RCA-тренинг для команды
Что входит в deliverables
- Конфигурация мониторинга (Prometheus, Grafana, Alertmanager)
- Интеграция с LLM-провайдерами и кэшем
- Дашборды реального времени по SLA
- Настройка алертов (Slack, Telegram, PagerDuty)
- Ежемесячные отчёты с RCA
- Обучение команды: как управлять error budget и реагировать на инциденты
Получите консультацию по внедрению SLA-системы для ваших AI-агентов. Мы оценим проект и предложим архитектуру под ваши метрики. Опыт более 50 проектов по ML и AI — гарантируем соблюдение SLA. Закажите аудит текущей системы — первый этап бесплатно.







