nsomabalint commited on
Commit
9a79634
·
verified ·
1 Parent(s): b941b74

Upload 18 files

Browse files
__init__.py ADDED
File without changes
actions.py ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import random
2
+ from typing import Any, Text, Dict, List
3
+ from rasa_sdk import Action, Tracker
4
+ from rasa_sdk.executor import CollectingDispatcher
5
+
6
+
7
+ class ActionCheckBalance(Action):
8
+ def name(self) -> Text:
9
+ return "action_check_balance"
10
+
11
+ def run(self, dispatcher: CollectingDispatcher,
12
+ tracker: Tracker,
13
+ domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
14
+
15
+ balance = round(random.uniform(100, 10000), 2)
16
+ formatted_balance = f"${balance:,.2f}"
17
+ account_type = tracker.get_slot("account_type")
18
+
19
+ if account_type:
20
+ message = f"Your {account_type} account balance is {formatted_balance}."
21
+ else:
22
+ message = f"Your current balance is {formatted_balance}."
23
+
24
+ dispatcher.utter_message(text=message)
25
+
26
+ return []
actions/__init__.py ADDED
File without changes
actions/__pycache__/__init__.cpython-310.pyc ADDED
Binary file (153 Bytes). View file
 
actions/__pycache__/__init__.cpython-39.pyc ADDED
Binary file (168 Bytes). View file
 
actions/__pycache__/actions.cpython-310.pyc ADDED
Binary file (1.23 kB). View file
 
actions/__pycache__/actions.cpython-39.pyc ADDED
Binary file (1.24 kB). View file
 
actions/actions.py ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import random
2
+ from typing import Any, Text, Dict, List
3
+ from rasa_sdk import Action, Tracker
4
+ from rasa_sdk.executor import CollectingDispatcher
5
+
6
+
7
+ class ActionCheckBalance(Action):
8
+ def name(self) -> Text:
9
+ return "action_check_balance"
10
+
11
+ def run(self, dispatcher: CollectingDispatcher,
12
+ tracker: Tracker,
13
+ domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
14
+
15
+ balance = round(random.uniform(100, 10000), 2)
16
+ formatted_balance = f"${balance:,.2f}"
17
+ account_type = tracker.get_slot("account_type")
18
+
19
+ if account_type:
20
+ message = f"Your {account_type} account balance is {formatted_balance}."
21
+ else:
22
+ message = f"Your current balance is {formatted_balance}."
23
+
24
+ dispatcher.utter_message(text=message)
25
+
26
+ return []
config.yml ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # The config recipe.
2
+ # https://rasa.com/docs/rasa/model-configuration/
3
+ recipe: default.v1
4
+
5
+ # The assistant project unique identifier
6
+ # This default value must be replaced with a unique assistant name within your deployment
7
+ assistant_id: 20250302-074712-connected-cuckoo
8
+
9
+ # Configuration for Rasa NLU.
10
+ # https://rasa.com/docs/rasa/nlu/components/
11
+ language: en
12
+
13
+ pipeline:
14
+ - name: WhitespaceTokenizer
15
+ - name: CountVectorsFeaturizer
16
+ - name: CountVectorsFeaturizer
17
+ analyzer: char_wb
18
+ min_ngram: 1
19
+ max_ngram: 4
20
+ - name: DIETClassifier
21
+ epochs: 100
22
+ constrain_similarities: true
23
+ - name: FallbackClassifier
24
+ threshold: 0.3
25
+
26
+ # Configuration for Rasa Core.
27
+ # https://rasa.com/docs/rasa/core/policies/
28
+ policies:
29
+ - name: MemoizationPolicy
30
+ - name: RulePolicy
31
+ - name: UnexpecTEDIntentPolicy
32
+ max_history: 5
33
+ epochs: 100
34
+ - name: TEDPolicy
35
+ max_history: 5
36
+ epochs: 100
37
+ constrain_similarities: true
credentials.yml ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # This file contains the credentials for the voice & chat platforms
2
+ # which your bot is using.
3
+ # https://rasa.com/docs/rasa/messaging-and-voice-channels
4
+
5
+ rest:
6
+ # # you don't need to provide anything here - this channel doesn't
7
+ # # require any credentials
8
+
9
+
10
+ #facebook:
11
+ # verify: "<verify>"
12
+ # secret: "<your secret>"
13
+ # page-access-token: "<your page access token>"
14
+
15
+ #slack:
16
+ # slack_token: "<your slack token>"
17
+ # slack_channel: "<the slack channel>"
18
+ # slack_signing_secret: "<your slack signing secret>"
19
+
20
+ #socketio:
21
+ # user_message_evt: <event name for user message>
22
+ # bot_message_evt: <event name for bot messages>
23
+ # session_persistence: <true/false>
24
+
25
+ #mattermost:
26
+ # url: "https://<mattermost instance>/api/v4"
27
+ # token: "<bot token>"
28
+ # webhook_url: "<callback URL>"
29
+
30
+ # This entry is needed if you are using Rasa Enterprise. The entry represents credentials
31
+ # for the Rasa Enterprise "channel", i.e. Talk to your bot and Share with guest testers.
32
+ rasa:
33
+ url: "http://localhost:5002/api"
data/nlu.yml ADDED
@@ -0,0 +1,137 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ nlu:
4
+ - intent: greet
5
+ examples: |
6
+ - hey
7
+ - hello
8
+ - hi
9
+ - hello there
10
+ - good morning
11
+ - good evening
12
+ - good afternoon
13
+ - hey there
14
+ - greetings
15
+ - howdy
16
+ - sup
17
+ - what's up
18
+ - hi there
19
+
20
+ - intent: goodbye
21
+ examples: |
22
+ - bye
23
+ - goodbye
24
+ - see you around
25
+ - see you later
26
+ - have a nice day
27
+ - catch you later
28
+ - until next time
29
+ - bye bye
30
+ - take care
31
+ - talk to you later
32
+ - farewell
33
+
34
+ - intent: chitchat
35
+ examples: |
36
+ - how are you?
37
+ - how's it going?
38
+ - what's new?
39
+ - how's your day?
40
+ - how was your weekend?
41
+ - how's life?
42
+ - what's happening?
43
+ - how are things?
44
+ - are you a bot?
45
+ - are you a human?
46
+ - who created you?
47
+ - what can you do?
48
+ - what's your name?
49
+ - tell me about yourself
50
+ - who are you?
51
+
52
+ - intent: send_money
53
+ examples: |
54
+ - I want to send money
55
+ - transfer money to [John](recipient)
56
+ - send $[500](amount) to [Sarah](recipient)
57
+ - can I transfer some funds
58
+ - I need to wire $[1000](amount)
59
+ - send money to [my mom](recipient)
60
+ - transfer $[50](amount) to my [savings](account_type) account
61
+ - I'd like to make a payment of $[200](amount)
62
+ - wire $[750](amount) to [David](recipient)
63
+ - send [100 dollars](amount) to [my brother](recipient)
64
+ - transfer funds to [Jane](recipient)
65
+ - move $[300](amount) to my [savings](account_type)
66
+ - send money
67
+ - make a transfer
68
+ - send $[1250](amount) to [Robert](recipient) right away
69
+ - transfer $[75](amount) to [my landlord](recipient)
70
+ - move money from [checking](account_type) to [savings](account_type)
71
+ - send $[200](amount) from my [checking](account_type) account
72
+ # Form-style brief responses
73
+ - to [Joe](recipient)
74
+ - [Joe](recipient)
75
+ - [Sarah](recipient)
76
+ - [Mom](recipient)
77
+ - [my friend](recipient)
78
+ - $[50](amount)
79
+ - [50 dollars](amount)
80
+ - [50](amount)
81
+ - [75 usd](amount)
82
+ - [100](amount)
83
+ - [twenty](amount)
84
+ - [five hundred](amount)
85
+ - [1000](amount)
86
+ - [$25](amount)
87
+
88
+ - intent: query_balance
89
+ examples: |
90
+ - what's my balance
91
+ - how much money do I have
92
+ - check my account balance
93
+ - show me my balance
94
+ - what's my current balance
95
+ - how much is in my account
96
+ - what's my [checking](account_type) balance
97
+ - how much do I have in [savings](account_type)
98
+ - check balance
99
+ - account balance
100
+ - show balance
101
+ - how much money is in my [checking](account_type) account
102
+ - what's left in my account
103
+ - do I have enough money
104
+ - balance inquiry
105
+ - check my [savings](account_type) balance
106
+ - what's the balance of my [checking](account_type) account
107
+ - tell me how much I have in [savings](account_type)
108
+
109
+ - intent: out_of_scope
110
+ examples: |
111
+ - I want to apply for a loan
112
+ - how do I open a new account
113
+ - I lost my credit card
114
+ - change my password
115
+ - reset my PIN
116
+ - I want to invest in stocks
117
+ - set up direct deposit
118
+ - can I get a mortgage
119
+ - order new checks
120
+ - report fraud
121
+ - update my address
122
+ - I need financial advice
123
+ - how do I activate my card
124
+ - cancel my account
125
+ - apply for a credit card
126
+ - what are your interest rates
127
+ - schedule an appointment
128
+ - what are your business hours
129
+ - where is the nearest branch
130
+ - I need to deposit a check
131
+ - can I get an overdraft fee waived
132
+ - I need a statement
133
+ - what's my credit score
134
+ - I need to dispute a transaction
135
+ - set up automatic payments
136
+ - I need a cashier's check
137
+ - what's the routing number
data/rules.yml ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ rules:
4
+ - rule: Greet user
5
+ steps:
6
+ - intent: greet
7
+ - action: utter_greet
8
+
9
+ - rule: Say goodbye
10
+ steps:
11
+ - intent: goodbye
12
+ - action: utter_goodbye
13
+
14
+ - rule: Respond to chitchat
15
+ steps:
16
+ - intent: chitchat
17
+ - action: utter_chitchat
18
+
19
+ - rule: Handle out of scope requests
20
+ steps:
21
+ - intent: out_of_scope
22
+ - action: utter_out_of_scope
23
+
24
+ - rule: Activate send money form
25
+ steps:
26
+ - intent: send_money
27
+ - action: send_money_form
28
+ - active_loop: send_money_form
29
+
30
+ - rule: Submit send money form
31
+ condition:
32
+ - active_loop: send_money_form
33
+ steps:
34
+ - action: send_money_form
35
+ - active_loop: null
36
+ - slot_was_set:
37
+ - requested_slot: null
38
+ - action: utter_send_money_form_complete
39
+
40
+ - rule: Query balance
41
+ steps:
42
+ - intent: query_balance
43
+ - action: action_check_balance
44
+
45
+ - rule: Fallback rule
46
+ steps:
47
+ - intent: nlu_fallback
48
+ - action: utter_default
data/stories.yml ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ stories:
4
+ - story: Greet and check balance
5
+ steps:
6
+ - intent: greet
7
+ - action: utter_greet
8
+ - intent: query_balance
9
+ - action: action_check_balance
10
+ - intent: goodbye
11
+ - action: utter_goodbye
12
+
13
+ - story: Greet and send money complete flow
14
+ steps:
15
+ - intent: greet
16
+ - action: utter_greet
17
+ - intent: send_money
18
+ entities:
19
+ - recipient: "John"
20
+ - amount: 100
21
+ - action: send_money_form
22
+ - active_loop: send_money_form
23
+ - active_loop: null
24
+ - action: utter_send_money_form_complete
25
+ - intent: goodbye
26
+ - action: utter_goodbye
27
+
28
+ - story: Greet and send money partial information (ask for amount)
29
+ steps:
30
+ - intent: greet
31
+ - action: utter_greet
32
+ - intent: send_money
33
+ entities:
34
+ - recipient: "Sarah"
35
+ - action: send_money_form
36
+ - active_loop: send_money_form
37
+ - slot_was_set:
38
+ - requested_slot: amount
39
+ - action: utter_send_money_ask_amount
40
+ - intent: send_money
41
+ entities:
42
+ - amount: 50
43
+ - action: send_money_form
44
+ - active_loop: null
45
+ - action: utter_send_money_form_complete
46
+ - intent: goodbye
47
+ - action: utter_goodbye
48
+
49
+ - story: Send money with missing recipient
50
+ steps:
51
+ - intent: send_money
52
+ entities:
53
+ - amount: 100
54
+ - action: send_money_form
55
+ - active_loop: send_money_form
56
+ - slot_was_set:
57
+ - requested_slot: recipient
58
+ - action: utter_send_money_ask_recipient
59
+ - intent: send_money
60
+ entities:
61
+ - recipient: "Mom"
62
+ - action: send_money_form
63
+ - active_loop: null
64
+ - action: utter_send_money_form_complete
65
+
66
+ - story: Chitchat and then check balance
67
+ steps:
68
+ - intent: chitchat
69
+ - action: utter_chitchat
70
+ - intent: query_balance
71
+ - action: action_check_balance
72
+
73
+ - story: Check balance for specific account
74
+ steps:
75
+ - intent: query_balance
76
+ entities:
77
+ - account_type: "savings"
78
+ - action: action_check_balance
79
+
80
+ - story: Out of scope then redirect to supported feature
81
+ steps:
82
+ - intent: out_of_scope
83
+ - action: utter_out_of_scope
84
+ - intent: query_balance
85
+ - action: action_check_balance
86
+
87
+ - story: Send money then check balance
88
+ steps:
89
+ - intent: send_money
90
+ entities:
91
+ - recipient: "Mom"
92
+ - amount: 200
93
+ - action: send_money_form
94
+ - active_loop: send_money_form
95
+ - active_loop: null
96
+ - action: utter_send_money_form_complete
97
+ - intent: query_balance
98
+ - action: action_check_balance
99
+
100
+ - story: Greet, chitchat, and then send money
101
+ steps:
102
+ - intent: greet
103
+ - action: utter_greet
104
+ - intent: chitchat
105
+ - action: utter_chitchat
106
+ - intent: send_money
107
+ - action: send_money_form
108
+ - active_loop: send_money_form
109
+ - slot_was_set:
110
+ - requested_slot: recipient
111
+ - intent: send_money
112
+ entities:
113
+ - recipient: "David"
114
+ - action: send_money_form
115
+ - slot_was_set:
116
+ - requested_slot: amount
117
+ - intent: send_money
118
+ entities:
119
+ - amount: 75
120
+ - action: send_money_form
121
+ - active_loop: null
122
+ - action: utter_send_money_form_complete
domain.yml ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ intents:
4
+ - greet
5
+ - goodbye
6
+ - chitchat
7
+ - send_money
8
+ - query_balance
9
+ - out_of_scope
10
+
11
+ entities:
12
+ - recipient
13
+ - amount
14
+ - account_type
15
+
16
+ slots:
17
+ recipient:
18
+ type: text
19
+ influence_conversation: true
20
+ mappings:
21
+ - type: from_entity
22
+ entity: recipient
23
+
24
+ amount:
25
+ type: float
26
+ influence_conversation: true
27
+ mappings:
28
+ - type: from_entity
29
+ entity: amount
30
+
31
+ account_type:
32
+ type: categorical
33
+ values:
34
+ - savings
35
+ - checking
36
+ influence_conversation: true
37
+ mappings:
38
+ - type: from_entity
39
+ entity: account_type
40
+
41
+ actions:
42
+ - action_check_balance
43
+
44
+ responses:
45
+ utter_greet:
46
+ - text: "Hello! I'm your banking assistant. How can I help you today?"
47
+ - text: "Hi there! Welcome to our banking service. What would you like to do?"
48
+ - text: "Good day! I'm here to assist with your banking needs. How may I help you?"
49
+
50
+ utter_goodbye:
51
+ - text: "Goodbye! Have a great day."
52
+ - text: "Thanks for using our banking service. Goodbye!"
53
+ - text: "It was nice assisting you. Until next time!"
54
+
55
+ utter_chitchat:
56
+ - text: "I'm a banking assistant designed to help you with basic banking tasks like checking your balance or sending money."
57
+ - text: "I was created to make banking easier for you. How can I assist you today?"
58
+
59
+ utter_send_money_form_complete:
60
+ - text: "I've initiated a transfer of ${amount} to {recipient}. The transaction should be completed within 24 hours."
61
+ - text: "Your payment of ${amount} to {recipient} has been processed. It will be completed shortly."
62
+
63
+ utter_ask_recipient:
64
+ - text: "Who would you like to send money to?"
65
+ - text: "Please provide the name or account details of the recipient."
66
+
67
+ utter_ask_amount:
68
+ - text: "How much would you like to send?"
69
+ - text: "What amount would you like to transfer?"
70
+
71
+ utter_out_of_scope:
72
+ - text: "I'm sorry, I can only help with checking your balance and sending money at the moment. For other banking services, please call our customer service at 1-800-BANK or visit our website."
73
+
74
+ utter_default:
75
+ - text: "I didn't quite catch that. I can help you with checking your balance or sending money."
76
+
77
+ session_config:
78
+ session_expiration_time: 60
79
+ carry_over_slots_to_new_session: true
80
+
81
+ forms:
82
+ send_money_form:
83
+ required_slots:
84
+ - recipient
85
+ - amount
endpoints.yml ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # This file contains the different endpoints your bot can use.
2
+
3
+ # Server where the models are pulled from.
4
+ # https://rasa.com/docs/rasa/model-storage#fetching-models-from-a-server
5
+
6
+ #models:
7
+ # url: http://my-server.com/models/default_core@latest
8
+ # wait_time_between_pulls: 10 # [optional](default: 100)
9
+
10
+ # Server which runs your custom actions.
11
+ # https://rasa.com/docs/rasa/custom-actions
12
+
13
+ action_endpoint:
14
+ url: "http://0.0.0.0:5055/webhook"
15
+
16
+ # Tracker store which is used to store the conversations.
17
+ # By default the conversations are stored in memory.
18
+ # https://rasa.com/docs/rasa/tracker-stores
19
+
20
+ #tracker_store:
21
+ # type: redis
22
+ # url: <host of the redis instance, e.g. localhost>
23
+ # port: <port of your redis instance, usually 6379>
24
+ # db: <number of your database within redis, e.g. 0>
25
+ # password: <password used for authentication>
26
+ # use_ssl: <whether or not the communication is encrypted, default false>
27
+
28
+ #tracker_store:
29
+ # type: mongod
30
+ # url: <url to your mongo instance, e.g. mongodb://localhost:27017>
31
+ # db: <name of the db within your mongo instance, e.g. rasa>
32
+ # username: <username used for authentication>
33
+ # password: <password used for authentication>
34
+
35
+ # Event broker which all conversation events should be streamed to.
36
+ # https://rasa.com/docs/rasa/event-brokers
37
+
38
+ #event_broker:
39
+ # url: localhost
40
+ # username: username
41
+ # password: password
42
+ # queue: queue
nlu.yml ADDED
@@ -0,0 +1,137 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ nlu:
4
+ - intent: greet
5
+ examples: |
6
+ - hey
7
+ - hello
8
+ - hi
9
+ - hello there
10
+ - good morning
11
+ - good evening
12
+ - good afternoon
13
+ - hey there
14
+ - greetings
15
+ - howdy
16
+ - sup
17
+ - what's up
18
+ - hi there
19
+
20
+ - intent: goodbye
21
+ examples: |
22
+ - bye
23
+ - goodbye
24
+ - see you around
25
+ - see you later
26
+ - have a nice day
27
+ - catch you later
28
+ - until next time
29
+ - bye bye
30
+ - take care
31
+ - talk to you later
32
+ - farewell
33
+
34
+ - intent: chitchat
35
+ examples: |
36
+ - how are you?
37
+ - how's it going?
38
+ - what's new?
39
+ - how's your day?
40
+ - how was your weekend?
41
+ - how's life?
42
+ - what's happening?
43
+ - how are things?
44
+ - are you a bot?
45
+ - are you a human?
46
+ - who created you?
47
+ - what can you do?
48
+ - what's your name?
49
+ - tell me about yourself
50
+ - who are you?
51
+
52
+ - intent: send_money
53
+ examples: |
54
+ - I want to send money
55
+ - transfer money to [John](recipient)
56
+ - send $[500](amount) to [Sarah](recipient)
57
+ - can I transfer some funds
58
+ - I need to wire $[1000](amount)
59
+ - send money to [my mom](recipient)
60
+ - transfer $[50](amount) to my [savings](account_type) account
61
+ - I'd like to make a payment of $[200](amount)
62
+ - wire $[750](amount) to [David](recipient)
63
+ - send [100 dollars](amount) to [my brother](recipient)
64
+ - transfer funds to [Jane](recipient)
65
+ - move $[300](amount) to my [savings](account_type)
66
+ - send money
67
+ - make a transfer
68
+ - send $[1250](amount) to [Robert](recipient) right away
69
+ - transfer $[75](amount) to [my landlord](recipient)
70
+ - move money from [checking](account_type) to [savings](account_type)
71
+ - send $[200](amount) from my [checking](account_type) account
72
+ # Form-style brief responses
73
+ - to [Joe](recipient)
74
+ - [Joe](recipient)
75
+ - [Sarah](recipient)
76
+ - [Mom](recipient)
77
+ - [my friend](recipient)
78
+ - $[50](amount)
79
+ - [50 dollars](amount)
80
+ - [50](amount)
81
+ - [75 usd](amount)
82
+ - [100](amount)
83
+ - [twenty](amount)
84
+ - [five hundred](amount)
85
+ - [1000](amount)
86
+ - [$25](amount)
87
+
88
+ - intent: query_balance
89
+ examples: |
90
+ - what's my balance
91
+ - how much money do I have
92
+ - check my account balance
93
+ - show me my balance
94
+ - what's my current balance
95
+ - how much is in my account
96
+ - what's my [checking](account_type) balance
97
+ - how much do I have in [savings](account_type)
98
+ - check balance
99
+ - account balance
100
+ - show balance
101
+ - how much money is in my [checking](account_type) account
102
+ - what's left in my account
103
+ - do I have enough money
104
+ - balance inquiry
105
+ - check my [savings](account_type) balance
106
+ - what's the balance of my [checking](account_type) account
107
+ - tell me how much I have in [savings](account_type)
108
+
109
+ - intent: out_of_scope
110
+ examples: |
111
+ - I want to apply for a loan
112
+ - how do I open a new account
113
+ - I lost my credit card
114
+ - change my password
115
+ - reset my PIN
116
+ - I want to invest in stocks
117
+ - set up direct deposit
118
+ - can I get a mortgage
119
+ - order new checks
120
+ - report fraud
121
+ - update my address
122
+ - I need financial advice
123
+ - how do I activate my card
124
+ - cancel my account
125
+ - apply for a credit card
126
+ - what are your interest rates
127
+ - schedule an appointment
128
+ - what are your business hours
129
+ - where is the nearest branch
130
+ - I need to deposit a check
131
+ - can I get an overdraft fee waived
132
+ - I need a statement
133
+ - what's my credit score
134
+ - I need to dispute a transaction
135
+ - set up automatic payments
136
+ - I need a cashier's check
137
+ - what's the routing number
rules.yml ADDED
@@ -0,0 +1,48 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ rules:
4
+ - rule: Greet user
5
+ steps:
6
+ - intent: greet
7
+ - action: utter_greet
8
+
9
+ - rule: Say goodbye
10
+ steps:
11
+ - intent: goodbye
12
+ - action: utter_goodbye
13
+
14
+ - rule: Respond to chitchat
15
+ steps:
16
+ - intent: chitchat
17
+ - action: utter_chitchat
18
+
19
+ - rule: Handle out of scope requests
20
+ steps:
21
+ - intent: out_of_scope
22
+ - action: utter_out_of_scope
23
+
24
+ - rule: Activate send money form
25
+ steps:
26
+ - intent: send_money
27
+ - action: send_money_form
28
+ - active_loop: send_money_form
29
+
30
+ - rule: Submit send money form
31
+ condition:
32
+ - active_loop: send_money_form
33
+ steps:
34
+ - action: send_money_form
35
+ - active_loop: null
36
+ - slot_was_set:
37
+ - requested_slot: null
38
+ - action: utter_send_money_form_complete
39
+
40
+ - rule: Query balance
41
+ steps:
42
+ - intent: query_balance
43
+ - action: action_check_balance
44
+
45
+ - rule: Fallback rule
46
+ steps:
47
+ - intent: nlu_fallback
48
+ - action: utter_default
stories.yml ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ stories:
4
+ - story: Greet and check balance
5
+ steps:
6
+ - intent: greet
7
+ - action: utter_greet
8
+ - intent: query_balance
9
+ - action: action_check_balance
10
+ - intent: goodbye
11
+ - action: utter_goodbye
12
+
13
+ - story: Greet and send money complete flow
14
+ steps:
15
+ - intent: greet
16
+ - action: utter_greet
17
+ - intent: send_money
18
+ entities:
19
+ - recipient: "John"
20
+ - amount: 100
21
+ - action: send_money_form
22
+ - active_loop: send_money_form
23
+ - active_loop: null
24
+ - action: utter_send_money_form_complete
25
+ - intent: goodbye
26
+ - action: utter_goodbye
27
+
28
+ - story: Greet and send money partial information (ask for amount)
29
+ steps:
30
+ - intent: greet
31
+ - action: utter_greet
32
+ - intent: send_money
33
+ entities:
34
+ - recipient: "Sarah"
35
+ - action: send_money_form
36
+ - active_loop: send_money_form
37
+ - slot_was_set:
38
+ - requested_slot: amount
39
+ - action: utter_send_money_ask_amount
40
+ - intent: send_money
41
+ entities:
42
+ - amount: 50
43
+ - action: send_money_form
44
+ - active_loop: null
45
+ - action: utter_send_money_form_complete
46
+ - intent: goodbye
47
+ - action: utter_goodbye
48
+
49
+ - story: Send money with missing recipient
50
+ steps:
51
+ - intent: send_money
52
+ entities:
53
+ - amount: 100
54
+ - action: send_money_form
55
+ - active_loop: send_money_form
56
+ - slot_was_set:
57
+ - requested_slot: recipient
58
+ - action: utter_send_money_ask_recipient
59
+ - intent: send_money
60
+ entities:
61
+ - recipient: "Mom"
62
+ - action: send_money_form
63
+ - active_loop: null
64
+ - action: utter_send_money_form_complete
65
+
66
+ - story: Chitchat and then check balance
67
+ steps:
68
+ - intent: chitchat
69
+ - action: utter_chitchat
70
+ - intent: query_balance
71
+ - action: action_check_balance
72
+
73
+ - story: Check balance for specific account
74
+ steps:
75
+ - intent: query_balance
76
+ entities:
77
+ - account_type: "savings"
78
+ - action: action_check_balance
79
+
80
+ - story: Out of scope then redirect to supported feature
81
+ steps:
82
+ - intent: out_of_scope
83
+ - action: utter_out_of_scope
84
+ - intent: query_balance
85
+ - action: action_check_balance
86
+
87
+ - story: Send money then check balance
88
+ steps:
89
+ - intent: send_money
90
+ entities:
91
+ - recipient: "Mom"
92
+ - amount: 200
93
+ - action: send_money_form
94
+ - active_loop: send_money_form
95
+ - active_loop: null
96
+ - action: utter_send_money_form_complete
97
+ - intent: query_balance
98
+ - action: action_check_balance
99
+
100
+ - story: Greet, chitchat, and then send money
101
+ steps:
102
+ - intent: greet
103
+ - action: utter_greet
104
+ - intent: chitchat
105
+ - action: utter_chitchat
106
+ - intent: send_money
107
+ - action: send_money_form
108
+ - active_loop: send_money_form
109
+ - slot_was_set:
110
+ - requested_slot: recipient
111
+ - intent: send_money
112
+ entities:
113
+ - recipient: "David"
114
+ - action: send_money_form
115
+ - slot_was_set:
116
+ - requested_slot: amount
117
+ - intent: send_money
118
+ entities:
119
+ - amount: 75
120
+ - action: send_money_form
121
+ - active_loop: null
122
+ - action: utter_send_money_form_complete