Мне нужно создать лямбда-функцию, которая возвращает код на основе текста, произнесенного пользователем - PullRequest
0 голосов
/ 25 апреля 2018

Я хотел бы создать навык Alexa, где пользователь примерно скажет CodeDesc, который не может реально контролироваться на 100% с точностью до сохраненной записи в БД, но Alexa по-прежнему возвращает код для текста (например, код расхода)

Я думаю создать таблицу DynamoDB с двумя столбцами, которая будет выглядеть примерно так:

 SomeCode - Alphanumeric 20 chars

 CodeDesc - Description of the code - large text say 1000 chars.

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

Я постараюсь разработать его практическое применение.

Alexa, what is the expense code for Travel expenses for visiting ACME Kansas office?

Запись в таблице -

 SomeCode - A34342 
 SomeDesc - Travel expenses

Алекса говорит - Код для командировочных расходов - A34342.

1 Ответ

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

Используйте слоты.Вы можете получить ключевые слова в таблице CodeDesc через слоты.

Например: Алекса, какой код оплаты для [codeDesc] для посещения офиса ACME в Канзасе?

Где [codeDesc] - это пользовательскийслот и у вас есть значения слота, определенные для этого типа слота.

Таким образом, когда пользователь говорит

Алекса, каков код расходов на командировочные расходы для посещения офиса ACME в Канзасе?

поездкаключевое слово затрат будет отправлено в качестве значения для типа слота [codeDesc] в ваш API, и вы можете получить соответствующий someCode из Db и построить свой ответ.

Подробнее о слотов

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

...