Rasa is the leading open-source machine learning toolkit that lets developers expand bots beyond answering simple questions with minimal training data. At the core, Rasa bot has a machine learning model which trained on example conversations.
Rasa is developed with Python but for the most part, you don't need to know Python to design the basic conversational flows. You will need Python knowledge only when creating custom actions in Rasa which call external actions.
Quick start guide
The fastest way to start with Rasa is using Rasa starter kit. The starter kit uses webhooks to communicate between Rasa and Rocket.Chat.
open the rasa-kick-starter/bot_rasa folder and update the credentials.yml file with Rasa bot's username, password, and Rocket.Chat URL:
user:"<RASA USER NAME>"
password:"<RASA USER PASS>"
train the bot's Machine Learning Model:
docker run -it -v $(pwd)/bot_rasa:/app rasa/rasa train
After the training, the machine learning model will be created inside the bot_rasa/models folder.
3. run the bot
docker-compose up bot_rasa
You should see the following output:
$ docker-compose up bot_rasa
Starting rasa-kick-starter_bot_rasa_1 ... done
Attaching to rasa-kick-starter_bot_rasa_1
bot_rasa_1 | 2019-10-31 21:23:24 INFO root - Starting Rasa server on http://localhost:5005
Open your browser and navigate to http://localhost:5005. You should see the response from the running Rasa bot:
Hello from Rasa: 1.5.0a1
If you have Rocket.Chat running on the same machine, the bot's URL is http://bot_rasa:5005. This guide uses a remote Rocket.Chat instance, so it is necessary to get a public URL for the Rasa bot to be able to link it properly. It is recommended to use ngrok for this purpose.
Download ngrok, open terminal in the folder you downloaded ngrok to and execute the following command: