Как вести убедительные разговоры с чат-ботом

Используйте эти принципы, чтобы эффективно вести диалог с чат-ботом

Введение

Убедитесь, что ваш чат-бот всегда выбирает и возвращает наиболее подходящий диалоговый узел…

Узнайте, как подходить к построению разговорных диалогов и вести сложные разговоры.

Общие советы

Во-первых, прежде чем кодировать или создавать отдельный узел, спланируйте объем ваших разговоров. Запись на доске помогает команде.

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

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

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

Всегда объявляйте, что пользователь на самом деле разговаривает с цифровым помощником. Не выдавайте чат-бота за человека и не оставляйте сомнения в сознании пользователя.

Не каждый аспект разговора должен быть на естественном языке и неструктурирован. Есть случаи, когда вы можете создать какую-то структуру; если этого требует ситуация.

Добавление узлов

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

В зависимости от среды разработки, которую вы используете, когда вам нужно захватить массив информации; аналогично форме, попробуйте сделать это в одном диалоговом окне.

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

Если в разговоре впереди сложности, предупредите пользователей о том, что ждет за поворотом.

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

Непрерывное регрессионное тестирование имеет важное значение.

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

Добавление ответов

Диалог, возвращаемый пользователю, должен быть как можно короче и применим к тому моменту, когда пользователь находится в разговоре.

Отражайте предполагаемое намерение пользователя в ответе. Это может действовать как заверение пользователя с точки зрения подтверждения намерений. Но также это дает пользователю возможность как можно скорее исправить любое недоразумение.

Ссылайтесь на сайты или другие ресурсы только тогда, когда это абсолютно необходимо. Пользователь выбрал чат-бот в качестве предпочтительного канала, поэтому постарайтесь оставить его таким.

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

И это говорит о проблеме чат-бота, которому необходимо создать структуру из неструктурированного ввода.

Когда вы вводите структуру слишком рано или слишком много, это лишает вас всего разговорного опыта. Всегда есть искушение добавить структуру в разговор в виде кнопок, так как кажется, что поток информации лучше облегчается.

Но затем он перестает быть диалоговым интерфейсом и превращается в просто структурированный диалог, размещенный в диалоговом приложении или среде.

Используйте графические элементы (диалоговые компоненты) только в том случае, если разговор не привлекает внимания. Как только структура введена и разговор продвигается вперед, снова вернитесь к более неструктурированному разговорному подходу.

Избегайте использования нескольких диалоговых узлов, когда достаточно одного. Посмотрите, какие варианты доступны, условные ответы и до какой степени элементы могут быть рандомизированы.

Захват пользовательского ввода

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

Полезно определить количество слов во вводе пользователя. Это поможет вам оценить, сможете ли вы проанализировать пользовательский ввод.

Некоторые чат-боты определяют длину ввода пользователя, и если она слишком длинная, пользователя просят сократить ввод. Или разбейте их диалог на отдельные вопросы. Это повышает вероятность того, что ваш чат-бот достигнет правильного намерения.

Составные запросы или ввод пользователя приводят к нескольким намерениям. Эти различные намерения можно обнаружить, взглянув на порог различных определенных намерений. Альтернативой является использование устранения неоднозначности; предоставляя пользователю несколько вариантов на выбор.

Неоднозначные намерения

Будут случаи, когда пользователь вводит ввод, который приводит к неоднозначности до такой степени, что несколько намерений относятся к запросу. Как диалоговое окно узнает, на какое диалоговое намерение ответить? Если вы используете устранение неоднозначности, вы можете предоставить пользователю несколько вариантов на выбор. Подробнее см. в разделе Значения.

Вывод

Для многих сред разработки чат-ботов часть NLU / NLP очень сильно зависит от ML, и полученные результаты часто поразительны.

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

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