This is a demo bot for financial services.
Run:
pip install -r requirements.txtUse rasa train to train a model.
Then, to run, first set up your action server in one terminal window:
rasa run actionsIn another window, run the duckling server (for entity extraction):
docker run -p 8000:8000 rasa/ducklingThen to talk to the bot, run:
rasa shell --debug
Note that --debug mode will produce a lot of output meant to help you understand how the bot is working
under the hood. To simply talk to the bot, you can remove this flag.
data/core.md - contains stories
data/nlu.md - contains NLU training data
actions.py - contains custom action/api code
domain.yml - the domain file, including bot response templates
config.yml - training configurations for the NLU pipeline and policy ensemble
tests/e2e.md - end-to-end test stories
The bot currently has five skills. You can ask it to:
- Transfer money to another person
- Check your earning or spending history (with a specific vendor or overall)
- Answer a question about transfer charges
- Pay a credit card bill
- Tell you your account balance
It also has a limited ability to switch skills mid-transaction and then return to the transaction at hand.
For the purposes of illustration, the bot recognises the following fictional credit card accounts:
gringotsjustice bankcredit alliron bank
It recognises the following payment amounts (besides actual currency amounts):
minimum balancecurrent balance
It recognises the following vendors (for spending history):
StarbucksAmazonTarget
You can change any of these by modifying actions.py and the corresponding NLU data.
You can test the bot on the test conversations by running rasa test.
Note that if duckling is running when you do this, you'll probably see some "failures" because of entities; that's ok!