Блог Metlivi

Как чат-ботам-компаньонам распознавать, что пользователь хочет завершить разговор?

Чат-бот-компаньон должен воспринимать четкую команду об остановке как инструкцию, понимать, когда запрошенное действие выполнено, и позволять пользователю сделать паузу без необходимости объяснять причины. Когда диалог завершен, бот должен кратко попрощаться и оставить следующий шаг за пользователем. Практичный подход к проектированию такой логики — ранжировать сигналы по степени их ясности, отдавать приоритет прямым запросам и не пытаться угадывать намерения по настроению или молчанию пользователя.

30 сентября 2026 г.6 min readЧтение, искусство и культураАвтор: Metlivi Editorial Team
Раздел 1

Опирайтесь на слова пользователя, а не на догадки о его настроении

Такие фразы, как «стоп», «хватит», «достаточно», «пока» или «давай закончим на этом», служат прямым доказательством того, что пользователь хочет завершить диалог. Заложите эти выражения вместе с их естественными вариациями в сценарии остановки продукта. Относитесь к ним как к управляющим командам на любом этапе разговора, включая творческие задания или моменты, когда система сама задает вопрос.

Это соответствует признанным рекомендациям по проектированию диалоговых интерфейсов. Google советует учитывать такие выражения, как «я закончил» и «забудь об этом», и рекомендует не подвергать сомнению решение человека выйти из незавершенной задачи, если потерянный прогресс незначителен. Аналогично, Amazon Lex определяет намерение остановки (stop intent) для фраз, указывающих на желание пользователя завершить взаимодействие. (Руководство Google по завершению диалогов; встроенный stop intent в Amazon Lex)

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

Раздел 2

Воспринимайте выполнение задачи как естественную точку завершения

Пользователь может завершить сессию, не произнося слово «стоп». Например, он мог попросить написать короткий рассказ и получить его, выбрать идею для планов на выходные или закончить редактирование сообщения. Как только запрошенный результат предоставлен и в задаче не осталось открытых вопросов, система может поставить точку краткой фразой, такой как «Вот готовый вариант» или «Теперь у вас есть план на субботу». Нет необходимости автоматически добавлять: «Чем еще я могу помочь?»

Это логический вывод из принципов разработки, предписывающих делать ответы краткими, релевантными и сфокусированными на задаче. Чек-лист по проектированию диалогов от Amazon рекомендует свести шаги к минимуму, использовать емкие сообщения и предостерегает от навязывания не относящихся к делу предложений. Применительно к чатам-компаньонам это означает, что уточняющие вопросы должны задаваться только при наличии реального следующего шага, а не прикрепляться к каждому готовому ответу. (Принципы проектирования диалогов Amazon Alexa)

Бывают и исключения. Если запрос состоит из нескольких частей, продукт должен выполнить все обещанные этапы или четко обозначить, что осталось сделать. Если пользователь просит подготовить черновик и внести правки, отправка только черновика не считается завершенной задачей. Но как только согласованный объем выполнен, открытый вопрос может создать ощущение, будто диалог затянулся искусственно. Лаконичное завершение защищает пользователя от нежелательного расширения рамок задачи.

Раздел 3

Сделайте так, чтобы поставить на паузу и возобновить диалог было легко

Пауза отличается от полного завершения. Реплики «давай сделаем паузу», «я вернусь к этому позже», «минутку» или «сохрани это на потом» могут свидетельствовать о том, что пользователю нужен перерыв с сохранением наработок. Если продукт поддерживает историю переписки или сохранение черновиков, он должен простым языком подтвердить, что именно останется доступным. Если текущее состояние сохранить невозможно, об этом следует предупредить до того, как пользователь уйдет, если это ограничение имеет значение.

Управление паузой должно оставаться в руках пользователя. Не требуйте объяснений и не придумывайте причины для перерыва. Если в интерфейсе предусмотрена видимая кнопка паузы или закрытия, сделайте подпись понятной, а результат ее нажатия — предсказуемым. Руководство W3C по контролю со стороны пользователя гласит, что смена контекста должна инициироваться пользователем или иметь возможность отключения; этот принцип применим к четким элементам управления и предсказуемости переходов. (Руководство W3C по изменению по запросу / Change on Request)

Продукт также должен отличать паузу от явной команды остановки с помощью доступных слов и элементов интерфейса. Пауза может сохранять черновик или прогресс выполнения, если функция поддерживается. Остановка должна завершать текущее взаимодействие. Не утверждайте, что диалог сохранен, если это не так, и не воспринимайте уход из приложения или долгое молчание как сигнал для отправки новых сообщений.

Раздел 4

Используйте четкую иерархию для неоднозначных и явных сигналов

Практичная иерархия сигналов для внедрения выглядит следующим образом:

Явный сигнал остановки или прощание: немедленно завершить диалог.

Явный запрос на паузу или сохранение: поставить на паузу или сохранить, если поддерживается, затем кратко подтвердить результат.

Выполненный запрос: предоставить запрошенный результат и закончить реплику, не требуя ответа.

Неясное сообщение: задать один короткий уточняющий вопрос, только если двусмысленность мешает выполнению задачи.

Молчание: подождать или завершить активную сессию в соответствии со стандартным поведением продукта; не делать выводов об эмоциональном состоянии.

Такой порядок — это практическое инженерное решение, а не строгий научный стандарт или универсальный классификатор. Его цель — не допустить, чтобы прямые инструкции подменялись предположениями. Например, фраза «Этого достаточно» должна иметь приоритет над прогнозом системы о том, что пользователю может пригодиться сопутствующая рекомендация. Вопрос вроде «Мы заканчиваем или сохранить это на потом?» уместен только тогда, когда формулировка пользователя действительно не позволяет понять его намерение.

Если действие необратимо или грозит потерей важного объема работы, подтверждение необходимо для ее защиты. Сделайте запрос на подтверждение конкретным и простым для ответа: «Завершить работу и удалить этот черновик?» В обычной беседе, где потеря прогресса незначительна, повторные подтверждения создают лишнее раздражение. В руководстве Google проводится аналогичное различие: не переспрашивайте при выходе, если только не будет потерян существенный прогресс. (Руководство Google по завершению диалогов)

Раздел 5

Финальный ответ должен быть кратким и исчерпывающим

Заключительное сообщение выполняет одну задачу: дать понять, что система услышала пользователя и диалог завершен либо приостановлен. Подходящие примеры:

Остановка: «Хорошо. На этом закончим».

Выполненная творческая задача: «Вот отредактированное стихотворение».

Пауза с сохранением данных: «Поставил на паузу. Черновик сохранен в этом чате».

Пауза без функции сохранения: «Хорошо. Вы сможете вернуться в этот чат позже, но сохранить отдельный черновик я не могу».

Используйте только те формулировки, которые соответствуют фактическому поведению продукта. Избегайте эмоциональных призывов, фраз с чувством вины или новых вопросов. Финал может быть теплым, но при этом не требовать от пользователя ободрения системы или продолжения разговора. Цель дизайна — прозрачное завершение, которому пользователь может доверять.

Раздел 6

Тестируйте пограничные случаи, а не только очевидные команды

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

Также проверяйте систему на ложные срабатывания. Фраза «Перестань использовать это слово и попробуй другое» содержит слово «перестань» (стоп), но является инструкцией внутри текущей задачи, а не просьбой завершить чат. Интерпретируйте слова в контексте, всегда сохраняя в интерфейсе специальный элемент управления остановкой на случай, если система ошибется в понимании текста. Документация Amazon описывает встроенный stop intent для типовых фраз завершения; чат-бот-компаньон может применять тот же базовый принцип, адаптируя распознавание под текстовый или голосовой интерфейс. (Встроенный stop intent в Amazon Lex)

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

Раздел 7

Простое правило для уважительного завершения

Когда пользователь явно прекращает диалог — остановитесь. Когда оговоренная задача выполнена — завершите реплику кратко. Когда пользователь просит о паузе — сохраните контроль за ним и объясните текущие возможности сохранения данных. Задавайте уточняющие вопросы только тогда, когда это необходимо для выполнения запроса или устранения реальной неопределенности. Это дает чат-ботам-компаньонам надежный способ распознавать финал, оставляя выбор, темп и решение о продолжении за человеком.

Материалы по теме

Продолжить изучение темы