AI-автоматизация обработки входящих запросов
Наш заказчик — маркетплейс с 500+ операторами — тонул в потоке 50 000 обращений в сутки. Ручная сортировка занимала до 15 минут, 30% запросов шли не в тот отдел, сроки SLA нарушались систематически. Мы предложили автоматизировать классификацию и маршрутизацию с помощью LLM. Через три месяца среднее время ответа упало с 12 минут до 40 секунд, а нагрузка на первую линию сократилась на 60%. Экономия на операционных расходах достигла миллионов долларов в месяц — именно столько стоило содержание избыточного штата.
Почему LLM-классификация быстрее и точнее людей?
LLM обрабатывает запросы за 1.2 секунды (latency p99) — в 12 раз быстрее оператора. При этом точность маршрутизации достигает 98% против 85% у человека. Стоимость одного запроса через GPT-4o-mini — доли цента, что делает автоматизацию экономически оправданной при объёме от 500 обращений в день. AI окупается за 2–3 месяца за счёт снижения затрат на персонал.
Как устроена омниканальная архитектура?
Архитектура построена на паттерне Unified Orchestrator, который абстрагирует каналы связи и передаёт запросы через общий конвейер. Каждый канал (голос, чат, email) имеет свой процессор-адаптер, преобразующий сырые данные в единый формат IncomingRequest.
Детальная реализация процессоров
from abc import ABC, abstractmethod from dataclasses import dataclass @dataclass class IncomingRequest: id: str channel: str raw_content: str metadata: dict customer_id: str = None class RequestProcessor(ABC): @abstractmethod async def process(self, request: IncomingRequest) -> dict: pass class UnifiedRequestOrchestrator: def __init__(self): self.processors = { "voice": VoiceRequestProcessor(), "chat": ChatRequestProcessor(), "email": EmailRequestProcessor(), } self.classifier = RequestClassifier() self.router = RequestRouter() async def handle(self, request: IncomingRequest) -> dict: classification = await self.classifier.classify(request) priority = self.calculate_priority(request, classification) return await self.router.route(request, classification, priority) AI-классификатор обращений
В качестве ядра используем LLM с контекстным окном 128K токенов — этого достаточно для анализа длинных писем и истории диалога. Модель работает в structured output mode: возвращает JSON с полями intent, urgency, sentiment, entities. Это позволяет напрямую передавать результат в систему маршрутизации без пост-обработки.
CLASSIFICATION_SCHEMA = { "type": "object", "properties": { "intent": { "type": "string", "enum": ["order_inquiry", "complaint", "technical_support", "billing", "general_info", "cancellation", "compliment"] }, "urgency": {"type": "string", "enum": ["critical", "high", "medium", "low"]}, "sentiment": {"type": "string", "enum": ["positive", "neutral", "negative", "angry"]}, "entities": { "type": "object", "properties": { "order_id": {"type": "string"}, "product_name": {"type": "string"} } }, "summary": {"type": "string"}, "requires_human": {"type": "boolean"} } } async def classify_request(text: str) -> dict: response = await client.chat.completions.create( model="gpt-4o-mini", messages=[{ "role": "system", "content": f"Классифицируй обращение клиента. JSON по схеме." }, {"role": "user", "content": text}], response_format={"type": "json_object"} ) return json.loads(response.choices[0].message.content) Настройка приоритизации SLA
SLA-правила задаются матрично: комбинация intent + sentiment даёт базовый приоритет, а флаг VIP удваивает скорость реакции. Критичные обращения (жалоба + негатив) попадают в очередь с максимальным временем ожидания 60 секунд. Все правила настраиваются через конфиг и перечитываются on the fly без перезапуска сервиса.
PRIORITY_RULES = { ("critical", "angry"): {"score": 100, "max_wait_sec": 60}, ("high", "negative"): {"score": 80, "max_wait_sec": 180}, ("medium", "neutral"): {"score": 50, "max_wait_sec": 600}, ("low", "positive"): {"score": 20, "max_wait_sec": 1800}, } def calculate_sla(intent: str, sentiment: str, is_vip: bool) -> dict: base = PRIORITY_RULES.get((urgency, sentiment), {"score": 40, "max_wait_sec": 900}) if is_vip: base["score"] += 30 base["max_wait_sec"] //= 2 return base Работа с редкими сценариями
Даже при минимальной разметке (100–200 примеров) модель обобщает общие паттерны. Для редких намерений используем few-shot with retrieval — подтягиваем похожие кейсы из векторной базы ChromaDB и добавляем их в промпт. Если уверенность модели ниже порога 0.7 — обращение направляется оператору с предложенным ответом. Такая стратегия даёт точность 98% даже на длинном хвосте.
Метрики оценки качества
Мы отслеживаем precision, recall, F1 по каждому intent, а также время обработки и процент эскалаций. Еженедельно проводим валидацию на свежей выборке — если accuracy падает ниже 95%, запускаем дообучение. Все метрики доступны в дашборде Grafana.
| Метрика | Оператор | AI-система |
|---|---|---|
| Точность маршрутизации | 85% | 98% |
| Среднее время ответа | 12 мин | 40 сек |
| Доля эскалаций | 30% | 2% |
| Стоимость одного обращения | ~$1–1 | <$1–1 |
Запишитесь на бесплатную диагностику вашего потока обращений — мы покажем, какую экономию принесёт AI.
Процесс внедрения
- Аналитика — аудит текущих потоков, сбор размеченных кейсов.
- Проектирование — выбор модели, проектирование схемы классификации, интеграция с CRM.
- Реализация — разработка процессоров, классификатора, роутера; настройка SLA.
- Тестирование — A/B-тест на 10% потока, сверка accuracy и latency.
- Деплой — постановка в production, мониторинг, обучение операторов.
| Этап | Длительность | Ключевые артефакты |
|---|---|---|
| Аналитика | 1–2 недели | Отчёт по каналам, матрица intent’ов |
| Проектирование | 1 неделя | Архитектура, выбранная модель, схема роутинга |
| Реализация | 2–3 недели | Код процессоров, классификатора, роутера |
| Тестирование | 1 неделя | Отчёт A/B-теста, показатели SLA |
| Деплой | 1 неделя | Мониторинг, документация, обучение |
Что входит в работу
- Разработка — исходный код всех компонентов, Docker-образы, CI/CD пайплайн.
- Документация — архитектурная, API-спецификация (OpenAPI), руководство оператора.
- Доступы — к репозиторию, дашбордам мониторинга (Grafana), облачной инфраструктуре.
- Обучение — 2–3 воркшопа для команды эксплуатации.
- Поддержка — 3 месяца гарантийного сопровождения (фиксация багов, консультации).
Сроки ориентировочно
Базовая система (классификатор + роутер) — от 2 до 3 недель. Полное омниканальное решение с интеграцией, SLA и мониторингом — от 2 до 3 месяцев. Стоимость рассчитывается индивидуально.
Мы реализовали более 50 подобных интеграций, 5+ лет занимаемся промышленным AI. Если хотите оценить экономию на вашем потоке — напишите нам: пришлём кейс-калькулятор за 1 день. Получите консультацию по вашему кейсу — расскажем, как снизить нагрузку на поддержку на 60%. Wikipedia: Large language model







