Как мы подключили LLM к поддержке, а получили идеального лжеца

от автора

Где‑то в начале года мы решили: давайте автоматизируем часть поддержки через LLM. Ну, знаете, идея тогда казалась почти очевидной.

У нас SaaS‑продукт, вопросы в основном типовые: «где там настройки поменять?», «данные не обновляются — почему?», «хочу сменить тариф», «webhook не приходит», «логи посмотреть». В общем, большая часть тикетов выглядела так, будто их можно закрывать роботом. Особенно когда очередной отчёт показал, что поддержка тратит кучу времени на одни и те же ответы. Симптомами были текучка выше среднего и достаточно быстрое выгорание. Вокруг все только и говорили про ИИ‑ассистентов и вот, кажется, идеальный момент чтобы их попробовать. Наконец‑то задача, у которой есть очевидная ценность для бизнеса и влияние которой будет достаточно легко измерить. Кроме этого нам казалось, что мы немного опаздываем на поезд ИИ что тоже, безусловно, давило на нас.

Мы ни в коем случае не думали о том, чтобы заменять живых операторов. План внедрения был аккуратным: ИИ отвечает на простые вопросы, сложные уходят людям, у модели есть доступ к базе знаний, и если модель не уверена — ответ не отправляется. Ну, по крайней мере, такой был план и так это выглядело на слайдах. В дальнейшем мы хотели полностью освободить саппорт от рутины, снизить выгорание и текучку. На практике система оказалась намного хаотичнее.

Как всё работало

Если совсем упростить: пользователь пишет в чат поддержки, система определяет тип тикета, простые попадают к ИИ‑ассистенту, модель генерирует ответ, и ответ сразу отправляется пользователю. Всё рабоатло без участия оператора. Все вопросы в духе: «как обновить токен», «где API key найти», «как Telegram подключить», «как изменить e‑mail», «какие тарифы бывают» обрабатывались нейросетью и даже не попадали на экран к оператору.

В первые недели всё было просто идеально: метрики были хорошими, ИИ отвечал практически мгновенно, закрывал кучу тикетов, а нагрузка на саппорт упала. Среднее время первого ответа упало в разы, некоторые тикеты стали закрываться вообще без людей. Внутри команды было такое ощущение: «О, кажется, реально работает». И какое‑то время всё действительно работало.

А потом ИИ начал выдумывать ответы

Сначала это выглядело как случайности — один пользователь спросил: «Какой лимит запросов у API на базовом тарифе?» ИИ ответил уверенно: «1000 запросов в минуту». Проблема в том, что у нас вообще нет лимитов по минутам. Никогда не было. Но ответ — загляденье: вежливо, спокойно, с форматированием и даже советом перейти на другой тариф при росте нагрузки. Пользователь поверил. Никто этого не заметил, ну, пока пользователь не вернулся уже к человеку. Мы сначала подумали: ну, единичный сбой. Спойлер: нет.

Потом таких тикетов стало появляться всё больше. Не массово, скорее как странные мелкие эпизоды, которые сначала даже не складывались в систему. Где‑то ИИ ссылался на старую документацию, где‑то обещал настройку, которой уже давно нет, где‑то уверенно объяснял поведение системы, которого вообще не существовало. И самое неприятное — пользователи часто этому верили. Потому что ответы выглядели слишком нормальными. В какой‑то момент мы начали специально просматривать логи таких диалогов и довольно быстро поняли, что проблема намного глубже, чем казалось сначала.

Самое неприятное — ИИ почти никогда не говорил «не знаю»

Вот это меня лично удивило больше всего. Если модели не хватало информации, она почти никогда не отвечала: «Я не могу найти ответ» или «Уточните вопрос». Вместо этого ИИ достраивал контекст, предполагал, придумывал, смешивал старую документацию с новой, уверенно интерпретировал непонятные запросы. И всё это звучало очень правдоподобно. В какой‑то момент модель начала ссылаться на настройки, которых в интерфейсе уже несколько месяцев не было. И это не был бред. Это было похоже на ответ уставшего сотрудника, который что‑то помнит, что‑то перепутал — но говорит уверенно.

Мы слишком поздно поняли главную проблему: она не в самих ошибках, а в том, что пользователи (а вместе с ними и мы) очень быстро начинают доверять тону и уверенности ИИ‑ассистента. Если ответ быстрый, вежливый, структурированный, профессионально звучит то мозг автоматически решает — «Это компетентно». Даже если внутри ерунда. Современные LLM делают это пугающе хорошо. Старые ошибались очевидно, а новые ошибаются убедительно.

Самый странный кейс случился как‑то ночью. По ночам никого кроме ИИ не было, а ответы на сложные вопросы составлялись с утра. Клиент написал в поддержку: перестала работать интеграция после обновления. ИИ отвечает, что проблема во «временной деградации webhook worker в EU‑регионе». При этом у нас нет EU‑региона, нет webhook worker, и вообще архитектура устроена иначе. Но сообщение было настолько уверенным, что клиент просто ответил: «Окей, спасибо, подожду фикса». Когда мы это увидели утром, у нас был один вопрос: откуда модель это взяла? Вот тут стало реально не по себе. ИИ не просто ошибался — он генерировал очень убедительные объяснения несуществующих проблем.

После этого мы начали смотреть логи внимательнее и вдруг оказалось, что таких случаев намного больше, чем мы думали. Просто большинство пользователей не замечали, не проверяли — или верили. Иногда ИИ придумывал ограничения, обещал несуществующие фичи, ссылался на старые настройки, объяснял баги выдуманными причинами. И почти никогда не говорил: «Мне не хватает информации». Как будто для модели продолжать диалог естественнее, чем признать «я не знаю».

В итоге мы откатили почти всю автоматизацию. Сейчас LLM у нас ещё используются, но совсем по‑другому. Не как самостоятельный саппорт. Скорее как помощник для операторов, поиск по документации, черновик ответа или суммаризатор длинных тикетов.

И знаете, главный вывод оказался довольно неожиданным. Проблема современных ИИ — не только в галлюцинациях. А в том, что они очень плохо умеют честно признавать: «Я не знаю». И чем умнее модели, тем это опаснее. Потому что со временем всё труднее отличить уверенный правильный ответ от уверенного вымысла.

ссылка на оригинал статьи https://habr.com/ru/articles/1038322/