A fully functional Rasa-based webchat bot using Docker Stack for easy deployment.
You need the following installed and ready:
- Docker
- Linux, macOS, or some form of a bash-like shell on Windows
- Port 8042 open/unused -- adjust in docker-compose.yml under the traefik section if needed
For editing I use VSCode, but you are welcome to use whatever you are comfortable with.
If you have not set your Docker to Swarm mode, do by issuing docker swarm init
. Swarm mode is designed to make it easy to link up multiple Docker nodes together, but this is not needed here (so ignore the join key information). We're just going to leverage the Swarm Mode features. Single node works just fine.
Run the ./build.sh
script to generate the Docker images for Rasa and its Action Server.
- Run
./deploy.sh
to deploy your built images. - Access the webchat interface at http://localhost:8042/
- Read the Rasa docs to familiarize yourself with the system and how it works: https://rasa.com/docs
- Edit
domain.yml
to reflect any new slots, intents, messages, etc. - Edit
app/actions/actions.py
to customize action response routines or add new ones - Edit
data/nlu.md
to add new training data for intent mapping (e.g., understanding what a user is trying to say and extracting any keywords) - Edit
data/stories.md
to add new training data for conversation path mapping (e.g., what set of responses or actions the bot should take in response to a type of request from a user) - When you've edited the file(s) you need to, simply run the Build and Deploy steps again to generate and deploy the latest code
[ ] Add Rasa-X functionality for live training