A Rasa-based chatbot that translates text from English to several other languages using the translate Python module. Rasa uses a Dual Intent and Entity Transformer (DIET) for NLP/NLU and trains using min-min and min-max algorithms. HermesBot also uses memoization and rule-based policies. In addition to the translate module, I also included an emoji package so it's a little more fun to interact with 🤪
Since Rasa x is no longer free, you can speak to it on the command line by running
rasa run actions
and rasa shell
on separate terminals.
In tests, it can identify commands pretty well. Check out the confusion matrix with rasa test
. The failed tests and other info is in the results folder.
Take a look at the flow of conversation:
You can see this a little clearer in graphs.html.
Rasa makes it pretty easy to connect to other voice and chat platforms. Here it is as a telegram bot:
Run ngrok http 5005
to obtain secure remote URL. Use this for webhook_url in credentials.yml file.
Fill out the other sections by contacting @BotFather on telegram and setting up a new bot.
Make sure to comment out the rasa localhost url in credentials.yml