Как определить тип слота Lex (пользовательский / встроенный), который кроме него дает какое-либо значение? - PullRequest
0 голосов
/ 21 мая 2018

У меня есть имя слота "примечание".Мне нужен тип слота, который принимает любое значение, данное пользователем в этом поле.

Ответы [ 3 ]

0 голосов
/ 21 мая 2018

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

Поэтому я создал слот без какой-либо ценностии снят флажок обязательный флажок (важно).Затем я включил Lambda initialization and validation hook, чтобы он перешел к DialogCodeHook.
. В коде бэкенда в DialogCodeHook я взял ввод пользователя из event['inputTranscript'] и присвоил это значение слоту.

Надеюсь, это поможет.

0 голосов
/ 23 мая 2018

Я работаю на платформе lex уже больше года.Насколько я понимаю, невозможно захватить свободный текст как слот.Подход к добавлению большего количества обучающих данных только для обработки свободного текста сделает жадность слота (как, следовательно, и намерение) и негативно повлияет на общую производительность бота.Лучшая альтернатива (в случае только пользовательского канала) - использовать атрибуты сеанса для передачи свободного текста из интерфейса чата и передачи предварительно определенного текста (одно из значений из слота) в качестве входных данных для lex;написать логику в лямбде, чтобы захватить свободный текст из атрибутов сеанса.Дайте мне знать, если вам нужно больше ясности.

0 голосов
/ 21 мая 2018

Служба поддержки Amazon ответила на похожие вопросы следующим образом:

Из aws dev forum :

Рекомендуемый подход для захвата текста в произвольной форме с помощьюслот предназначен для создания пользовательского типа слота и предоставления достаточно репрезентативных выборочных / обучающих данных в качестве значений слотов.Это позволит Лексу учиться на этих примерах и распознавать намного больший набор.

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

...