gneya-bacancy commited on
Commit
3060f32
·
verified ·
1 Parent(s): 48a253b

Upload 19 files

Browse files
actions/.env ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ OPENAI_API_KEY="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"
2
+ GROQ_API_KEY= "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"
actions/ChatBot.py ADDED
@@ -0,0 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ from dotenv import load_dotenv
3
+
4
+ from langchain.memory import ConversationBufferWindowMemory
5
+ from langchain.prompts import ChatPromptTemplate, MessagesPlaceholder, HumanMessagePromptTemplate
6
+ from langchain.chains import ConversationChain
7
+ from langchain_mongodb.chat_message_histories import MongoDBChatMessageHistory
8
+ from langchain_openai import ChatOpenAI
9
+ from langchain_groq import ChatGroq
10
+ load_dotenv()
11
+
12
+
13
+ class ChatBot:
14
+ def __init__(self, session_id):
15
+ self.session_id = session_id
16
+ self.mongo_conn_str = "mongodb+srv://dhara732002:6M2rikdwZxvwMzN0@cluster0.pbzipls.mongodb.net/?retryWrites=true&w=majority&appName=Cluster0"
17
+
18
+ def create_llm_chain(self):
19
+ prompt = ChatPromptTemplate.from_messages(
20
+ [
21
+ ("system", "You are a helpful assistant.You should give respnse in 1-2 lines without new line."),
22
+ MessagesPlaceholder(variable_name="history"),
23
+ HumanMessagePromptTemplate.from_template("{input}"),
24
+ ]
25
+ )
26
+ message_history = MongoDBChatMessageHistory(connection_string=self.mongo_conn_str, session_id=self.session_id)
27
+ memory = ConversationBufferWindowMemory(memory_key="history", chat_memory=message_history, return_messages=True, k=3)
28
+ conversation_chain = ConversationChain(
29
+ llm=ChatGroq(temperature=0, groq_api_key=os.getenv("GROQ_API_KEY"), model_name="llama3-70b-8192"),
30
+ prompt=prompt,
31
+ verbose=True,
32
+ memory=memory,
33
+ )
34
+ self.conversation_chain = conversation_chain
35
+ return "Chain created successfully"
36
+
37
+ def get_response(self, question):
38
+ ans= self.conversation_chain.predict(input=question)
39
+ return ans
40
+
41
+
42
+
43
+
44
+
actions/__init__.py ADDED
File without changes
actions/__pycache__/ChatBot.cpython-310.pyc ADDED
Binary file (2.01 kB). View file
 
actions/__pycache__/__init__.cpython-310.pyc ADDED
Binary file (185 Bytes). View file
 
actions/__pycache__/actions.cpython-310.pyc ADDED
Binary file (8.31 kB). View file
 
actions/__pycache__/free_flow.cpython-310.pyc ADDED
Binary file (2.91 kB). View file
 
actions/actions.py ADDED
@@ -0,0 +1,221 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # This files contains your custom actions which can be used to run
2
+ # custom Python code.
3
+ #
4
+ # See this guide on how to implement these action:
5
+ # https://rasa.com/docs/rasa/custom-actions
6
+
7
+
8
+ # This is a simple example for a custom action which utters "Hello World!"
9
+
10
+ from typing import Any, Text, Dict, List
11
+ import os
12
+ from rasa_sdk import Action, Tracker
13
+ from rasa_sdk.events import SlotSet
14
+ from rasa_sdk.executor import CollectingDispatcher
15
+ from actions.ChatBot import ChatBot
16
+ from actions.free_flow import FormFillingBot
17
+ from typing import Text, List, Any, Dict
18
+ import json
19
+ import psycopg2
20
+ from rasa_sdk.events import SlotSet, ActiveLoop
21
+ from rasa_sdk import Tracker, FormValidationAction, Action
22
+ from rasa_sdk.events import EventType, UserUtteranceReverted, SlotSet
23
+ from rasa_sdk.executor import CollectingDispatcher
24
+ from langchain_mongodb.chat_message_histories import MongoDBChatMessageHistory
25
+ # from langchain.chains import ConversationalRetrievalChain
26
+ from langchain_openai import ChatOpenAI
27
+ from langchain.memory import ConversationBufferMemory
28
+ from rasa_sdk.events import SlotSet, FollowupAction
29
+ from rasa_sdk.executor import CollectingDispatcher
30
+ from pymongo.mongo_client import MongoClient
31
+ from typing import Any, Text, Dict, List
32
+ from rasa_sdk import Action, Tracker
33
+ from langchain.chains import LLMChain
34
+ from langchain.prompts.chat import (
35
+ ChatPromptTemplate,
36
+ SystemMessagePromptTemplate,
37
+ HumanMessagePromptTemplate,
38
+ )
39
+
40
+
41
+ class ActionChat(Action):
42
+ def name(self) -> Text:
43
+ return "action_chat"
44
+
45
+ def run(self,dispatcher: CollectingDispatcher,
46
+ tracker: Tracker,
47
+ domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
48
+ print("In action chat")
49
+ current_state = tracker.current_state()
50
+ print(current_state["latest_message"])
51
+ print(f"sender_id: {tracker.sender_id}")
52
+ latest_msg = current_state["latest_message"]['text']
53
+ cb = ChatBot(tracker.sender_id)
54
+ cb.create_llm_chain()
55
+ res = cb.get_response(latest_msg)
56
+ print(res)
57
+ dispatcher.utter_message(res)
58
+ SlotSet("data", None)
59
+ return [UserUtteranceReverted()]
60
+
61
+ class ActionFreeFlow(Action):
62
+ def name(self) -> Text:
63
+ return "action_free_flow"
64
+
65
+ def run(self,dispatcher: CollectingDispatcher,
66
+ tracker: Tracker,
67
+ domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
68
+ print("FREE FLOW ACTION CALLED")
69
+ current_state = tracker.current_state()
70
+ print(current_state["latest_message"])
71
+ latest_msg = current_state["latest_message"]['text']
72
+ slot_value = tracker.get_slot("data")
73
+ print(slot_value)
74
+ uuid = tracker.sender_id
75
+ cb = FormFillingBot()
76
+ default_json=cb.get_current_form_json(uuid)
77
+ res= cb.form_filling(latest_msg,default_json)
78
+ dispatcher.utter_message(res)
79
+ return [SlotSet("data", None)]
80
+
81
+
82
+ #rutvi's code
83
+
84
+
85
+ class ActionAskDetails(Action):
86
+
87
+ def name(self):
88
+ return "action_ask_details"
89
+
90
+ def run(self, dispatcher: CollectingDispatcher, tracker: Tracker, domain: dict):
91
+ slot_value = tracker.get_slot('data')
92
+
93
+ if slot_value is None:
94
+ dispatcher.utter_message(template="utter")
95
+ return [FollowupAction('action_check_details')]
96
+ else:
97
+ dispatcher.utter_message(template="utter_thanks")
98
+ return []
99
+ class ActionSubmitForm(Action):
100
+ def name(self) -> Text:
101
+ return "action_submit_form"
102
+
103
+ def run(self, dispatcher: CollectingDispatcher,
104
+ tracker: Tracker,
105
+ domain: Dict[Text, Any]) -> List[Dict[Text, Any]]:
106
+ try:
107
+ # Retrieve slot values
108
+ first_name = tracker.get_slot('first_name')
109
+ middle_name = tracker.get_slot('middle_name')
110
+ last_name = tracker.get_slot('last_name')
111
+ email = tracker.get_slot('email')
112
+ us_number = tracker.get_slot('us_number')
113
+ phone = tracker.get_slot('phone')
114
+ confirm_location = tracker.get_slot('confirm_location')
115
+ confirm_mail_address = tracker.get_slot('confirm_mail_address')
116
+ preferred_language = tracker.get_slot('preferred_language')
117
+ able_to_read_write = tracker.get_slot('able_to_read_write')
118
+ born_in_us = tracker.get_slot('born_in_us')
119
+ become_citizen_us = tracker.get_slot('become_citizen_us')
120
+ legal_resident_us = tracker.get_slot('legal_resident_us')
121
+ permanent_resident_number = tracker.get_slot('permanent_resident_number')
122
+ serve_military = tracker.get_slot('serve_military')
123
+ military_benefit = tracker.get_slot('military_benefit')
124
+ medicare_benefit = tracker.get_slot('medicare_benefit')
125
+ social_security_benefit = tracker.get_slot('social_security_benefit')
126
+ supplemental_security_income = tracker.get_slot('supplemental_security_income')
127
+ current_spouse_first_name = tracker.get_slot('current_spouse_first_name')
128
+ current_spouse_last_name = tracker.get_slot('current_spouse_last_name')
129
+ current_spouse_social_security_number = tracker.get_slot('current_spouse_social_security_number')
130
+ prior_marriages = tracker.get_slot('prior_marriages')
131
+ prior_marriages_duration = tracker.get_slot('prior_marriages_duration')
132
+ prior_marriages_death = tracker.get_slot('prior_marriages_death')
133
+ have_children = tracker.get_slot('have_children')
134
+ parent_support = tracker.get_slot('parent_support')
135
+ used_other_names = tracker.get_slot('used_other_names')
136
+ ssn = tracker.get_slot('ssn')
137
+ used_other_ssn = tracker.get_slot('used_other_ssn')
138
+ bank_account_for_deposit = tracker.get_slot('bank_account_for_deposit')
139
+ routing_number = tracker.get_slot('routing_number')
140
+ account_number = tracker.get_slot('account_number')
141
+ able_to_work = tracker.get_slot('able_to_work')
142
+ perform_usual_job_responsibilities = tracker.get_slot('perform_usual_job_responsibilities')
143
+ condition_last_14_months = tracker.get_slot('condition_last_14_months')
144
+ condition_end_in_death = tracker.get_slot('condition_end_in_death')
145
+ condition_require_work_changes = tracker.get_slot('condition_require_work_changes')
146
+ earned_more_than_1470_in_2024 = tracker.get_slot('earned_more_than_1470_in_2024')
147
+ intend_to_work_in_2024 = tracker.get_slot('intend_to_work_in_2024')
148
+ received_money_from_employer = tracker.get_slot('received_money_from_employer')
149
+ expect_to_receive_money_from_employer = tracker.get_slot('expect_to_receive_money_from_employer')
150
+ school_name = tracker.get_slot('school_name')
151
+ school_city = tracker.get_slot('school_city')
152
+ school_state = tracker.get_slot('school_state')
153
+ school_country = tracker.get_slot('school_country')
154
+ special_education = tracker.get_slot('special_education')
155
+ specialized_job_training = tracker.get_slot('specialized_job_training')
156
+ company_name = tracker.get_slot('company_name')
157
+ business_type = tracker.get_slot('business_type')
158
+ end_date_last_worked = tracker.get_slot('end_date_last_worked')
159
+ job_title = tracker.get_slot('job_title')
160
+ pay_amount = tracker.get_slot('pay_amount')
161
+ lifting_ability = tracker.get_slot('lifting_ability')
162
+ supervised_others = tracker.get_slot('supervised_others')
163
+ cared_for_children = tracker.get_slot('cared_for_children')
164
+ self_employed_last_15_years = tracker.get_slot('self_employed_last_15_years')
165
+ self_employed_2023 = tracker.get_slot('self_employed_2023')
166
+ profit_self_employed_2023 = tracker.get_slot('profit_self_employed_2023')
167
+ self_employed_2024 = tracker.get_slot('self_employed_2024')
168
+ profit_self_employed_2024 = tracker.get_slot('profit_self_employed_2024')
169
+ worked_outside_us = tracker.get_slot('worked_outside_us')
170
+ worked_outside_us_2024 = tracker.get_slot('worked_outside_us_2024')
171
+ illness_expected_duration = tracker.get_slot('illness_expected_duration')
172
+ worked_outside_2023 = tracker.get_slot('worked_outside_2023')
173
+ earnings_subject_us_social_security = tracker.get_slot('earnings_subject_us_social_security')
174
+ eligible_foreign_social_security = tracker.get_slot('eligible_foreign_social_security')
175
+ special_payments = tracker.get_slot('special_payments')
176
+ no_social_security_taxes = tracker.get_slot('no_social_security_taxes')
177
+ spouse_receiving_pension = tracker.get_slot('spouse_receiving_pension')
178
+ future_pension_annuity = tracker.get_slot('future_pension_annuity')
179
+ government_pension_or_annuity = tracker.get_slot('government_pension_or_annuity')
180
+ lump_sum_payment = tracker.get_slot('lump_sum_payment')
181
+ vision_impairment = tracker.get_slot('vision_impairment')
182
+ impaired_vision_with_glasses_contacts = tracker.get_slot('impaired_vision_with_glasses_contacts')
183
+ partial_or_total_deafness = tracker.get_slot('partial_or_total_deafness')
184
+ use_hearing_aids = tracker.get_slot('use_hearing_aids')
185
+ history_of_seizures = tracker.get_slot('history_of_seizures')
186
+ mental_illness_treatment = tracker.get_slot('mental_illness_treatment')
187
+ physical_illness_treatment = tracker.get_slot('physical_illness_treatment')
188
+ emergency_room_visit = tracker.get_slot('emergency_room_visit')
189
+ medical_tests_or_medications = tracker.get_slot('medical_tests_or_medications')
190
+ mental_health_treatment = tracker.get_slot('mental_health_treatment')
191
+ inpatient_stays = tracker.get_slot('inpatient_stays')
192
+ outpatient_visits = tracker.get_slot('outpatient_visits')
193
+ had_surgeries = tracker.get_slot('had_surgeries')
194
+ had_physical_therapy = tracker.get_slot('had_physical_therapy')
195
+ medical_records = tracker.get_slot('medical_records')
196
+ doctor_in_prison = tracker.get_slot('doctor_in_prison')
197
+ public_welfare = tracker.get_slot('public_welfare')
198
+ attorney_records = tracker.get_slot('attorney_records')
199
+ disability_insurance = tracker.get_slot('disability_insurance')
200
+ vocational_rehab = tracker.get_slot('vocational_rehab')
201
+ workers_compensation = tracker.get_slot('workers_compensation')
202
+ other_records = tracker.get_slot('other_records')
203
+ medical_tests_completed = tracker.get_slot('medical_tests_completed')
204
+ taking_medications = tracker.get_slot('taking_medications')
205
+
206
+ summary_message = (
207
+ f"Thank you {first_name} {middle_name} {last_name}. "
208
+ f"We have recorded your email as {email} and phone number as {phone}. "
209
+ f"US Number: {us_number}, Confirm Location: {confirm_location}, "
210
+ f"Confirm Mail Address: {confirm_mail_address}. "
211
+ f"Preferred Language: {preferred_language}, Able to Read/Write: {able_to_read_write}, "
212
+ f"Born in US: {born_in_us}, Becoming Citizen: {become_citizen_us}, "
213
+ f"Legal Resident: {legal_resident_us}, Permanent Resident Number: {permanent_resident_number}, "
214
+ f"Served in Military: {serve_military}, Military Benefit: {military_benefit}, "
215
+ f"Social Security Benefit: {social_security_benefit}, Supplemental Security Income: {supplemental_security_income}, "
216
+ )
217
+ dispatcher.utter_message(text=summary_message)
218
+
219
+ except Exception as e:
220
+ dispatcher.utter_message(text=f"An error occurred: {e}")
221
+
actions/free_flow.py ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import json
2
+ from langchain_core.prompts import MessagesPlaceholder
3
+ from langchain_core.prompts import ChatPromptTemplate
4
+ from langchain_core.messages import AIMessage, HumanMessage
5
+ from langchain.agents.format_scratchpad.openai_tools import (
6
+ format_to_openai_tool_messages,
7
+ )
8
+ from langchain import PromptTemplate, LLMChain
9
+ import os
10
+ from dotenv import load_dotenv
11
+ from langchain.memory import ConversationBufferWindowMemory
12
+ from langchain.prompts import ChatPromptTemplate, MessagesPlaceholder, HumanMessagePromptTemplate
13
+ from langchain.chains import ConversationChain
14
+ from langchain_mongodb.chat_message_histories import MongoDBChatMessageHistory
15
+ from pymongo import MongoClient
16
+ from langchain_openai import ChatOpenAI
17
+ load_dotenv()
18
+
19
+
20
+ default_json = {}
21
+
22
+ class FormFillingBot:
23
+ def __init__(self):
24
+ self.llm = ChatOpenAI(model="gpt-3.5-turbo", openai_api_key=os.getenv("OPENAI_API_KEY"), temperature=0)
25
+ def get_current_form_json(self,uuid):
26
+
27
+ CONNECTION_STRING = "mongodb+srv://dharasolanki:8apF57ZCeX16fKny@cluster0.egh8f3k.mongodb.net/?retryWrites=true&w=majority&appName=Cluster0"
28
+
29
+ # Connect to the MongoDB client
30
+ client = MongoClient(CONNECTION_STRING)
31
+
32
+ # Select the database and collection
33
+ db = client['benefitboost']
34
+ collection = db['currentFormJson']
35
+ # The UUID to search for
36
+ uuid_to_find = uuid
37
+
38
+ # Find the document with the specified UUID
39
+ document =collection.find_one({"uuid": uuid_to_find})
40
+
41
+ if document:
42
+ currentformjson = document.get('currentformjson', None)
43
+ if currentformjson:
44
+ print("Current Form JSON:", currentformjson)
45
+ else:
46
+ print("The 'currentformjson' field is not found in the document.")
47
+ else:
48
+ print(f"No document found with UUID: {uuid_to_find}")
49
+ return currentformjson
50
+
51
+ def form_filling(self, form_data,default_json):
52
+ "Use this tool for form filling task"
53
+ friendly_prompt = PromptTemplate(
54
+ input_variables=["user_input", "default_json"],
55
+ template="""You are a form-filling expert that takes the data from user input and finds the related field in {default_json} and returns the json provided with the details of the user. If you do not encounter fields of form then give response as you are a question-answering bot. If you do not find the details put it blank, do not try to fill every detail if it is not present in user_input. Here are the details entered by the user: {user_input}"""
56
+ )
57
+ friendly_chain = LLMChain(llm=self.llm, prompt=friendly_prompt)
58
+ response = friendly_chain.invoke({"user_input": form_data, "default_json": default_json})
59
+ return response["text"]
config.yml ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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: 20240522-105107-tan-bridge
8
+
9
+ # Configuration for Rasa NLU.
10
+ # https://rasa.com/docs/rasa/nlu/components/
11
+ language: en
12
+
13
+ pipeline: null
14
+ # # No configuration for the NLU pipeline was provided. The following default pipeline was used to train your model.
15
+ # # If you'd like to customize it, uncomment and adjust the pipeline.
16
+ # # See https://rasa.com/docs/rasa/tuning-your-model for more information.
17
+ # - name: WhitespaceTokenizer
18
+ # - name: RegexFeaturizer
19
+ # - name: LexicalSyntacticFeaturizer
20
+ # - name: CountVectorsFeaturizer
21
+ # - name: CountVectorsFeaturizer
22
+ # analyzer: char_wb
23
+ # min_ngram: 1
24
+ # max_ngram: 4
25
+ # - name: DIETClassifier
26
+ # epochs: 100
27
+ # constrain_similarities: true
28
+ # - name: EntitySynonymMapper
29
+ # - name: ResponseSelector
30
+ # epochs: 100
31
+ # constrain_similarities: true
32
+ # - name: FallbackClassifier
33
+ # threshold: 0.3
34
+ # ambiguity_threshold: 0.1
35
+ # - name: WhitespaceTokenizer
36
+ # - name: RegexFeaturizer
37
+ # - name: LexicalSyntacticFeaturizer
38
+ # - name: CountVectorsFeaturizer
39
+ # - name: CountVectorsFeaturizer
40
+ # analyzer: char_wb
41
+ # min_ngram: 1
42
+ # max_ngram: 4
43
+ # - name: DIETClassifier
44
+ # epochs: 100
45
+ # constrain_similarities: true
46
+ # - name: EntitySynonymMapper
47
+ # - name: ResponseSelector
48
+ # epochs: 100
49
+ # constrain_similarities: true
50
+ # - name: FallbackClassifier
51
+ # threshold: 0.7
52
+ # ambiguity_threshold: 0.1
53
+
54
+ # Configuration for Rasa Core.
55
+ # https://rasa.com/docs/rasa/core/policies/
56
+ policies:
57
+ # # No configuration for policies was provided. The following default policies were used to train your model.
58
+ # # If you'd like to customize them, uncomment and adjust the policies.
59
+ # # See https://rasa.com/docs/rasa/policies for more information.
60
+ # - name: MemoizationPolicy
61
+ - name: RulePolicy
62
+ core_fallback_threshold: 0.6
63
+ core_fallback_action_name: "action_chat"
64
+ enable_fallback_prediction: True
65
+ # - name: UnexpecTEDIntentPolicy
66
+ # max_history: 5
67
+ # epochs: 100
68
+ # - name: TEDPolicy
69
+ # max_history: 5
70
+ # epochs: 100
71
+ # constrain_similarities: true
72
+ # - name: RulePolicy
73
+ # - name: UnexpecTEDIntentPolicy
74
+ # max_history: 5
75
+ # epochs: 100
76
+ # - name: TEDPolicy
77
+ # max_history: 5
78
+ # epochs: 100
79
+ # 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,100 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ nlu:
4
+ - intent: strict_flow
5
+ examples: |
6
+ - strict flow
7
+ - fill my form using sttrict flow
8
+ - I want to fill form in strict flow
9
+
10
+ - intent: free_flow
11
+ examples: |
12
+ - free flow
13
+ - I want to fill my form using free flow
14
+ - Please fill form using free flow
15
+ - free flow form filling
16
+ - fill form using free flow
17
+ - help me with free flow
18
+
19
+
20
+ - intent: chat
21
+ examples: |
22
+ - What should I enter in Name field?
23
+ - Help me with basic detail form?
24
+ - hello
25
+ - hi
26
+
27
+ #rutvi's code
28
+
29
+ - intent: affirm
30
+ examples: |
31
+ - yes
32
+ - y
33
+ - indeed
34
+ - of course
35
+ - that sounds good
36
+ - correct
37
+ - /affirm
38
+
39
+ - intent: deny
40
+ examples: |
41
+ - no
42
+ - n
43
+ - never
44
+ - I don't think so
45
+ - don't like that
46
+ - no way
47
+ - not really
48
+ - intent: provide_phone
49
+ examples: |
50
+ - [555 123-4567](phone)
51
+ - [650 987-6543](phone)
52
+ - [212 456-7890](phone)
53
+ - [(415) 234-5678](phone)
54
+ - [(305) 567-8901](phone)
55
+ - [9876543210](phone)
56
+ - [1234567890](phone)
57
+ - [5678901234](phone)
58
+ - [7890123456](phone)
59
+ - [2345678901](phone)
60
+ - [+1 1234567890](phone)
61
+ - [+1 5678901234](phone)
62
+ - [+1 7890123456](phone)
63
+ - [+1 2345678901](phone)
64
+ - [+91 1234567890](phone)
65
+ - [+44 7123 456789](phone)
66
+ - [+61 2 1234 5678](phone)
67
+ - [+33 1 23 45 67 89](phone)
68
+ - [+49 123 456789](phone)
69
+ - [+1-555-123-4567](phone)
70
+ - [1-650-987-6543](phone)
71
+ - [212.456.7890](phone)
72
+ - [415/234/5678](phone)
73
+ - [305\567\8901](phone)
74
+ - [+1 (800) 555-1234](phone)
75
+ - [+1 (888) 123-4567](phone)
76
+ - [+1 (900) 567-8901](phone)
77
+ - [+1 (877) 234-5678](phone)
78
+ - [+1 (866) 456-7890](phone)
79
+ - intent: goodbye
80
+ examples: |
81
+ - goodbye
82
+ - bye
83
+ - see you later
84
+ - I'm done
85
+ - exit
86
+ - all done
87
+ - thank you
88
+ # - intent: form_fill
89
+ # examples: |
90
+ # - Let me give you form data
91
+ # - I want to fill up my form
92
+ # - I am giving you form data from my recording, so fill up the form from that
93
+ # - I need to fill out a form
94
+ # - I want to input data into a form
95
+ # - I have some details to enter into a form
96
+ # - I need to fill in a form with my information
97
+ # - Assist me in completing this form
98
+ # - Let me provide the form details via an audio recording
99
+ # - I'll record the form information, and you can fill it out
100
+ # - I'm going to dictate the form data, so please fill in the form
data/rules.yml ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+ rules:
3
+ - rule: Handle Fallback
4
+ steps:
5
+ - intent: nlu_fallback
6
+ - action: action_chat
7
+ - rule: Handle slot value and re-ask if necessary
8
+ condition:
9
+ - slot_was_set:
10
+ - data: null
11
+ steps:
12
+ - action: action_free_flow
13
+ - rule: Activate form loop
14
+ steps:
15
+ - intent: free_flow
16
+ - action: form_rasa
17
+ - active_loop: form_rasa
18
+
19
+ - rule: Submit form
20
+ condition:
21
+ - active_loop: form_rasa
22
+ steps:
23
+ - action: form_rasa
24
+ - active_loop: null
25
+ - slot_was_set:
26
+ - requested_slot: null
27
+ - action: action_free_flow
28
+
29
+ - rule: activate form loop
30
+ steps:
31
+ - intent: strict_flow
32
+ - action: basic_form
33
+ - active_loop: basic_form
34
+
35
+ - rule: Intruption in form
36
+ condition:
37
+ - active_loop: basic_form
38
+ steps:
39
+ - intent: chat
40
+ - action: action_chat
41
+ - action: basic_form
42
+ - active_loop: basic_form
43
+
44
+ - rule: Intruption in strict flow
45
+ condition:
46
+ - active_loop: basic_form
47
+ steps:
48
+ - intent: strict_flow
49
+ - action: basic_form
50
+ - active_loop: basic_form
51
+
52
+ - rule: submit form rutvi
53
+ condition:
54
+ - active_loop: basic_form
55
+ steps:
56
+ - action: basic_form
57
+ - active_loop: null
58
+ - action: action_submit_form
59
+
60
+ - rule: chat
61
+ steps:
62
+ - intent: chat
63
+ - action: action_chat
64
+
65
+ - rule: Resume strict flow in form
66
+ condition:
67
+ - active_loop: basic_form
68
+ steps:
69
+ - intent: strict_flow
70
+ - action: basic_form
71
+ - active_loop: basic_form
data/stories.yml ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # version: "3.1"
2
+
3
+ # stories:
4
+
5
+ # - story: happy path
6
+ # steps:
7
+ # - intent: chat
8
+ # - action: action_chat
9
+
10
+ # - story: form fill
11
+ # steps:
12
+ # - intent: strict_flow
13
+ # - action: basic_form
14
+ # - active_loop: basic_form
15
+ # - active_loop: null
16
+ # - action: action_submit_form
17
+
18
+ version: '3.1'
19
+ stories:
20
+ - story: happy path
21
+ steps:
22
+ - intent: chat
23
+ - action: action_chat
24
+
25
+ - story: form fill
26
+ steps:
27
+ - intent: strict_flow
28
+ - action: basic_form
29
+ - active_loop: basic_form
30
+ - active_loop: null
31
+ - action: action_submit_form
32
+
33
+ - story: free flow
34
+ steps:
35
+ - intent: free_flow
36
+ - action: form_rasa
37
+ - active_loop: form_rasa
38
+ - active_loop: null
39
+ - action: action_free_flow
domain.yml ADDED
@@ -0,0 +1,2232 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ version: "3.1"
2
+
3
+ intents:
4
+ - strict_flow
5
+ - free_flow
6
+ - chat
7
+ - goodbye
8
+ - affirm
9
+ - deny
10
+ - provide_phone
11
+
12
+ responses:
13
+ # utter_form_filling:
14
+ # - text: "Form filled"
15
+ utter_strict_flow:
16
+ - text: "Strict flow enabled"
17
+ utter_ask_data:
18
+ - text: "Enter details"
19
+ utter_ask_first_name:
20
+ - text: "What is your first name ?"
21
+
22
+ utter_ask_middle_name:
23
+ - text: "What is your middle name ?"
24
+
25
+ utter_ask_last_name:
26
+ - text: "What is your last name ?"
27
+
28
+ utter_ask_email:
29
+ - text: "What is your email ?"
30
+
31
+ utter_ask_us_number:
32
+ - text: "Do you have the U.S. Phone Number ?"
33
+ buttons:
34
+ - title: yes
35
+ payload: "/affirm"
36
+ - title: no
37
+ payload: "/deny"
38
+
39
+ utter_ask_phone:
40
+ - text: "Provide me your phone number"
41
+
42
+ utter_ask_confirm_location:
43
+ - text: "Just to confirm: do you live at this address ?"
44
+ buttons:
45
+ - title: yes
46
+ payload: "/affirm"
47
+ - title: no
48
+ payload: "/deny"
49
+
50
+ utter_ask_confirm_mail_address:
51
+ - text: "Would you like to receive mail related to this application at this address ?"
52
+ buttons:
53
+ - title: yes
54
+ payload: "/affirm"
55
+ - title: no
56
+ payload: "/deny"
57
+
58
+ utter_ask_preferred_language:
59
+ - text: "Is your preferred language for reading, writing, and speaking English ?"
60
+ buttons:
61
+ - title: yes
62
+ payload: "/affirm"
63
+ - title: no
64
+ payload: "/deny"
65
+
66
+ utter_ask_able_to_read_write:
67
+ - text: "Are you able to read and write more than your name ?"
68
+ buttons:
69
+ - title: yes
70
+ payload: "/affirm"
71
+ - title: no
72
+ payload: "/deny"
73
+
74
+ utter_ask_born_in_us:
75
+ - text: "Were you born in the U.S. or a U.S. territory ?
76
+ U.S. territories include American Samoa, Guam, Northern Mariana Islands, Puerto Rico, and U.S. Virgin Islands. ?"
77
+ buttons:
78
+ - title: yes
79
+ payload: "/affirm"
80
+ - title: no
81
+ payload: "/deny"
82
+
83
+ utter_ask_become_citizen_us:
84
+ - text: "Are you actively going through the process of becoming a U.S. citizen ?"
85
+ buttons:
86
+ - title: yes
87
+ payload: "/affirm"
88
+ - title: no
89
+ payload: "/deny"
90
+
91
+ utter_ask_legal_resident_us:
92
+ - text: "Are you a legal resident of the U.S. ?"
93
+ buttons:
94
+ - title: yes
95
+ payload: "/affirm"
96
+ - title: no
97
+ payload: "/deny"
98
+
99
+ utter_ask_permanent_resident_number:
100
+ - text: "What's your Permanent Resident Card Number ? (Optional)"
101
+
102
+ utter_ask_serve_military:
103
+ - text: "Did you serve or are you serving in the U.S. military ?"
104
+ buttons:
105
+ - title: yes
106
+ payload: "/affirm"
107
+ - title: no
108
+ payload: "/deny"
109
+
110
+ utter_ask_military_benefit:
111
+ - text: "Are you receiving or eligible to receive a military or civilian federal agency benefit?"
112
+ buttons:
113
+ - title: yes
114
+ payload: "/affirm"
115
+ - title: no
116
+ payload: "/deny"
117
+
118
+ utter_ask_medicare_benefit:
119
+ - text: "Are you currently receiving Medicare benefits ?"
120
+ buttons:
121
+ - title: yes
122
+ payload: "/affirm"
123
+ - title: no
124
+ payload: "/deny"
125
+
126
+ utter_ask_social_security_benefit:
127
+ - text: "Are you currently receiving Social Security benefits ?"
128
+ buttons:
129
+ - title: yes
130
+ payload: "/affirm"
131
+ - title: no
132
+ payload: "/deny"
133
+
134
+ utter_ask_supplemental_security_income:
135
+ - text: "Are you currently receiving Supplemental Security Income (SSI) ?"
136
+ buttons:
137
+ - title: yes
138
+ payload: "/affirm"
139
+ - title: no
140
+ payload: "/deny"
141
+
142
+ utter_ask_current_spouse_first_name:
143
+ - text: "What is your current spouse first name ?"
144
+
145
+ utter_ask_current_spouse_last_name:
146
+ - text: "What is your current spouse last name ?"
147
+
148
+ utter_ask_current_spouse_social_security_number:
149
+ - text: "What is your current spouse social security number ?"
150
+
151
+ utter_ask_prior_marriages:
152
+ - text: "Do you have any prior marriages?"
153
+ buttons:
154
+ - title: yes
155
+ payload: "/affirm"
156
+ - title: no
157
+ payload: "/deny"
158
+
159
+ utter_ask_prior_marriages_duration:
160
+ - text: "Did any of your prior marriages last 10 years or more?"
161
+ buttons:
162
+ - title: yes
163
+ payload: "/affirm"
164
+ - title: no
165
+ payload: "/deny"
166
+
167
+ utter_ask_prior_marriages_death:
168
+ - text: "Did any of your prior marriages end due to your spouse's death?"
169
+ buttons:
170
+ - title: yes
171
+ payload: "/affirm"
172
+ - title: no
173
+ payload: "/deny"
174
+
175
+ utter_ask_have_children:
176
+ - text: "Do you have any children?"
177
+ buttons:
178
+ - title: yes
179
+ payload: "/affirm"
180
+ - title: no
181
+ payload: "/deny"
182
+
183
+ utter_ask_parent_support:
184
+ - text: "Do you have a parent who receives one-half support from you?"
185
+ buttons:
186
+ - title: yes
187
+ payload: "/affirm"
188
+ - title: no
189
+ payload: "/deny"
190
+
191
+ utter_ask_used_other_names:
192
+ - text: "Have you used any other names? Examples may include maiden name(s) or past name adjustments."
193
+ buttons:
194
+ - title: yes
195
+ payload: "/affirm"
196
+ - title: no
197
+ payload: "/deny"
198
+
199
+ utter_ask_ssn:
200
+ - text: "Please enter these social security numbers (SSN)"
201
+
202
+ utter_ask_used_other_ssn:
203
+ - text: "Have you used any other social security number (SSN)?"
204
+ buttons:
205
+ - title: yes
206
+ payload: "/affirm"
207
+ - title: no
208
+ payload: "/deny"
209
+
210
+ utter_ask_bank_account_for_deposit:
211
+ - text: "Do you have a bank account that you can use to receive direct deposit payments?"
212
+ buttons:
213
+ - title: yes
214
+ payload: "/affirm"
215
+ - title: no
216
+ payload: "/deny"
217
+
218
+ utter_ask_routing_number:
219
+ - text: "Routing Number"
220
+
221
+ utter_ask_account_number:
222
+ - text: "Account Number"
223
+
224
+ utter_ask_able_to_work:
225
+ - text: "Are you currently able to work regardless of your illness, injury, or conditions?"
226
+ buttons:
227
+ - title: "Yes"
228
+ payload: "/affirm"
229
+ - title: "No"
230
+ payload: "/deny"
231
+ utter_ask_perform_usual_job_responsibilities:
232
+ - text: "Are you able to perform your usual job responsibilities?"
233
+ buttons:
234
+ - title: "Yes"
235
+ payload: "/affirm"
236
+ - title: "No"
237
+ payload: "/deny"
238
+ utter_ask_condition_last_14_months:
239
+ - text: "Is the illness, injury, or condition expected to last more than 14 months?"
240
+ buttons:
241
+ - title: "Yes"
242
+ payload: "/affirm"
243
+ - title: "No"
244
+ payload: "/deny"
245
+ utter_ask_condition_end_in_death:
246
+ - text: "Has a medical professional described any of your specific conditions as one that's expected to end in death?"
247
+ buttons:
248
+ - title: "Yes"
249
+ payload: "/affirm"
250
+ - title: "No"
251
+ payload: "/deny"
252
+ utter_ask_condition_require_work_changes:
253
+ - text: "Did your condition, injury, or illness require changes to your work activity while you were working?"
254
+ buttons:
255
+ - title: "Yes"
256
+ payload: "/affirm"
257
+ - title: "No"
258
+ payload: "/deny"
259
+ utter_ask_earned_more_than_1470_in_2024:
260
+ - text: "Have you made more than $1470 during any month in 2024 since the date(s) you provided above?"
261
+ buttons:
262
+ - title: "Yes"
263
+ payload: "/affirm"
264
+ - title: "No"
265
+ payload: "/deny"
266
+ utter_ask_intend_to_work_in_2024:
267
+ - text: "Do you intend to work in 2024?"
268
+ buttons:
269
+ - title: "Yes"
270
+ payload: "/affirm"
271
+ - title: "No"
272
+ payload: "/deny"
273
+ utter_ask_received_money_from_employer:
274
+ - text: "Have you received money from your employer on or after the date that you became unable to work?"
275
+ buttons:
276
+ - title: "Yes"
277
+ payload: "/affirm"
278
+ - title: "No"
279
+ payload: "/deny"
280
+ utter_ask_expect_to_receive_money_from_employer:
281
+ - text: "Do you expect to receive any money from your employer in the future?"
282
+ buttons:
283
+ - title: "Yes"
284
+ payload: "/affirm"
285
+ - title: "No"
286
+ payload: "/deny"
287
+
288
+ utter_ask_school_name:
289
+ - text: "What is your school name ?"
290
+
291
+ utter_ask_school_city:
292
+ - text: "What is your school city ?"
293
+
294
+ utter_ask_school_state:
295
+ - text: "What is your school state ?"
296
+
297
+ utter_ask_school_country:
298
+ - text: "What is your school country ?"
299
+
300
+ utter_ask_special_education:
301
+ - text: "Have you ever received special education through an individualized education plan (IEP) or similar program?"
302
+ buttons:
303
+ - title: yes
304
+ payload: "/affirm"
305
+ - title: no
306
+ payload: "/deny"
307
+
308
+ utter_ask_specialized_job_training:
309
+ - text: "Have you completed any type of specialized job training, including trade or vocational school?"
310
+ buttons:
311
+ - title: yes
312
+ payload: "/affirm"
313
+ - title: no
314
+ payload: "/deny"
315
+
316
+ utter_ask_company_name:
317
+ - text: "What is your company name ?"
318
+
319
+ utter_ask_business_type:
320
+ - text: "Type of Business"
321
+
322
+ utter_ask_end_date_last_worked:
323
+ - text: "Is this end date the last day that you physically worked for this company?"
324
+ buttons:
325
+ - title: yes
326
+ payload: "/affirm"
327
+ - title: no
328
+ payload: "/deny"
329
+
330
+ utter_ask_job_title:
331
+ - text: "What is your job title"
332
+
333
+ utter_ask_pay_amount:
334
+ - text: "Pay Amount Per Pay Period (US dollars):"
335
+
336
+ utter_ask_lifting_ability:
337
+ - text: "What about lifting?"
338
+ buttons:
339
+ - title: yes
340
+ payload: "/affirm"
341
+ - title: no
342
+ payload: "/deny"
343
+
344
+ utter_ask_supervised_others:
345
+ - text: "Did you supervise other people?"
346
+ buttons:
347
+ - title: yes
348
+ payload: "/affirm"
349
+ - title: no
350
+ payload: "/deny"
351
+
352
+ utter_ask_cared_for_children:
353
+ - text: "Have you cared for children under the age of three (3) full-time?"
354
+ buttons:
355
+ - title: yes
356
+ payload: "/affirm"
357
+ - title: no
358
+ payload: "/deny"
359
+
360
+ utter_ask_self_employed_last_15_years:
361
+ - text: "Have you been self-employed in the last 15 years?"
362
+ buttons:
363
+ - title: yes
364
+ payload: "/affirm"
365
+ - title: no
366
+ payload: "/deny"
367
+ utter_ask_self_employed_2023:
368
+ - text: "Were you self-employed during 2023?"
369
+ buttons:
370
+ - title: yes
371
+ payload: "/affirm"
372
+ - title: no
373
+ payload: "/deny"
374
+
375
+ utter_ask_profit_self_employed_2023:
376
+ - text: "Did you profit more than $400 from the self-employed job in 2023?"
377
+ buttons:
378
+ - title: yes
379
+ payload: "/affirm"
380
+ - title: no
381
+ payload: "/deny"
382
+
383
+ utter_ask_self_employed_2024:
384
+ - text: "Were you self-employed during 2024?"
385
+ buttons:
386
+ - title: yes
387
+ payload: "/affirm"
388
+ - title: no
389
+ payload: "/deny"
390
+
391
+ utter_ask_profit_self_employed_2024:
392
+ - text: "Did you profit more than $400 from the self-employed job in 2024?"
393
+ buttons:
394
+ - title: yes
395
+ payload: "/affirm"
396
+ - title: no
397
+ payload: "/deny"
398
+
399
+ utter_ask_worked_outside_us:
400
+ - text: "Have you ever worked outside of the U.S.?"
401
+ buttons:
402
+ - title: yes
403
+ payload: "/affirm"
404
+ - title: no
405
+ payload: "/deny"
406
+
407
+ utter_ask_worked_outside_us_2024:
408
+ - text: "Did you work outside of the U.S. for salary, wages, or self-employment in 2024?"
409
+ buttons:
410
+ - title: yes
411
+ payload: "/affirm"
412
+ - title: no
413
+ payload: "/deny"
414
+
415
+ utter_ask_illness_expected_duration:
416
+ - text: "Is the illness, injury, or condition expected to last more than 14 months?"
417
+ buttons:
418
+ - title: yes
419
+ payload: "/affirm"
420
+ - title: no
421
+ payload: "/deny"
422
+ utter_ask_worked_outside_2023:
423
+ - text: "Did you work outside of the U.S. for salary, wages, or self-employment during 2023?"
424
+ buttons:
425
+ - title: yes
426
+ payload: "/affirm"
427
+ - title: no
428
+ payload: "/deny"
429
+ utter_ask_earnings_subject_us_social_security:
430
+ - text: "Were all earnings subject to U.S. social security tax during 2023?"
431
+ buttons:
432
+ - title: yes
433
+ payload: "/affirm"
434
+ - title: no
435
+ payload: "/deny"
436
+ utter_ask_eligible_foreign_social_security:
437
+ - text: "Are you eligible for benefits under a foreign social security system?"
438
+ buttons:
439
+ - title: yes
440
+ payload: "/affirm"
441
+ - title: no
442
+ payload: "/deny"
443
+ utter_ask_special_payments:
444
+ - text: "Do any of the total earnings include special payments paid during one year but earned in another?"
445
+ buttons:
446
+ - title: yes
447
+ payload: "/affirm"
448
+ - title: no
449
+ payload: "/deny"
450
+ utter_ask_no_social_security_taxes:
451
+ - text: "Have you ever worked a job in which U.S. social security taxes were not deducted or withheld?"
452
+ buttons:
453
+ - title: yes
454
+ payload: "/affirm"
455
+ - title: no
456
+ payload: "/deny"
457
+ utter_ask_spouse_receiving_pension:
458
+ - text: "Are you or your spouse receiving a pension or annuity based on this work for which taxes were not deducted or withheld?"
459
+ buttons:
460
+ - title: yes
461
+ payload: "/affirm"
462
+ - title: no
463
+ payload: "/deny"
464
+ utter_ask_future_pension_annuity:
465
+ - text: "Do you expect to receive a pension or annuity in the future for this work, for which taxes were not deducted or withheld?"
466
+ buttons:
467
+ - title: yes
468
+ payload: "/affirm"
469
+ - title: no
470
+ payload: "/deny"
471
+ utter_ask_government_pension_or_annuity:
472
+ - text: "Is the pension or annuity based on government employment?"
473
+ buttons:
474
+ - title: yes
475
+ payload: "/affirm"
476
+ - title: no
477
+ payload: "/deny"
478
+ utter_ask_lump_sum_payment:
479
+ - text: "Did you receive a lump sum payment of any kind instead of a pension or annuity for this work for which taxes were not deducted or withheld?"
480
+ buttons:
481
+ - title: yes
482
+ payload: "/affirm"
483
+ - title: no
484
+ payload: "/deny"
485
+ utter_ask_vision_impairment:
486
+ - text: "Do you have 20/200 or less vision?"
487
+ buttons:
488
+ - title: yes
489
+ payload: "/affirm"
490
+ - title: no
491
+ payload: "/deny"
492
+
493
+ utter_ask_impaired_vision_with_glasses_contacts:
494
+ - text: "Do you still experience impaired vision even with glasses or contacts?"
495
+ buttons:
496
+ - title: yes
497
+ payload: "/affirm"
498
+ - title: no
499
+ payload: "/deny"
500
+
501
+ utter_ask_partial_or_total_deafness:
502
+ - text: "Are you partially or totally deaf?"
503
+ buttons:
504
+ - title: yes
505
+ payload: "/affirm"
506
+ - title: no
507
+ payload: "/deny"
508
+
509
+ utter_ask_use_hearing_aids:
510
+ - text: "Please share if you use any hearing aids?"
511
+ buttons:
512
+ - title: yes
513
+ payload: "/affirm"
514
+ - title: no
515
+ payload: "/deny"
516
+
517
+ utter_ask_history_of_seizures:
518
+ - text: "Next help us understand if you experience any seizure-related symptoms due to your illness, injury, or condition. Do you or have you previously experienced seizures?"
519
+ buttons:
520
+ - title: yes
521
+ payload: "/affirm"
522
+ - title: no
523
+ payload: "/deny"
524
+
525
+ utter_ask_mental_illness_treatment:
526
+ - text: "Have you seen a doctor or been treated for any mental illnesses, injuries, or conditions since you've been unable to work?"
527
+ buttons:
528
+ - title: yes
529
+ payload: "/affirm"
530
+ - title: no
531
+ payload: "/deny"
532
+
533
+ utter_ask_physical_illness_treatment:
534
+ - text: "Have you seen at least one doctor or been treated for any physical illnesses, injuries, or conditions since you've been unable to work?"
535
+ buttons:
536
+ - title: yes
537
+ payload: "/affirm"
538
+ - title: no
539
+ payload: "/deny"
540
+
541
+ utter_ask_emergency_room_visit:
542
+ - text: "Have you seen a medical professional or been to a medical facility for an emergency room visit?"
543
+ buttons:
544
+ - title: yes
545
+ payload: "/affirm"
546
+ - title: no
547
+ payload: "/deny"
548
+
549
+ utter_ask_medical_tests_or_medications:
550
+ - text: "Have you seen a medical professional or been to a medical facility for any medical tests or medications ordered by this facility?"
551
+ buttons:
552
+ - title: yes
553
+ payload: "/affirm"
554
+ - title: no
555
+ payload: "/deny"
556
+
557
+ utter_ask_mental_health_treatment:
558
+ - text: "Have you seen a medical professional or been to a medical facility for any mental health treatment or evaluations?"
559
+ buttons:
560
+ - title: yes
561
+ payload: "/affirm"
562
+ - title: no
563
+ payload: "/deny"
564
+
565
+ utter_ask_inpatient_stays:
566
+ - text: "Have you seen a medical professional or been to a medical facility for any inpatient or overnight stays?"
567
+ buttons:
568
+ - title: yes
569
+ payload: "/affirm"
570
+ - title: no
571
+ payload: "/deny"
572
+
573
+ utter_ask_outpatient_visits:
574
+ - text: "Have you seen a medical professional or been to a medical facility for any outpatient or same-day visits?"
575
+ buttons:
576
+ - title: yes
577
+ payload: "/affirm"
578
+ - title: no
579
+ payload: "/deny"
580
+ utter_ask_had_surgeries:
581
+ - text: "Have you seen a medical professional or been to a medical facility for any surgeries?"
582
+ buttons:
583
+ - title: yes
584
+ payload: "/affirm"
585
+ - title: no
586
+ payload: "/deny"
587
+
588
+ utter_ask_had_physical_therapy:
589
+ - text: "Have you seen a medical professional or been to a medical facility for any physical therapy?"
590
+ buttons:
591
+ - title: yes
592
+ payload: "/affirm"
593
+ - title: no
594
+ payload: "/deny"
595
+ utter_ask_medical_records:
596
+ - text: "Please tell us if any of the following organizations may have your medical records due to past evaluations or treatment related to your illnesses, injuries, or conditions?"
597
+ buttons:
598
+ - title: yes
599
+ payload: "/affirm"
600
+ - title: no
601
+ payload: "/deny"
602
+ utter_ask_doctor_in_prison:
603
+ - text: "Doctors in prison or jail?"
604
+ buttons:
605
+ - title: yes
606
+ payload: "/affirm"
607
+ - title: no
608
+ payload: "/deny"
609
+ utter_ask_public_welfare:
610
+ - text: "Public welfare?"
611
+ buttons:
612
+ - title: yes
613
+ payload: "/affirm"
614
+ - title: no
615
+ payload: "/deny"
616
+ utter_ask_attorney_records:
617
+ - text: "Records held by an attorney/lawyer?"
618
+ buttons:
619
+ - title: yes
620
+ payload: "/affirm"
621
+ - title: no
622
+ payload: "/deny"
623
+ utter_ask_disability_insurance:
624
+ - text: "Short-term or long-term disability insurance (Excluding private health insurance)?"
625
+ buttons:
626
+ - title: yes
627
+ payload: "/affirm"
628
+ - title: no
629
+ payload: "/deny"
630
+ utter_ask_vocational_rehab:
631
+ - text: "Vocational rehabilitation service?"
632
+ buttons:
633
+ - title: yes
634
+ payload: "/affirm"
635
+ - title: no
636
+ payload: "/deny"
637
+ utter_ask_workers_compensation:
638
+ - text: "Worker's compensation?"
639
+ buttons:
640
+ - title: yes
641
+ payload: "/affirm"
642
+ - title: no
643
+ payload: "/deny"
644
+ utter_ask_other_records:
645
+ - text: "Other records, please explain (Excluding private health insurance)?"
646
+ buttons:
647
+ - title: yes
648
+ payload: "/affirm"
649
+ - title: no
650
+ payload: "/deny"
651
+ utter_ask_medical_tests_completed:
652
+ - text: "Have you had any medical tests completed related to your illnesses, injuries, or conditions?"
653
+ buttons:
654
+ - title: yes
655
+ payload: "/affirm"
656
+ - title: no
657
+ payload: "/deny"
658
+
659
+ utter_ask_taking_medications:
660
+ - text: "Are you taking any medications (i.e. prescribed or over-the-counter) for your illnesses, injuries, or conditions?"
661
+ buttons:
662
+ - title: yes
663
+ payload: "/affirm"
664
+ - title: no
665
+ payload: "/deny"
666
+
667
+ utter_goodbye:
668
+ - text: Bye
669
+
670
+
671
+ # session_config:
672
+ # session_expiration_time: 60
673
+ # carry_over_slots_to_new_session: true
674
+
675
+ actions:
676
+ - action_chat
677
+ - action_free_flow
678
+ - action_submit_form
679
+
680
+ slots:
681
+ data:
682
+ type: text
683
+ influence_conversation: true
684
+ mappings:
685
+ - type: from_text
686
+ conditions:
687
+ - active_loop: form_rasa
688
+ requested_slot: data
689
+ first_name:
690
+ type: text
691
+ influence_conversation: true
692
+ mappings:
693
+ - type: from_text
694
+ conditions:
695
+ - active_loop: basic_form
696
+ requested_slot: first_name
697
+ middle_name:
698
+ type: text
699
+ influence_conversation: true
700
+ mappings:
701
+ - type: from_text
702
+ conditions:
703
+ - active_loop: basic_form
704
+ requested_slot: middle_name
705
+ last_name:
706
+ type: text
707
+ influence_conversation: true
708
+ mappings:
709
+ - type: from_text
710
+ conditions:
711
+ - active_loop: basic_form
712
+ requested_slot: last_name
713
+ email:
714
+ type: text
715
+ influence_conversation: true
716
+ mappings:
717
+ - type: from_text
718
+ conditions:
719
+ - active_loop: basic_form
720
+ requested_slot: email
721
+ us_number:
722
+ type: bool
723
+ influence_conversation: true
724
+ mappings:
725
+ - type: from_intent
726
+ value: true
727
+ intent: affirm
728
+ conditions:
729
+ - active_loop: basic_form
730
+ requested_slot: us_number
731
+ - type: from_intent
732
+ value: false
733
+ intent: deny
734
+ conditions:
735
+ - active_loop: basic_form
736
+ requested_slot: us_number
737
+ phone:
738
+ type: text
739
+ influence_conversation: true
740
+ mappings:
741
+ - type: from_entity
742
+ entity: phone
743
+ conditions:
744
+ - active_loop: basic_form
745
+ requested_slot: phone
746
+ confirm_location:
747
+ type: bool
748
+ influence_conversation: true
749
+ mappings:
750
+ - type: from_intent
751
+ value: true
752
+ intent: affirm
753
+ conditions:
754
+ - active_loop: basic_form
755
+ requested_slot: confirm_location
756
+ - type: from_intent
757
+ value: false
758
+ intent: deny
759
+ conditions:
760
+ - active_loop: basic_form
761
+ requested_slot: confirm_location
762
+ confirm_mail_address:
763
+ type: bool
764
+ influence_conversation: true
765
+ mappings:
766
+ - type: from_intent
767
+ value: true
768
+ intent: affirm
769
+ conditions:
770
+ - active_loop: basic_form
771
+ requested_slot: confirm_mail_address
772
+ - type: from_intent
773
+ value: false
774
+ intent: deny
775
+ conditions:
776
+ - active_loop: basic_form
777
+ requested_slot: confirm_mail_address
778
+ preferred_language:
779
+ type: bool
780
+ influence_conversation: true
781
+ mappings:
782
+ - type: from_intent
783
+ value: true
784
+ intent: affirm
785
+ conditions:
786
+ - active_loop: basic_form
787
+ requested_slot: preferred_language
788
+ - type: from_intent
789
+ value: false
790
+ intent: deny
791
+ conditions:
792
+ - active_loop: basic_form
793
+ requested_slot: preferred_language
794
+ able_to_read_write:
795
+ type: bool
796
+ influence_conversation: true
797
+ mappings:
798
+ - type: from_intent
799
+ value: true
800
+ intent: affirm
801
+ conditions:
802
+ - active_loop: basic_form
803
+ requested_slot: able_to_read_write
804
+ - type: from_intent
805
+ value: false
806
+ intent: deny
807
+ conditions:
808
+ - active_loop: basic_form
809
+ requested_slot: able_to_read_write
810
+ born_in_us:
811
+ type: bool
812
+ influence_conversation: true
813
+ mappings:
814
+ - type: from_intent
815
+ value: true
816
+ intent: affirm
817
+ conditions:
818
+ - active_loop: basic_form
819
+ requested_slot: born_in_us
820
+ - type: from_intent
821
+ value: false
822
+ intent: deny
823
+ conditions:
824
+ - active_loop: basic_form
825
+ requested_slot: born_in_us
826
+ become_citizen_us:
827
+ type: bool
828
+ influence_conversation: true
829
+ mappings:
830
+ - type: from_intent
831
+ value: true
832
+ intent: affirm
833
+ conditions:
834
+ - active_loop: basic_form
835
+ requested_slot: become_citizen_us
836
+ - type: from_intent
837
+ value: false
838
+ intent: deny
839
+ conditions:
840
+ - active_loop: basic_form
841
+ requested_slot: become_citizen_us
842
+ legal_resident_us:
843
+ type: bool
844
+ influence_conversation: true
845
+ mappings:
846
+ - type: from_intent
847
+ value: true
848
+ intent: affirm
849
+ conditions:
850
+ - active_loop: basic_form
851
+ requested_slot: legal_resident_us
852
+ - type: from_intent
853
+ value: false
854
+ intent: deny
855
+ conditions:
856
+ - active_loop: basic_form
857
+ requested_slot: legal_resident_us
858
+ permanent_resident_number:
859
+ type: bool
860
+ influence_conversation: true
861
+ mappings:
862
+ - type: from_intent
863
+ value: true
864
+ intent: affirm
865
+ conditions:
866
+ - active_loop: basic_form
867
+ requested_slot: permanent_resident_number
868
+ - type: from_intent
869
+ value: false
870
+ intent: deny
871
+ conditions:
872
+ - active_loop: basic_form
873
+ requested_slot: permanent_resident_number
874
+ serve_military:
875
+ type: bool
876
+ influence_conversation: true
877
+ mappings:
878
+ - type: from_intent
879
+ value: true
880
+ intent: affirm
881
+ conditions:
882
+ - active_loop: basic_form
883
+ requested_slot: serve_military
884
+ - type: from_intent
885
+ value: false
886
+ intent: deny
887
+ conditions:
888
+ - active_loop: basic_form
889
+ requested_slot: serve_military
890
+ military_benefit:
891
+ type: bool
892
+ influence_conversation: true
893
+ mappings:
894
+ - type: from_intent
895
+ value: true
896
+ intent: affirm
897
+ conditions:
898
+ - active_loop: basic_form
899
+ requested_slot: military_benefit
900
+ - type: from_intent
901
+ value: false
902
+ intent: deny
903
+ conditions:
904
+ - active_loop: basic_form
905
+ requested_slot: military_benefit
906
+ medicare_benefit:
907
+ type: bool
908
+ influence_conversation: true
909
+ mappings:
910
+ - type: from_intent
911
+ value: true
912
+ intent: affirm
913
+ conditions:
914
+ - active_loop: basic_form
915
+ requested_slot: medicare_benefit
916
+ - type: from_intent
917
+ value: false
918
+ intent: deny
919
+ conditions:
920
+ - active_loop: basic_form
921
+ requested_slot: medicare_benefit
922
+ social_security_benefit:
923
+ type: bool
924
+ influence_conversation: true
925
+ mappings:
926
+ - type: from_intent
927
+ value: true
928
+ intent: affirm
929
+ conditions:
930
+ - active_loop: basic_form
931
+ requested_slot: social_security_benefit
932
+ - type: from_intent
933
+ value: false
934
+ intent: deny
935
+ conditions:
936
+ - active_loop: basic_form
937
+ requested_slot: social_security_benefit
938
+ supplemental_security_income:
939
+ type: bool
940
+ influence_conversation: true
941
+ mappings:
942
+ - type: from_intent
943
+ value: true
944
+ intent: affirm
945
+ conditions:
946
+ - active_loop: basic_form
947
+ requested_slot: supplemental_security_income
948
+ - type: from_intent
949
+ value: false
950
+ intent: deny
951
+ conditions:
952
+ - active_loop: basic_form
953
+ requested_slot: supplemental_security_income
954
+
955
+ current_spouse_first_name:
956
+ type: text
957
+ influence_conversation: true
958
+ mappings:
959
+ - type: from_text
960
+ conditions:
961
+ - active_loop: basic_form
962
+ requested_slot: current_spouse_first_name
963
+
964
+ current_spouse_last_name:
965
+ type: text
966
+ influence_conversation: true
967
+ mappings:
968
+ - type: from_text
969
+ conditions:
970
+ - active_loop: basic_form
971
+ requested_slot: current_spouse_last_name
972
+
973
+ current_spouse_social_security_number:
974
+ type: text
975
+ influence_conversation: true
976
+ mappings:
977
+ - type: from_text
978
+ conditions:
979
+ - active_loop: basic_form
980
+ requested_slot: current_spouse_social_security_number
981
+
982
+ prior_marriages:
983
+ type: bool
984
+ influence_conversation: true
985
+ mappings:
986
+ - type: from_intent
987
+ value: true
988
+ intent: affirm
989
+ conditions:
990
+ - active_loop: basic_form
991
+ requested_slot: prior_marriages
992
+ - type: from_intent
993
+ value: false
994
+ intent: deny
995
+ conditions:
996
+ - active_loop: basic_form
997
+ requested_slot: prior_marriages
998
+
999
+ prior_marriages_duration:
1000
+ type: bool
1001
+ influence_conversation: true
1002
+ mappings:
1003
+ - type: from_intent
1004
+ value: true
1005
+ intent: affirm
1006
+ conditions:
1007
+ - active_loop: basic_form
1008
+ requested_slot: prior_marriages_duration
1009
+ - type: from_intent
1010
+ value: false
1011
+ intent: deny
1012
+ conditions:
1013
+ - active_loop: basic_form
1014
+ requested_slot: prior_marriages_duration
1015
+
1016
+ prior_marriages_death:
1017
+ type: bool
1018
+ influence_conversation: true
1019
+ mappings:
1020
+ - type: from_intent
1021
+ value: true
1022
+ intent: affirm
1023
+ conditions:
1024
+ - active_loop: basic_form
1025
+ requested_slot: prior_marriages_death
1026
+ - type: from_intent
1027
+ value: false
1028
+ intent: deny
1029
+ conditions:
1030
+ - active_loop: basic_form
1031
+ requested_slot: prior_marriages_death
1032
+
1033
+ have_children:
1034
+ type: bool
1035
+ influence_conversation: true
1036
+ mappings:
1037
+ - type: from_intent
1038
+ value: true
1039
+ intent: affirm
1040
+ conditions:
1041
+ - active_loop: basic_form
1042
+ requested_slot: have_children
1043
+ - type: from_intent
1044
+ value: false
1045
+ intent: deny
1046
+ conditions:
1047
+ - active_loop: basic_form
1048
+ requested_slot: have_children
1049
+
1050
+ parent_support:
1051
+ type: bool
1052
+ influence_conversation: true
1053
+ mappings:
1054
+ - type: from_intent
1055
+ value: true
1056
+ intent: affirm
1057
+ conditions:
1058
+ - active_loop: basic_form
1059
+ requested_slot: parent_support
1060
+ - type: from_intent
1061
+ value: false
1062
+ intent: deny
1063
+ conditions:
1064
+ - active_loop: basic_form
1065
+ requested_slot: parent_support
1066
+
1067
+ used_other_names:
1068
+ type: bool
1069
+ influence_conversation: true
1070
+ mappings:
1071
+ - type: from_intent
1072
+ value: true
1073
+ intent: affirm
1074
+ conditions:
1075
+ - active_loop: basic_form
1076
+ requested_slot: used_other_names
1077
+ - type: from_intent
1078
+ value: false
1079
+ intent: deny
1080
+ conditions:
1081
+ - active_loop: basic_form
1082
+ requested_slot: used_other_names
1083
+ ssn:
1084
+ type: text
1085
+ influence_conversation: true
1086
+ mappings:
1087
+ - type: from_text
1088
+ conditions:
1089
+ - active_loop: basic_form
1090
+ requested_slot: ssn
1091
+ used_other_ssn:
1092
+ type: bool
1093
+ influence_conversation: true
1094
+ mappings:
1095
+ - type: from_intent
1096
+ value: true
1097
+ intent: affirm
1098
+ conditions:
1099
+ - active_loop: basic_form
1100
+ requested_slot: used_other_ssn
1101
+ - type: from_intent
1102
+ value: false
1103
+ intent: deny
1104
+ conditions:
1105
+ - active_loop: basic_form
1106
+ requested_slot: used_other_ssn
1107
+ routing_number:
1108
+ type: text
1109
+ influence_conversation: true
1110
+ mappings:
1111
+ - type: from_text
1112
+ conditions:
1113
+ - active_loop: basic_form
1114
+ requested_slot: routing_number
1115
+ account_number:
1116
+ type: text
1117
+ influence_conversation: true
1118
+ mappings:
1119
+ - type: from_text
1120
+ conditions:
1121
+ - active_loop: basic_form
1122
+ requested_slot: account_number
1123
+ bank_account_for_deposit:
1124
+ type: bool
1125
+ influence_conversation: true
1126
+ mappings:
1127
+ - type: from_intent
1128
+ value: true
1129
+ intent: affirm
1130
+ conditions:
1131
+ - active_loop: basic_form
1132
+ requested_slot: bank_account_for_deposit
1133
+ - type: from_intent
1134
+ value: false
1135
+ intent: deny
1136
+ conditions:
1137
+ - active_loop: basic_form
1138
+ requested_slot: bank_account_for_deposit
1139
+
1140
+ able_to_work:
1141
+ type: bool
1142
+ influence_conversation: true
1143
+ mappings:
1144
+ - type: from_intent
1145
+ value: true
1146
+ intent: affirm
1147
+ conditions:
1148
+ - active_loop: basic_form
1149
+ requested_slot: able_to_work
1150
+ - type: from_intent
1151
+ value: false
1152
+ intent: deny
1153
+ conditions:
1154
+ - active_loop: basic_form
1155
+ requested_slot: able_to_work
1156
+ perform_usual_job_responsibilities:
1157
+ type: bool
1158
+ influence_conversation: true
1159
+ mappings:
1160
+ - type: from_intent
1161
+ value: true
1162
+ intent: affirm
1163
+ conditions:
1164
+ - active_loop: basic_form
1165
+ requested_slot: perform_usual_job_responsibilities
1166
+ - type: from_intent
1167
+ value: false
1168
+ intent: deny
1169
+ conditions:
1170
+ - active_loop: basic_form
1171
+ requested_slot: perform_usual_job_responsibilities
1172
+ condition_last_14_months:
1173
+ type: bool
1174
+ influence_conversation: true
1175
+ mappings:
1176
+ - type: from_intent
1177
+ value: true
1178
+ intent: affirm
1179
+ conditions:
1180
+ - active_loop: basic_form
1181
+ requested_slot: condition_last_14_months
1182
+ - type: from_intent
1183
+ value: false
1184
+ intent: deny
1185
+ conditions:
1186
+ - active_loop: basic_form
1187
+ requested_slot: condition_last_14_months
1188
+ condition_end_in_death:
1189
+ type: bool
1190
+ influence_conversation: true
1191
+ mappings:
1192
+ - type: from_intent
1193
+ value: true
1194
+ intent: affirm
1195
+ conditions:
1196
+ - active_loop: basic_form
1197
+ requested_slot: condition_end_in_death
1198
+ - type: from_intent
1199
+ value: false
1200
+ intent: deny
1201
+ conditions:
1202
+ - active_loop: basic_form
1203
+ requested_slot: condition_end_in_death
1204
+ condition_require_work_changes:
1205
+ type: bool
1206
+ influence_conversation: true
1207
+ mappings:
1208
+ - type: from_intent
1209
+ value: true
1210
+ intent: affirm
1211
+ conditions:
1212
+ - active_loop: basic_form
1213
+ requested_slot: condition_require_work_changes
1214
+ - type: from_intent
1215
+ value: false
1216
+ intent: deny
1217
+ conditions:
1218
+ - active_loop: basic_form
1219
+ requested_slot: condition_require_work_changes
1220
+ earned_more_than_1470_in_2024:
1221
+ type: bool
1222
+ influence_conversation: true
1223
+ mappings:
1224
+ - type: from_intent
1225
+ value: true
1226
+ intent: affirm
1227
+ conditions:
1228
+ - active_loop: basic_form
1229
+ requested_slot: earned_more_than_1470_in_2024
1230
+ - type: from_intent
1231
+ value: false
1232
+ intent: deny
1233
+ conditions:
1234
+ - active_loop: basic_form
1235
+ requested_slot: earned_more_than_1470_in_2024
1236
+ intend_to_work_in_2024:
1237
+ type: bool
1238
+ influence_conversation: true
1239
+ mappings:
1240
+ - type: from_intent
1241
+ value: true
1242
+ intent: affirm
1243
+ conditions:
1244
+ - active_loop: basic_form
1245
+ requested_slot: intend_to_work_in_2024
1246
+ - type: from_intent
1247
+ value: false
1248
+ intent: deny
1249
+ conditions:
1250
+ - active_loop: basic_form
1251
+ requested_slot: intend_to_work_in_2024
1252
+ received_money_from_employer:
1253
+ type: bool
1254
+ influence_conversation: true
1255
+ mappings:
1256
+ - type: from_intent
1257
+ value: true
1258
+ intent: affirm
1259
+ conditions:
1260
+ - active_loop: basic_form
1261
+ requested_slot: received_money_from_employer
1262
+ - type: from_intent
1263
+ value: false
1264
+ intent: deny
1265
+ conditions:
1266
+ - active_loop: basic_form
1267
+ requested_slot: received_money_from_employer
1268
+ expect_to_receive_money_from_employer:
1269
+ type: bool
1270
+ influence_conversation: true
1271
+ mappings:
1272
+ - type: from_intent
1273
+ value: true
1274
+ intent: affirm
1275
+ conditions:
1276
+ - active_loop: basic_form
1277
+ requested_slot: expect_to_receive_money_from_employer
1278
+ - type: from_intent
1279
+ value: false
1280
+ intent: deny
1281
+ conditions:
1282
+ - active_loop: basic_form
1283
+ requested_slot: expect_to_receive_money_from_employer
1284
+ school_name:
1285
+ type: text
1286
+ influence_conversation: true
1287
+ mappings:
1288
+ - type: from_text
1289
+ conditions:
1290
+ - active_loop: basic_form
1291
+ requested_slot: school_name
1292
+ school_city:
1293
+ type: text
1294
+ influence_conversation: true
1295
+ mappings:
1296
+ - type: from_text
1297
+ conditions:
1298
+ - active_loop: basic_form
1299
+ requested_slot: school_city
1300
+ school_state:
1301
+ type: text
1302
+ influence_conversation: true
1303
+ mappings:
1304
+ - type: from_text
1305
+ conditions:
1306
+ - active_loop: basic_form
1307
+ requested_slot: school_state
1308
+ school_country:
1309
+ type: text
1310
+ influence_conversation: true
1311
+ mappings:
1312
+ - type: from_text
1313
+ conditions:
1314
+ - active_loop: basic_form
1315
+ requested_slot: school_country
1316
+ special_education:
1317
+ type: bool
1318
+ influence_conversation: true
1319
+ mappings:
1320
+ - type: from_intent
1321
+ value: true
1322
+ intent: affirm
1323
+ conditions:
1324
+ - active_loop: basic_form
1325
+ requested_slot: special_education
1326
+ - type: from_intent
1327
+ value: false
1328
+ intent: deny
1329
+ conditions:
1330
+ - active_loop: basic_form
1331
+ requested_slot: special_education
1332
+ specialized_job_training:
1333
+ type: bool
1334
+ influence_conversation: true
1335
+ mappings:
1336
+ - type: from_intent
1337
+ value: true
1338
+ intent: affirm
1339
+ conditions:
1340
+ - active_loop: basic_form
1341
+ requested_slot: specialized_job_training
1342
+ - type: from_intent
1343
+ value: false
1344
+ intent: deny
1345
+ conditions:
1346
+ - active_loop: basic_form
1347
+ requested_slot: specialized_job_training
1348
+ company_name:
1349
+ type: text
1350
+ influence_conversation: true
1351
+ mappings:
1352
+ - type: from_text
1353
+ conditions:
1354
+ - active_loop: basic_form
1355
+ requested_slot: company_name
1356
+ business_type:
1357
+ type: text
1358
+ influence_conversation: true
1359
+ mappings:
1360
+ - type: from_text
1361
+ conditions:
1362
+ - active_loop: basic_form
1363
+ requested_slot: business_type
1364
+ end_date_last_worked:
1365
+ type: bool
1366
+ influence_conversation: true
1367
+ mappings:
1368
+ - type: from_intent
1369
+ value: true
1370
+ intent: affirm
1371
+ conditions:
1372
+ - active_loop: basic_form
1373
+ requested_slot: end_date_last_worked
1374
+ - type: from_intent
1375
+ value: false
1376
+ intent: deny
1377
+ conditions:
1378
+ - active_loop: basic_form
1379
+ requested_slot: end_date_last_worked
1380
+ job_title:
1381
+ type: text
1382
+ influence_conversation: true
1383
+ mappings:
1384
+ - type: from_text
1385
+ conditions:
1386
+ - active_loop: basic_form
1387
+ requested_slot: job_title
1388
+ pay_amount:
1389
+ type: text
1390
+ influence_conversation: true
1391
+ mappings:
1392
+ - type: from_text
1393
+ conditions:
1394
+ - active_loop: basic_form
1395
+ requested_slot: pay_amount
1396
+ lifting_ability:
1397
+ type: bool
1398
+ influence_conversation: true
1399
+ mappings:
1400
+ - type: from_intent
1401
+ value: true
1402
+ intent: affirm
1403
+ conditions:
1404
+ - active_loop: basic_form
1405
+ requested_slot: lifting_ability
1406
+ - type: from_intent
1407
+ value: false
1408
+ intent: deny
1409
+ conditions:
1410
+ - active_loop: basic_form
1411
+ requested_slot: lifting_ability
1412
+ supervised_others:
1413
+ type: bool
1414
+ influence_conversation: true
1415
+ mappings:
1416
+ - type: from_intent
1417
+ value: true
1418
+ intent: affirm
1419
+ conditions:
1420
+ - active_loop: basic_form
1421
+ requested_slot: supervised_others
1422
+ - type: from_intent
1423
+ value: false
1424
+ intent: deny
1425
+ conditions:
1426
+ - active_loop: basic_form
1427
+ requested_slot: supervised_others
1428
+ cared_for_children:
1429
+ type: bool
1430
+ influence_conversation: true
1431
+ mappings:
1432
+ - type: from_intent
1433
+ value: true
1434
+ intent: affirm
1435
+ conditions:
1436
+ - active_loop: basic_form
1437
+ requested_slot: cared_for_children
1438
+ - type: from_intent
1439
+ value: false
1440
+ intent: deny
1441
+ conditions:
1442
+ - active_loop: basic_form
1443
+ requested_slot: cared_for_children
1444
+ self_employed_last_15_years:
1445
+ type: bool
1446
+ influence_conversation: true
1447
+ mappings:
1448
+ - type: from_intent
1449
+ value: true
1450
+ intent: affirm
1451
+ conditions:
1452
+ - active_loop: basic_form
1453
+ requested_slot: self_employed_last_15_years
1454
+ - type: from_intent
1455
+ value: false
1456
+ intent: deny
1457
+ conditions:
1458
+ - active_loop: basic_form
1459
+ requested_slot: self_employed_last_15_years
1460
+ self_employed_2023:
1461
+ type: bool
1462
+ influence_conversation: true
1463
+ mappings:
1464
+ - type: from_intent
1465
+ value: true
1466
+ intent: affirm
1467
+ conditions:
1468
+ - active_loop: basic_form
1469
+ requested_slot: self_employed_2023
1470
+ - type: from_intent
1471
+ value: false
1472
+ intent: deny
1473
+ conditions:
1474
+ - active_loop: basic_form
1475
+ requested_slot: self_employed_2023
1476
+ profit_self_employed_2023:
1477
+ type: bool
1478
+ influence_conversation: true
1479
+ mappings:
1480
+ - type: from_intent
1481
+ value: true
1482
+ intent: affirm
1483
+ conditions:
1484
+ - active_loop: basic_form
1485
+ requested_slot: profit_self_employed_2023
1486
+ - type: from_intent
1487
+ value: false
1488
+ intent: deny
1489
+ conditions:
1490
+ - active_loop: basic_form
1491
+ requested_slot: profit_self_employed_2023
1492
+ self_employed_2024:
1493
+ type: bool
1494
+ influence_conversation: true
1495
+ mappings:
1496
+ - type: from_intent
1497
+ value: true
1498
+ intent: affirm
1499
+ conditions:
1500
+ - active_loop: basic_form
1501
+ requested_slot: self_employed_2024
1502
+ - type: from_intent
1503
+ value: false
1504
+ intent: deny
1505
+ conditions:
1506
+ - active_loop: basic_form
1507
+ requested_slot: self_employed_2024
1508
+ profit_self_employed_2024:
1509
+ type: bool
1510
+ influence_conversation: true
1511
+ mappings:
1512
+ - type: from_intent
1513
+ value: true
1514
+ intent: affirm
1515
+ conditions:
1516
+ - active_loop: basic_form
1517
+ requested_slot: profit_self_employed_2024
1518
+ - type: from_intent
1519
+ value: false
1520
+ intent: deny
1521
+ conditions:
1522
+ - active_loop: basic_form
1523
+ requested_slot: profit_self_employed_2024
1524
+ worked_outside_us:
1525
+ type: bool
1526
+ influence_conversation: true
1527
+ mappings:
1528
+ - type: from_intent
1529
+ value: true
1530
+ intent: affirm
1531
+ conditions:
1532
+ - active_loop: basic_form
1533
+ requested_slot: worked_outside_us
1534
+ - type: from_intent
1535
+ value: false
1536
+ intent: deny
1537
+ conditions:
1538
+ - active_loop: basic_form
1539
+ requested_slot: worked_outside_us
1540
+ worked_outside_us_2024:
1541
+ type: bool
1542
+ influence_conversation: true
1543
+ mappings:
1544
+ - type: from_intent
1545
+ value: true
1546
+ intent: affirm
1547
+ conditions:
1548
+ - active_loop: basic_form
1549
+ requested_slot: worked_outside_us_2024
1550
+ - type: from_intent
1551
+ value: false
1552
+ intent: deny
1553
+ conditions:
1554
+ - active_loop: basic_form
1555
+ requested_slot: worked_outside_us_2024
1556
+ illness_expected_duration:
1557
+ type: bool
1558
+ influence_conversation: true
1559
+ mappings:
1560
+ - type: from_intent
1561
+ value: true
1562
+ intent: affirm
1563
+ conditions:
1564
+ - active_loop: basic_form
1565
+ requested_slot: illness_expected_duration
1566
+ - type: from_intent
1567
+ value: false
1568
+ intent: deny
1569
+ conditions:
1570
+ - active_loop: basic_form
1571
+ requested_slot: illness_expected_duration
1572
+ worked_outside_2023:
1573
+ type: bool
1574
+ influence_conversation: true
1575
+ mappings:
1576
+ - type: from_intent
1577
+ value: true
1578
+ intent: affirm
1579
+ conditions:
1580
+ - active_loop: basic_form
1581
+ requested_slot: worked_outside_2023
1582
+ - type: from_intent
1583
+ value: false
1584
+ intent: deny
1585
+ conditions:
1586
+ - active_loop: basic_form
1587
+ requested_slot: worked_outside_2023
1588
+ earnings_subject_us_social_security:
1589
+ type: bool
1590
+ influence_conversation: true
1591
+ mappings:
1592
+ - type: from_intent
1593
+ value: true
1594
+ intent: affirm
1595
+ conditions:
1596
+ - active_loop: basic_form
1597
+ requested_slot: earnings_subject_us_social_security
1598
+ - type: from_intent
1599
+ value: false
1600
+ intent: deny
1601
+ conditions:
1602
+ - active_loop: basic_form
1603
+ requested_slot: earnings_subject_us_social_security
1604
+ eligible_foreign_social_security:
1605
+ type: bool
1606
+ influence_conversation: true
1607
+ mappings:
1608
+ - type: from_intent
1609
+ value: true
1610
+ intent: affirm
1611
+ conditions:
1612
+ - active_loop: basic_form
1613
+ requested_slot: eligible_foreign_social_security
1614
+ - type: from_intent
1615
+ value: false
1616
+ intent: deny
1617
+ conditions:
1618
+ - active_loop: basic_form
1619
+ requested_slot: eligible_foreign_social_security
1620
+ special_payments:
1621
+ type: bool
1622
+ influence_conversation: true
1623
+ mappings:
1624
+ - type: from_intent
1625
+ value: true
1626
+ intent: affirm
1627
+ conditions:
1628
+ - active_loop: basic_form
1629
+ requested_slot: special_payments
1630
+ - type: from_intent
1631
+ value: false
1632
+ intent: deny
1633
+ conditions:
1634
+ - active_loop: basic_form
1635
+ requested_slot: special_payments
1636
+ no_social_security_taxes:
1637
+ type: bool
1638
+ influence_conversation: true
1639
+ mappings:
1640
+ - type: from_intent
1641
+ value: true
1642
+ intent: affirm
1643
+ conditions:
1644
+ - active_loop: basic_form
1645
+ requested_slot: no_social_security_taxes
1646
+ - type: from_intent
1647
+ value: false
1648
+ intent: deny
1649
+ conditions:
1650
+ - active_loop: basic_form
1651
+ requested_slot: no_social_security_taxes
1652
+ spouse_receiving_pension:
1653
+ type: bool
1654
+ influence_conversation: true
1655
+ mappings:
1656
+ - type: from_intent
1657
+ value: true
1658
+ intent: affirm
1659
+ conditions:
1660
+ - active_loop: basic_form
1661
+ requested_slot: spouse_receiving_pension
1662
+ - type: from_intent
1663
+ value: false
1664
+ intent: deny
1665
+ conditions:
1666
+ - active_loop: basic_form
1667
+ requested_slot: spouse_receiving_pension
1668
+ future_pension_annuity:
1669
+ type: bool
1670
+ influence_conversation: true
1671
+ mappings:
1672
+ - type: from_intent
1673
+ value: true
1674
+ intent: affirm
1675
+ conditions:
1676
+ - active_loop: basic_form
1677
+ requested_slot: future_pension_annuity
1678
+ - type: from_intent
1679
+ value: false
1680
+ intent: deny
1681
+ conditions:
1682
+ - active_loop: basic_form
1683
+ requested_slot: future_pension_annuity
1684
+ government_pension_or_annuity:
1685
+ type: bool
1686
+ influence_conversation: true
1687
+ mappings:
1688
+ - type: from_intent
1689
+ value: true
1690
+ intent: affirm
1691
+ conditions:
1692
+ - active_loop: basic_form
1693
+ requested_slot: government_pension_or_annuity
1694
+ - type: from_intent
1695
+ value: false
1696
+ intent: deny
1697
+ conditions:
1698
+ - active_loop: basic_form
1699
+ requested_slot: government_pension_or_annuity
1700
+ lump_sum_payment:
1701
+ type: bool
1702
+ influence_conversation: true
1703
+ mappings:
1704
+ - type: from_intent
1705
+ value: true
1706
+ intent: affirm
1707
+ conditions:
1708
+ - active_loop: basic_form
1709
+ requested_slot: lump_sum_payment
1710
+ - type: from_intent
1711
+ value: false
1712
+ intent: deny
1713
+ conditions:
1714
+ - active_loop: basic_form
1715
+ requested_slot: lump_sum_payment
1716
+ vision_impairment:
1717
+ type: bool
1718
+ influence_conversation: true
1719
+ mappings:
1720
+ - type: from_intent
1721
+ value: true
1722
+ intent: affirm
1723
+ conditions:
1724
+ - active_loop: basic_form
1725
+ requested_slot: vision_impairment
1726
+ - type: from_intent
1727
+ value: false
1728
+ intent: deny
1729
+ conditions:
1730
+ - active_loop: basic_form
1731
+ requested_slot: vision_impairment
1732
+
1733
+ impaired_vision_with_glasses_contacts:
1734
+ type: bool
1735
+ influence_conversation: true
1736
+ mappings:
1737
+ - type: from_intent
1738
+ value: true
1739
+ intent: affirm
1740
+ conditions:
1741
+ - active_loop: basic_form
1742
+ requested_slot: impaired_vision_with_glasses_contacts
1743
+ - type: from_intent
1744
+ value: false
1745
+ intent: deny
1746
+ conditions:
1747
+ - active_loop: basic_form
1748
+ requested_slot: impaired_vision_with_glasses_contacts
1749
+
1750
+ partial_or_total_deafness:
1751
+ type: bool
1752
+ influence_conversation: true
1753
+ mappings:
1754
+ - type: from_intent
1755
+ value: true
1756
+ intent: affirm
1757
+ conditions:
1758
+ - active_loop: basic_form
1759
+ requested_slot: partial_or_total_deafness
1760
+ - type: from_intent
1761
+ value: false
1762
+ intent: deny
1763
+ conditions:
1764
+ - active_loop: basic_form
1765
+ requested_slot: partial_or_total_deafness
1766
+
1767
+ use_hearing_aids:
1768
+ type: bool
1769
+ influence_conversation: true
1770
+ mappings:
1771
+ - type: from_intent
1772
+ value: true
1773
+ intent: affirm
1774
+ conditions:
1775
+ - active_loop: basic_form
1776
+ requested_slot: use_hearing_aids
1777
+ - type: from_intent
1778
+ value: false
1779
+ intent: deny
1780
+ conditions:
1781
+ - active_loop: basic_form
1782
+ requested_slot: use_hearing_aids
1783
+
1784
+ history_of_seizures:
1785
+ type: bool
1786
+ influence_conversation: true
1787
+ mappings:
1788
+ - type: from_intent
1789
+ value: true
1790
+ intent: affirm
1791
+ conditions:
1792
+ - active_loop: basic_form
1793
+ requested_slot: history_of_seizures
1794
+ - type: from_intent
1795
+ value: false
1796
+ intent: deny
1797
+ conditions:
1798
+ - active_loop: basic_form
1799
+ requested_slot: history_of_seizures
1800
+
1801
+ mental_illness_treatment:
1802
+ type: bool
1803
+ influence_conversation: true
1804
+ mappings:
1805
+ - type: from_intent
1806
+ value: true
1807
+ intent: affirm
1808
+ conditions:
1809
+ - active_loop: basic_form
1810
+ requested_slot: mental_illness_treatment
1811
+ - type: from_intent
1812
+ value: false
1813
+ intent: deny
1814
+ conditions:
1815
+ - active_loop: basic_form
1816
+ requested_slot: mental_illness_treatment
1817
+
1818
+ physical_illness_treatment:
1819
+ type: bool
1820
+ influence_conversation: true
1821
+ mappings:
1822
+ - type: from_intent
1823
+ value: true
1824
+ intent: affirm
1825
+ conditions:
1826
+ - active_loop: basic_form
1827
+ requested_slot: physical_illness_treatment
1828
+ - type: from_intent
1829
+ value: false
1830
+ intent: deny
1831
+ conditions:
1832
+ - active_loop: basic_form
1833
+ requested_slot: physical_illness_treatment
1834
+
1835
+ emergency_room_visit:
1836
+ type: bool
1837
+ influence_conversation: true
1838
+ mappings:
1839
+ - type: from_intent
1840
+ value: true
1841
+ intent: affirm
1842
+ conditions:
1843
+ - active_loop: basic_form
1844
+ requested_slot: emergency_room_visit
1845
+ - type: from_intent
1846
+ value: false
1847
+ intent: deny
1848
+ conditions:
1849
+ - active_loop: basic_form
1850
+ requested_slot: emergency_room_visit
1851
+
1852
+ medical_tests_or_medications:
1853
+ type: bool
1854
+ influence_conversation: true
1855
+ mappings:
1856
+ - type: from_intent
1857
+ value: true
1858
+ intent: affirm
1859
+ conditions:
1860
+ - active_loop: basic_form
1861
+ requested_slot: medical_tests_or_medications
1862
+ - type: from_intent
1863
+ value: false
1864
+ intent: deny
1865
+ conditions:
1866
+ - active_loop: basic_form
1867
+ requested_slot: medical_tests_or_medications
1868
+
1869
+ mental_health_treatment:
1870
+ type: bool
1871
+ influence_conversation: true
1872
+ mappings:
1873
+ - type: from_intent
1874
+ value: true
1875
+ intent: affirm
1876
+ conditions:
1877
+ - active_loop: basic_form
1878
+ requested_slot: mental_health_treatment
1879
+ - type: from_intent
1880
+ value: false
1881
+ intent: deny
1882
+ conditions:
1883
+ - active_loop: basic_form
1884
+ requested_slot: mental_health_treatment
1885
+
1886
+ inpatient_stays:
1887
+ type: bool
1888
+ influence_conversation: true
1889
+ mappings:
1890
+ - type: from_intent
1891
+ value: true
1892
+ intent: affirm
1893
+ conditions:
1894
+ - active_loop: basic_form
1895
+ requested_slot: inpatient_stays
1896
+ - type: from_intent
1897
+ value: false
1898
+ intent: deny
1899
+ conditions:
1900
+ - active_loop: basic_form
1901
+ requested_slot: inpatient_stays
1902
+
1903
+ outpatient_visits:
1904
+ type: bool
1905
+ influence_conversation: true
1906
+ mappings:
1907
+ - type: from_intent
1908
+ value: true
1909
+ intent: affirm
1910
+ conditions:
1911
+ - active_loop: basic_form
1912
+ requested_slot: outpatient_visits
1913
+ - type: from_intent
1914
+ value: false
1915
+ intent: deny
1916
+ conditions:
1917
+ - active_loop: basic_form
1918
+ requested_slot: outpatient_visits
1919
+ had_surgeries:
1920
+ type: bool
1921
+ influence_conversation: true
1922
+ mappings:
1923
+ - type: from_intent
1924
+ value: true
1925
+ intent: affirm
1926
+ conditions:
1927
+ - active_loop: basic_form
1928
+ requested_slot: had_surgeries
1929
+ - type: from_intent
1930
+ value: false
1931
+ intent: deny
1932
+ conditions:
1933
+ - active_loop: basic_form
1934
+ requested_slot: had_surgeries
1935
+
1936
+ had_physical_therapy:
1937
+ type: bool
1938
+ influence_conversation: true
1939
+ mappings:
1940
+ - type: from_intent
1941
+ value: true
1942
+ intent: affirm
1943
+ conditions:
1944
+ - active_loop: basic_form
1945
+ requested_slot: had_physical_therapy
1946
+ - type: from_intent
1947
+ value: false
1948
+ intent: deny
1949
+ conditions:
1950
+ - active_loop: basic_form
1951
+ requested_slot: had_physical_therapy
1952
+ medical_records:
1953
+ type: bool
1954
+ influence_conversation: true
1955
+ mappings:
1956
+ - type: from_intent
1957
+ value: true
1958
+ intent: affirm
1959
+ conditions:
1960
+ - active_loop: basic_form
1961
+ requested_slot: medical_records
1962
+ - type: from_intent
1963
+ value: false
1964
+ intent: deny
1965
+ conditions:
1966
+ - active_loop: basic_form
1967
+ requested_slot: medical_records
1968
+ doctor_in_prison:
1969
+ type: bool
1970
+ influence_conversation: true
1971
+ mappings:
1972
+ - type: from_intent
1973
+ value: true
1974
+ intent: affirm
1975
+ conditions:
1976
+ - active_loop: basic_form
1977
+ requested_slot: doctor_in_prison
1978
+ - type: from_intent
1979
+ value: false
1980
+ intent: deny
1981
+ conditions:
1982
+ - active_loop: basic_form
1983
+ requested_slot: doctor_in_prison
1984
+ public_welfare:
1985
+ type: bool
1986
+ influence_conversation: true
1987
+ mappings:
1988
+ - type: from_intent
1989
+ value: true
1990
+ intent: affirm
1991
+ conditions:
1992
+ - active_loop: basic_form
1993
+ requested_slot: public_welfare
1994
+ - type: from_intent
1995
+ value: false
1996
+ intent: deny
1997
+ conditions:
1998
+ - active_loop: basic_form
1999
+ requested_slot: public_welfare
2000
+ attorney_records:
2001
+ type: bool
2002
+ influence_conversation: true
2003
+ mappings:
2004
+ - type: from_intent
2005
+ value: true
2006
+ intent: affirm
2007
+ conditions:
2008
+ - active_loop: basic_form
2009
+ requested_slot: attorney_records
2010
+ - type: from_intent
2011
+ value: false
2012
+ intent: deny
2013
+ conditions:
2014
+ - active_loop: basic_form
2015
+ requested_slot: attorney_records
2016
+ disability_insurance:
2017
+ type: bool
2018
+ influence_conversation: true
2019
+ mappings:
2020
+ - type: from_intent
2021
+ value: true
2022
+ intent: affirm
2023
+ conditions:
2024
+ - active_loop: basic_form
2025
+ requested_slot: disability_insurance
2026
+ - type: from_intent
2027
+ value: false
2028
+ intent: deny
2029
+ conditions:
2030
+ - active_loop: basic_form
2031
+ requested_slot: disability_insurance
2032
+ vocational_rehab:
2033
+ type: bool
2034
+ influence_conversation: true
2035
+ mappings:
2036
+ - type: from_intent
2037
+ value: true
2038
+ intent: affirm
2039
+ conditions:
2040
+ - active_loop: basic_form
2041
+ requested_slot: vocational_rehab
2042
+ - type: from_intent
2043
+ value: false
2044
+ intent: deny
2045
+ conditions:
2046
+ - active_loop: basic_form
2047
+ requested_slot: vocational_rehab
2048
+ workers_compensation:
2049
+ type: bool
2050
+ influence_conversation: true
2051
+ mappings:
2052
+ - type: from_intent
2053
+ value: true
2054
+ intent: affirm
2055
+ conditions:
2056
+ - active_loop: basic_form
2057
+ requested_slot: workers_compensation
2058
+ - type: from_intent
2059
+ value: false
2060
+ intent: deny
2061
+ conditions:
2062
+ - active_loop: basic_form
2063
+ requested_slot: workers_compensation
2064
+ other_records:
2065
+ type: bool
2066
+ influence_conversation: true
2067
+ mappings:
2068
+ - type: from_intent
2069
+ value: true
2070
+ intent: affirm
2071
+ conditions:
2072
+ - active_loop: basic_form
2073
+ requested_slot: other_records
2074
+ - type: from_intent
2075
+ value: false
2076
+ intent: deny
2077
+ conditions:
2078
+ - active_loop: basic_form
2079
+ requested_slot: other_records
2080
+ medical_tests_completed:
2081
+ type: bool
2082
+ influence_conversation: true
2083
+ mappings:
2084
+ - type: from_intent
2085
+ value: true
2086
+ intent: affirm
2087
+ conditions:
2088
+ - active_loop: basic_form
2089
+ requested_slot: medical_tests_completed
2090
+ - type: from_intent
2091
+ value: false
2092
+ intent: deny
2093
+ conditions:
2094
+ - active_loop: basic_form
2095
+ requested_slot: medical_tests_completed
2096
+ taking_medications:
2097
+ type: bool
2098
+ influence_conversation: true
2099
+ mappings:
2100
+ - type: from_intent
2101
+ value: true
2102
+ intent: affirm
2103
+ conditions:
2104
+ - active_loop: basic_form
2105
+ requested_slot: taking_medications
2106
+ - type: from_intent
2107
+ value: false
2108
+ intent: deny
2109
+ conditions:
2110
+ - active_loop: basic_form
2111
+ requested_slot: taking_medications
2112
+
2113
+
2114
+ forms:
2115
+ form_rasa:
2116
+ required_slots:
2117
+ - data
2118
+ basic_form:
2119
+ required_slots:
2120
+ - first_name
2121
+ - middle_name
2122
+ - last_name
2123
+ - email
2124
+ - us_number
2125
+ - phone
2126
+ - confirm_location
2127
+ - confirm_mail_address
2128
+ - preferred_language
2129
+ - able_to_read_write
2130
+ - born_in_us
2131
+ - become_citizen_us
2132
+ - legal_resident_us
2133
+ - permanent_resident_number
2134
+ - serve_military
2135
+ - military_benefit
2136
+ - medicare_benefit
2137
+ - social_security_benefit
2138
+ - supplemental_security_income
2139
+ - current_spouse_first_name
2140
+ - current_spouse_last_name
2141
+ - current_spouse_social_security_number
2142
+ - prior_marriages
2143
+ - prior_marriages_duration
2144
+ - prior_marriages_death
2145
+ - have_children
2146
+ - parent_support
2147
+ - used_other_names
2148
+ - ssn
2149
+ - used_other_ssn
2150
+ - bank_account_for_deposit
2151
+ - routing_number
2152
+ - account_number
2153
+ - able_to_work
2154
+ - perform_usual_job_responsibilities
2155
+ - condition_last_14_months
2156
+ - condition_end_in_death
2157
+ - condition_require_work_changes
2158
+ - earned_more_than_1470_in_2024
2159
+ - intend_to_work_in_2024
2160
+ - received_money_from_employer
2161
+ - expect_to_receive_money_from_employer
2162
+ - school_name
2163
+ - school_city
2164
+ - school_state
2165
+ - school_country
2166
+ - special_education
2167
+ - specialized_job_training
2168
+ - company_name
2169
+ - business_type
2170
+ - end_date_last_worked
2171
+ - job_title
2172
+ - pay_amount
2173
+ - lifting_ability
2174
+ - supervised_others
2175
+ - cared_for_children
2176
+ - self_employed_last_15_years
2177
+ - self_employed_2023
2178
+ - profit_self_employed_2023
2179
+ - self_employed_2024
2180
+ - profit_self_employed_2024
2181
+ - worked_outside_us
2182
+ - worked_outside_us_2024
2183
+ - illness_expected_duration
2184
+ - worked_outside_2023
2185
+ - earnings_subject_us_social_security
2186
+ - eligible_foreign_social_security
2187
+ - special_payments
2188
+ - no_social_security_taxes
2189
+ - spouse_receiving_pension
2190
+ - future_pension_annuity
2191
+ - government_pension_or_annuity
2192
+ - lump_sum_payment
2193
+ - vision_impairment
2194
+ - impaired_vision_with_glasses_contacts
2195
+ - partial_or_total_deafness
2196
+ - use_hearing_aids
2197
+ - history_of_seizures
2198
+ - mental_illness_treatment
2199
+ - physical_illness_treatment
2200
+ - emergency_room_visit
2201
+ - medical_tests_or_medications
2202
+ - mental_health_treatment
2203
+ - inpatient_stays
2204
+ - outpatient_visits
2205
+ - had_surgeries
2206
+ - had_physical_therapy
2207
+ - medical_records
2208
+ - doctor_in_prison
2209
+ - public_welfare
2210
+ - attorney_records
2211
+ - disability_insurance
2212
+ - vocational_rehab
2213
+ - workers_compensation
2214
+ - other_records
2215
+ - medical_tests_completed
2216
+ - taking_medications
2217
+
2218
+
2219
+
2220
+ entities:
2221
+ - phone
2222
+
2223
+ session_config:
2224
+ carry_over_slots_to_new_session: true
2225
+
2226
+
2227
+
2228
+
2229
+
2230
+
2231
+
2232
+ # rasa run --enable-api --cors "*"
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://localhost: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
models/20240604-104322-massive-agent.tar.gz ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:da7b17bb5818eac94fcba5cc545e1a902fa05e1bc26f7328849c96ea6017dc97
3
+ size 20146412
requirements.txt ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ rasa
2
+ langchain
3
+ langchain_groq
4
+ langchain_community
5
+ langchain_openai
tests/test_stories.yml ADDED
@@ -0,0 +1,91 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### This file contains tests to evaluate that your bot behaves as expected.
2
+ #### If you want to learn more, please see the docs: https://rasa.com/docs/rasa/testing-your-assistant
3
+
4
+ stories:
5
+ - story: happy path 1
6
+ steps:
7
+ - user: |
8
+ hello there!
9
+ intent: greet
10
+ - action: utter_greet
11
+ - user: |
12
+ amazing
13
+ intent: mood_great
14
+ - action: utter_happy
15
+
16
+ - story: happy path 2
17
+ steps:
18
+ - user: |
19
+ hello there!
20
+ intent: greet
21
+ - action: utter_greet
22
+ - user: |
23
+ amazing
24
+ intent: mood_great
25
+ - action: utter_happy
26
+ - user: |
27
+ bye-bye!
28
+ intent: goodbye
29
+ - action: utter_goodbye
30
+
31
+ - story: sad path 1
32
+ steps:
33
+ - user: |
34
+ hello
35
+ intent: greet
36
+ - action: utter_greet
37
+ - user: |
38
+ not good
39
+ intent: mood_unhappy
40
+ - action: utter_cheer_up
41
+ - action: utter_did_that_help
42
+ - user: |
43
+ yes
44
+ intent: affirm
45
+ - action: utter_happy
46
+
47
+ - story: sad path 2
48
+ steps:
49
+ - user: |
50
+ hello
51
+ intent: greet
52
+ - action: utter_greet
53
+ - user: |
54
+ not good
55
+ intent: mood_unhappy
56
+ - action: utter_cheer_up
57
+ - action: utter_did_that_help
58
+ - user: |
59
+ not really
60
+ intent: deny
61
+ - action: utter_goodbye
62
+
63
+ - story: sad path 3
64
+ steps:
65
+ - user: |
66
+ hi
67
+ intent: greet
68
+ - action: utter_greet
69
+ - user: |
70
+ very terrible
71
+ intent: mood_unhappy
72
+ - action: utter_cheer_up
73
+ - action: utter_did_that_help
74
+ - user: |
75
+ no
76
+ intent: deny
77
+ - action: utter_goodbye
78
+
79
+ - story: say goodbye
80
+ steps:
81
+ - user: |
82
+ bye-bye!
83
+ intent: goodbye
84
+ - action: utter_goodbye
85
+
86
+ - story: bot challenge
87
+ steps:
88
+ - user: |
89
+ are you a bot?
90
+ intent: bot_challenge
91
+ - action: utter_iamabot