Диалоговый поток - устранение несоответствия пользователя при выполнении кода - PullRequest
0 голосов
/ 13 сентября 2018

Когда выполняется кодирование для Dialogflow (API.AI), есть ли способ справиться с расхождениями в ответах пользователей без необходимости делать полный оператор if для всех возможных способов, которыми пользователь мог сказать то же самое? А.К.А ручным способом.

Например, если я спрашиваю, где находится пользователь, и он говорит, что он из Уэст-Мидлендса, который является одним из моих мест, - нужно ли мне делать оператор IF, который выглядит примерно так:

if (location === 'West Midlands' || 'west Midlands' || 'w midlands' || 'w mid') {}

Или я могу передать его обратно в Dialogflow, где он может обрабатывать ввод данных пользователем с помощью AI или чего-либо еще.

1 Ответ

0 голосов
/ 13 сентября 2018

Вы можете создать Entity , который представляет местоположения, которые вы поддерживаете.

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

...