Как мы можем объединить сущности и системные номера из пользовательского ввода, чтобы создать желаемый результат (ответ)?

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

Мы бы хотели, чтобы пользователь добавил несколько товаров в корзину. В нашем примере пользовательский ввод: "Я хотел бы добавить 2 яблока и 1 ящик пива". Это вернет ответ: "Конечно, мы добавили яблоки, ящик, пиво, 2, 1 в ваш список". Однако наш желаемый результат Ответ таков: "Конечно, мы добавили в ваш список 2 яблока и 1 ящик пива".

Мы попытались извлечь пользовательский ввод (input.text), но он захватывает все предложение, а не наши нужные объекты. Мы также попробовали в нашем желаемом ответе, однако порядок объектов не совпадает с порядком, введенным пользователем. Это дает нам вывод, который мы упоминали в примере выше.

Прикрепленный снимок экрана нашего примера ввода (на голландском языке): "Я хотел бы добавить 2 яблока и 1 ящик пива" - это "Ik wil graag 2 appels en 1 krat bier toevoegen" "Цель - " добавить в корзину "- "#toevoegen_aan_boodschappenlijst"

Вопрос: Как мы берем сущности из нашего пользовательского ввода, и отвечаем им в правильном порядке и выравниваем их по количеству "sys-number"? У нас также есть сущность "Количества" (@Kwantiteit) со значениями на нидерландском языке, такими как "krat" - "crate", и мы хотели бы объединить ее так, чтобы требуемый пользовательский ввод был добавлен в корзину покупок в правильном порядке.,

Watson Conversation, добавить в корзину:

1 ответ

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

Обработка может быть выполнена с помощью встроенных выражений с использованием Spring Expression Language (SpEL). Это выражения, встроенные через <? ?>, Некоторые расширенные примеры можно найти в моем репозитории "Переменные разговора" на GitHub. Другой вариант - выполнить обработку в приложении, которое управляет интеграцией STT и Conversation.

Другие вопросы по тегам