AI-агент клиентской поддержки, который закрывает 70% тикетов
Реалистичный дизайн AI-агента поддержки, который закрывает типовые кейсы, эскалирует сложные и не делает ошибок такого рода, что потом всплывают на Hacker News. Архитектура, промпты, ограничители.
Цифры, которые любят сыпать в маркетинге AI-поддержки, — «решает 80% тикетов», «экономит $5 на тикете», «отвечает за 30 секунд» — для одних компаний реальны, для других — вымысел. Разница не в модели. Разница в дизайне.
Хорошо собранный AI-агент поддержки в 2026 году действительно может закрывать 60–75% входящих тикетов без участия человека, с CSAT не хуже, а часто и лучше, чем у only-human-поддержки. Плохо собранный выдаёт галлюцинированные, раздражающие ответы — те самые, что попадают в социальные сети. Архитектура важнее выбора модели.
Эта статья — реалистичная версия: рабочая архитектура, промпты, дающие хорошие ответы, ограничители, предотвращающие катастрофы, и те зоны, где человек всё ещё должен оставаться в петле.
Четыре задачи агента поддержки
Полезный AI-агент поддержки последовательно делает четыре вещи:
- Понять тикет. Что на самом деле спрашивает клиент? С какими эмоциями он сюда пришёл? К какой категории относится проблема?
- Подтянуть нужный контекст. Аккаунт клиента, его историю с вами, релевантную документацию, похожие закрытые тикеты.
- Решить, что делать. Ответить по существу, задать уточняющий вопрос, отправить человеку, выполнить действие над аккаунтом.
- Исполнить решение. Отправить ответ, задать вопрос, эскалировать или выполнить действие — и залогировать всё для аудита.
Большинство неудачных агентов поддержки проваливаются на задаче 2 (нет реального клиентского контекста) или задаче 3 (нет внятной логики маршрутизации). Сама модель проблемой бывает редко.
Архитектура
Грубо:
Incoming ticket
↓
[Triage agent: classify, prioritise, route]
↓
[Context gathering: customer data, history, knowledge base RAG]
↓
[Reasoning agent: decide action]
↓
[Response drafter / action executor]
↓
[Quality check]
↓
[Send or escalate]Каждый шаг — отдельная зона ответственности. Это можно собрать в n8n, в специализированном агентном фреймворке вроде LangGraph или CrewAI, или как набор микросервисов. Архитектурный паттерн от платформы не зависит.
Пройдёмся по каждому шагу.
Шаг 1: триаж
Триаж-агент принимает сырой входящий тикет и классифицирует его.
Надёжный системный промпт для триажа:
You are a triage agent for [Company]'s customer support. Classify each incoming ticket on three dimensions:
1. CATEGORY: one of
- account_access (login, password, MFA, account locked)
- billing (charges, refunds, plan changes, invoices)
- product_question (how-to, feature questions, configuration)
- bug_report (something broken or unexpected)
- feature_request (asking for something we don't have)
- complaint (frustrated customer, not a specific technical issue)
- other
2. URGENCY: one of "critical" (production down, billing dispute), "normal", "low" (informational).
3. EMOTIONAL_TONE: one of "calm", "frustrated", "very_angry". Be honest.
Output JSON. Mark any category you are unsure about with confidence < 0.7.Триаж дёшево гоняется на быстрой модели (fast-вариант GPT-5 или Claude Haiku). Reasoning-модель здесь не нужна — это паттерн-матчинг.
Выход триажа влияет на два решения:
- Тикеты с высокой срочностью или «very_angry» сразу идут к человеку, даже если агент мог бы их обработать. Бренд-риск «AI выдал злому клиенту неправильный ответ» слишком высок.
- Категория определяет, какая база знаний и какие инструменты будут доступны на следующих шагах.
Шаг 2: сбор контекста
Именно здесь делаются и ломаются большинство агентов. Без хорошего контекста агент — это просто LLM, которая угадывает.
Три источника контекста, которые стоит подтягивать:
Данные клиента. Кто этот клиент? Тариф, возраст аккаунта, недавняя активность, статус оплаты, открытые тикеты. Обычно тянется из CRM или продуктовой БД через API.
История переписки. Этот клиент к вам обращался раньше? По какому поводу? Чем закончилось? Избегайте провала вида «я же вам это вчера сказал».
База знаний (через RAG). Документация, статьи help-центра, внутренние ранбуки. Извлекается семантическим поиском по содержимому тикета. (Основы RAG — в наших других статьях.)
Надёжный паттерн сбора контекста:
Given the ticket [content], gather context:
1. Look up the customer by email. If found, retrieve plan, account_age_days, recent_actions (last 7 days), open_tickets.
2. Look up the customer's ticket history (last 90 days). Retrieve up to 5 most recent tickets with their resolution.
3. Search the knowledge base for relevant articles. Retrieve top 3 by semantic similarity. Include article titles, summaries, and URLs.
4. Search resolved tickets in our database for similar issues. Retrieve top 2 with their resolutions.
Combine into a context object.Этот шаг занимает 2–5 секунд и кардинально улучшает то, с чем работает агент.
Шаг 3: reasoning-агент
Теперь агент решает, что делать. Системный промпт:
You are a customer support specialist for [Company]. Your job is to resolve the customer's issue.
For each ticket:
1. Read the ticket and the context carefully. The context includes the customer's account, their history with us, and relevant documentation.
2. Decide on one of these actions:
- RESOLVE: you have a confident answer or solution. Draft a response.
- CLARIFY: you need more information. Draft a clarifying question.
- ESCALATE: this needs a human. Explain why.
- ACT_AND_RESOLVE: you can perform an action on the account (issue refund, reset password, change plan, etc.) using available tools, then respond.
3. Your tone is direct, warm, and competent. Match the customer's register. Never patronise. Never apologise more than once. Never use "we appreciate your patience."
4. When citing documentation, link to the specific article. Do not paraphrase from memory.
5. If the customer is frustrated, acknowledge it briefly and clearly, then move to the resolution.
6. Always escalate if:
- The customer asks to speak to a human.
- The issue involves a financial dispute over €100 / $100.
- You are not confident in your answer (< 70% certainty).
- The customer's tone is angry and the issue is not a simple one-step resolution.
- The issue involves a security or privacy concern.
- The issue involves a complaint about a person on our team.
7. Your output must be JSON:
{
"action": "<resolve|clarify|escalate|act_and_resolve>",
"confidence": <0.0-1.0>,
"reasoning": "<brief explanation>",
"response_draft": "<the email body>",
"escalation_reason": "<if applicable>",
"action_to_take": "<if act_and_resolve, the specific action and arguments>"
}Это сердце агента. Здесь нужна сильная модель — Claude Sonnet 4.5 или GPT-5, — потому что качество этого решения определяет весь опыт.
Шаг 4: исполнение действия
Для RESOLVE и CLARIFY действие простое — отправить письмо.
Для ESCALATE — это маршрутизация в очередь к человеку (Zendesk, Intercom, ваш внутренний инструмент) с приложенным анализом агента, чтобы человек начинал работу уже с контекстом.
Для ACT_AND_RESOLVE агент выполняет действие над аккаунтом. Здесь нужна аккуратность:
- Allowlist разрешённых действий. Не давайте агенту вызывать любой инструмент. Перечислите явно: «агент может оформлять возвраты до €50, сбрасывать пароли, переключать тариф в пределах одного семейства планов и отменять подписки по запросу».
- Пороги подтверждения. Для действий с большей ценой ошибки (возвраты больше €50, отмена годовых подписок) требуйте проверку человеком, даже если агент уверен.
- Логирование. Каждое действие логируется вместе с рассуждениями агента. Audit trail важен и для качества поддержки, и для регуляторного комплаенса.
Шаг 5: проверка качества
Финальный шаг перед отправкой — quality-gate. Обычно это отдельный, более дешёвый AI-вызов, который ревьюит подготовленный ответ.
You are a quality reviewer for AI-generated customer support responses.
Given the original ticket and the drafted response, check:
1. Does the response actually address the customer's question?
2. Is it accurate based on the context provided (no hallucinated facts)?
3. Is the tone right (warm, direct, not patronising, not over-apologetic)?
4. Are any links broken or wrong?
5. Does it contain any of these red flags:
- Promising something we cannot deliver
- Apologising for things that aren't our fault
- Sounding angry or sarcastic
- Using internal jargon
- Disclosing internal information
Output: APPROVE or REVISE (with specific suggested fixes).Если quality-check вернул APPROVE — отправляйте. Если REVISE — либо авто-исправление (дешёвая быстрая модель применит предложенные правки), либо в очередь к человеку.
На практике этот шлюз ловит 5–10% ответов, которые основной агент составил некорректно. Своих денег стоит.
База знаний: где проваливается большинство агентов
Самый важный фактор качества агента — база знаний. Если ваш help-центр устаревший, противоречивый или неполный, агент будет уверенно ошибаться.
Практические принципы:
Аудит до запуска. Пройдитесь по топ-100 типов тикетов и проверьте, что в базе знаний на каждый есть правильный ответ. Закройте пробелы. Разрешите противоречия. Обновите устаревшие статьи. Это неделя работы и самая высокоотдачная инвестиция, которую можно сделать.
Структура под извлечение. Статьи должны быть короткими, по одной теме каждая, с чёткими заголовками. Длинные монолитные статьи извлекаются частями и дают плохие ответы.
Включайте явные секции «do NOT». Многие тикеты — про то, как сделать то, что клиенту делать не стоит. Статьи базы знаний должны явно говорить: «если вы пытаетесь сделать X, вот почему мы это не рекомендуем, и вот альтернатива».
Тегируйте каждую статью по применимости. «Только бесплатный план», «только клиенты ЕС», «только iOS-приложение». Агент использует эти теги, чтобы фильтровать извлечение.
Обновление раз в квартал. Базы знаний у большинства компаний дрейфуют. Запланируйте ежеквартальный обзор, в ходе которого кто-то проходит и помечает устаревшее.
Паттерны эскалации, которые имеют значение
Типичный режим провала — агент, который эскалирует всё (ленивый) или не эскалирует ничего (самоуверенный). Эскалационные паттерны нужно настроить правильно:
Всегда эскалировать:
- Явные просьбы поговорить с человеком.
- Гнев выше порога (особенно после одной плохой реплики агента).
- Споры о реальных деньгах.
- Вопросы безопасности или приватности.
- Влияние на здоровье, безопасность или юридические последствия.
- Повторные тикеты от одного клиента по одной и той же проблеме.
- Случаи с уверенностью агента ниже 70%.
Никогда не эскалировать (низкая ценность):
- Тривиальные вопросы с чёткими ответами в KB.
- Бытовое обслуживание аккаунта (сброс пароля, базовые изменения профиля).
- Запросы статуса («мой возврат прошёл?»).
- Запросы на новые фичи (направляются в продуктовую команду, а не в живую поддержку).
Серая зона — это там, где суждение агента имеет значение. Настройте телеметрию, которая позволит видеть: из всех кейсов, которые агент мог бы эскалировать, но не эскалировал, по какой доле клиенты вернулись? Из всех эскалированных, сколько человек закрыл за минуту?
Математика «70% закрытия» — честно
Для типичной SaaS-очереди поддержки:
- 20–30% — простые, чётко описанные в документации вопросы. AI справляется хорошо.
- 30–40% — средняя сложность, где агенту нужен контекст и суждение. AI справляется если база знаний крепкая и инструменты у агента приличные.
- 20–30% — нужен человек. Сложная диагностика, эмоциональные ситуации, краевые случаи, политические решения.
- 10–20% — баг-репорты или feature-requests, которые нужны продукту/инженерам, а не поддержке.
Если сложить долю, которую тянет AI: реалистичны 50–70%. Те, кто выходит на 70%+, серьёзно вложились в базу знаний и в интеграции инструментов агента. Те, кто застрял на 30%, — обычно с плохой KB и обобщённым агентом.
Чего на самом деле хотят клиенты
Опросы стабильно показывают:
- Быстрое решение — главный приоритет.
- Точные ответы — второй.
- Чувство, что тебя услышали — важно, но меньше, чем первые два.
- «Хочу поговорить с человеком» значит сильно меньше, чем «решите мою проблему».
Это хорошая новость для AI-поддержки: скорость и точность — ровно то, в чём AI силён. Запрос «дайте мне человека» обычно появляется только после того, как AI один раз облажался. Сделайте первый AI-ответ правильно — и клиенты предпочтут его ожиданию в очереди.
Чего клиенты абсолютно ненавидят — это цикл с агентом без возможности эскалации: разговариваешь с AI, AI не решает проблему, AI продолжает пытаться, а к человеку прорваться нельзя. Туго настроенные триггеры эскалации позволяют этого избежать.
Несколько конкретных паттернов
Персонализация имеет значение. «Привет, Anna, вижу, вы на тарифе Pro и с нами с 2023» — это совсем другое впечатление, чем «Здравствуйте, клиент». Используйте контекст.
Признавайте время ожидания. Если клиент ждал ответа 30 минут, первое же предложение агента должно это признать. Не делайте вид, что всё в порядке.
Цитируйте клиента обратно. «Вы упомянули, что импорт ломался на записях со специальными символами в названии компании». Показывает, что агент реально прочитал тикет.
Заканчивайте следующим шагом. «Я оформил возврат — деньги придут в течение 3–5 рабочих дней». А не «дайте знать, если ещё что-то понадобится».
Не извиняйтесь без повода. «Прошу прощения за неудобства» до того, как вы поняли, что произошло, — это звучит неискренне. Извинитесь один раз, по делу, там, где это уместно.
Разобранный пример
Клиент пишет:
Hi, I've been trying to log in for three days and it just keeps saying my password is wrong. I'm sure it's the right password — I've used it for two years. I'm starting to think you've been hacked.
Хороший ответ агента (после сбора контекста):
Hi Anna,
>
Three days is a long time to be locked out. I've checked your account: you have multi-factor authentication enabled, and I can see ten failed login attempts from your usual IP starting Tuesday morning. The most likely cause is a corrupted MFA code, not a hack — your account hasn't been accessed by anyone else, and your password hasn't been changed.
>
The fastest fix:
>
1. I've sent a password reset link to anna@somecompany.fi (just sent now). 2. Click it and set a new password. 3. When you log in, you'll be prompted to re-set up MFA — please do this on the device you'll actually use.
>
If anything looks off when you get in (settings changed, missing data), reply here and I'll loop in our security team for a closer look.
>
— AI Expert Support
Этот ответ прямой, конкретный, признаёт тревогу клиента без мелодрамы, выполняет реальное действие и заканчивается чётким следующим шагом и путём эскалации.
Что в итоге
70% закрытия — реалистичная цель при хорошем дизайне. Модель редко бывает узким местом. Четыре рычага:
- Чистая, структурированная база знаний.
- Надёжный сбор контекста (данные клиента, история, извлечение из KB, похожие закрытые тикеты).
- Reasoning-агент с чёткими критериями решений и правилами эскалации.
- Ограничители (allowlists, проверки качества, аудит-логи).
Сделайте это хорошо — и качество поддержки растёт, а нагрузка на одного человека падает. Сделайте плохо — и вы построили машину для раздражения клиентов.
В 2026 году большинство команд либо разворачивает AI-поддержку небрежно (и получает плохие результаты), либо отказывается её разворачивать (и теряет прирост производительности). Правильный путь — посередине: разворачивать аккуратно, измерять, итерировать. Хорошая новость в том, что паттерны проектирования теперь хорошо понятны, а режимы провала задокументированы достаточно, чтобы их избегать.