AWS предоставляет LexRuntime API javascript для веб-интеграции. Этот API предоставляет NLP, но не сохраняет/извлекает историю разговоров. Вы должны создать свой собственный сервер приложений и хранить разговоры в БД. Вам также необходимо управлять базой данных пользователей, заходящих на ваш сайт.
Когда пользователь посещает веб-сайт, получите историю разговоров пользователя из БД и заполните ее в пользовательском интерфейсе. Таким образом, даже если пользователь обновит страницу, он сможет увидеть историю чата, поскольку она загружается из БД.
Теперь возникает вопрос: Как Lex запоминает пользователя и как долго?
Lex создает сеанс пользователя, используя следующие параметры:
- Имя бота
- Псевдоним бота
- Логин пользователя
Эти параметры отправляются в Lex вместе с пользовательскими запросами. Здесь идентификатор пользователя может быть любым уникальным идентификатором, который представляет пользователя вашего сайта. Lex использует эти параметры для определения сеанса для текущего пользовательского запроса. Если какое-либо из этих значений будет изменено, Lex создаст новый сеанс или повторно использует существующий, если он доступен для того же набора значений. По умолчанию продолжительность сеанса составляет 5 минут, но вы можете указать любую продолжительность от 0 до 1440 минут (24 часа).
С помощью API-интерфейсов Lex Runtime вы можете использовать следующие два метода для отправки пользовательских запросов вашему боту:
Оба метода требуют параметров botName
, aliasName
и userId
. Надеюсь, это ответ на ваш второй вопрос.
Теперь перейдем к вашему первому варианту использования, где
Бот помогает пользователю принять решение о покупке, пока пользователь просматривает разные страницы на сайте электронной коммерции.
Чтобы достичь этого, во-первых, вы должны реализовать описанный выше подход. Как только это будет сделано, вы можете отправить URL страницы (на которой сидит бот) Лексу. Вы можете отправить эту информацию в виде запроса. атрибут. В консоли Lex используйте лямбда-функцию, чтобы определить ответ в соответствии с URL-адресом страницы.
Все это требует усилий и времени разработки. Существует множество сторонних инструментов, обеспечивающих интеграцию с lex без использования кода. Я рекомендую Communicate. Также загляните в этот блог.
person
Suraj
schedule
01.06.2020