Интеграция Rasa WebChat - PullRequest
       48

Интеграция Rasa WebChat

0 голосов
/ 07 ноября 2018

Я создал чат-бота на слабине, используя Rasa-Core и Rasa-NLU, просмотрев это видео: https://vimeo.com/254777331

На Slack.com все работает очень хорошо. Но мне нужно добавить это на наш сайт, используя фрагмент кода. Когда я посмотрел на это, я смог выяснить, что RASA Webchat (https://github.com/mrbot-ai/rasa-webchat: простой виджет веб-чата для связи с чат-ботом) можно использовать для добавления чат-робота на сайт. Итак, я вставил этот код на свой веб-сайт в тег .

    <div id="webchat"/>
    <script src="https://storage.googleapis.com/mrbot-cdn/webchat-0.4.1.js"></script>
    <script>
        WebChat.default.init({
            selector: "#webchat",
            initPayload: "/get_started",
            interval: 1000, // 1000 ms between each message
            customData: {"userId": "123"}, // arbitrary custom data. Stay minimal as this will be added to the socket
            socketUrl: "http://localhost:5500",
            socketPath: "/socket.io/",
            title: "Title",
            subtitle: "Subtitle",
            profileAvatar: "http://to.avat.ar",
        })
    </script> 

«Run_app.py» - это файл, который запускает чат-бота (он доступен в видео: https://vimeo.com/254777331)

Here is the code of Run_app.py :

from rasa_core.channels import HttpInputChannel
from rasa_core.agent import Agent
from rasa_core.interpreter import RasaNLUInterpreter
from rasa_slack_connector import SlackInput



nlu_interpreter = RasaNLUInterpreter('./models/nlu/default/weathernlu')
agent = Agent.load('./models/dialogue', interpreter = nlu_interpreter)

input_channel = SlackInput('xoxp-381510545829-382263177798-381274424643-a3b461a2ffe4a595e35795e1f98492c9', #app verification token
                            'xoxb-381510545829-381150752228-kNSPU0X7HpaS8oJaqd77TPQE', # bot verification token
                            'B709JgyLSSyKoodEDwOiJzic', # slack verification token
                            True)

agent.handle_channel(HttpInputChannel(5004, '/', input_channel))

Я хочу подключить этого чат-бота python к «Rasa-webchat» вместо использования Slack. Но я не знаю, как это сделать. Я пытался искать везде, но я не смог найти ничего полезного в Интернете. Кто-нибудь может мне помочь? Спасибо.

Ответы [ 2 ]

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

Для того, чтобы иметь веб-канал, вам нужно иметь интерфейс, который может отправлять и получать высказывания в чате. Существует проект с открытым исходным кодом от scalableminds. Сначала посмотрите демо

демо

Чтобы интегрировать своего бота Rasa с этим чатом, вы можете установить проект чата, как показано в приведенном ниже проекте Github. Он также работает с последней версией 0.11 Rasa.

Чат от Scalableminds

0 голосов
/ 09 ноября 2018

Чтобы подключить Rasa Core к вашему веб-чату, выполните следующие действия:

  1. Создайте файл учетных данных (credentials.yml) со следующим содержимым:

    socketio:
        user_message_evt: user_uttered
        bot_message_evt: bot_uttered
    
  2. Запустите Rasa Core с помощью следующей команды (я полагаю, вы уже обучили свою модель):

    python -m rasa_core.run \
    --credentials <path to your credentials>.yml \
    -d <path to your trained core model> \
    -p 5500 # either change the port here to 5500 or to 5005 in the js script
    

Поскольку вы указали конфигурацию socketio в файле учетных данных, Rasa Core автоматически запускает входной канал SocketIO, к которому затем подключается скрипт на вашем веб-сайте.

Чтобы добавить NLU, вам необходимо:

  1. Укажите обученную модель NLU с помощью -u <path to model> в вашей команде Rasa Core run
  2. Запустите отдельный сервер NLU и настройте его, используя конфигурацию конечной точки. Это объясняется здесь в глубину

Документация Rasa Core также может вам помочь.

...