rasa-pro 3.14.0.dev3__py3-none-any.whl → 3.14.0.dev5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of rasa-pro might be problematic. Click here for more details.

Files changed (437) hide show
  1. rasa/api.py +0 -5
  2. rasa/builder/README.md +120 -0
  3. rasa/builder/auth.py +176 -0
  4. rasa/builder/config.py +115 -0
  5. rasa/builder/copilot/constants.py +25 -0
  6. rasa/builder/copilot/copilot.py +372 -0
  7. rasa/builder/copilot/copilot_response_handler.py +487 -0
  8. rasa/builder/copilot/copilot_templated_message_provider.py +58 -0
  9. rasa/builder/copilot/exceptions.py +20 -0
  10. rasa/builder/copilot/models.py +431 -0
  11. rasa/builder/copilot/prompts/copilot_system_prompt.jinja2 +726 -0
  12. rasa/builder/copilot/telemetry.py +195 -0
  13. rasa/builder/copilot/templated_messages/copilot_internal_messages_templates.yml +16 -0
  14. rasa/builder/copilot/templated_messages/copilot_templated_responses.yml +26 -0
  15. rasa/builder/document_retrieval/constants.py +15 -0
  16. rasa/builder/document_retrieval/inkeep-rag-response-schema.json +64 -0
  17. rasa/builder/document_retrieval/inkeep_document_retrieval.py +238 -0
  18. rasa/builder/document_retrieval/models.py +62 -0
  19. rasa/builder/download.py +140 -0
  20. rasa/builder/exceptions.py +55 -0
  21. rasa/builder/guardrails/__init__.py +1 -0
  22. rasa/builder/guardrails/constants.py +3 -0
  23. rasa/builder/guardrails/exceptions.py +4 -0
  24. rasa/builder/guardrails/lakera.py +206 -0
  25. rasa/builder/guardrails/models.py +199 -0
  26. rasa/builder/guardrails/utils.py +305 -0
  27. rasa/builder/job_manager.py +87 -0
  28. rasa/builder/jobs.py +234 -0
  29. rasa/builder/llm_service.py +246 -0
  30. rasa/builder/logging_utils.py +209 -0
  31. rasa/builder/main.py +174 -0
  32. rasa/builder/models.py +197 -0
  33. rasa/builder/project_generator.py +450 -0
  34. rasa/builder/project_info.py +72 -0
  35. rasa/builder/scrape_rasa_docs.py +97 -0
  36. rasa/builder/service.py +1142 -0
  37. rasa/builder/shared/tracker_context.py +212 -0
  38. rasa/builder/skill_to_bot_prompt.jinja2 +164 -0
  39. rasa/builder/training_service.py +132 -0
  40. rasa/builder/validation_service.py +93 -0
  41. rasa/cli/arguments/default_arguments.py +0 -12
  42. rasa/cli/arguments/run.py +0 -2
  43. rasa/cli/dialogue_understanding_test.py +0 -4
  44. rasa/cli/e2e_test.py +0 -4
  45. rasa/cli/inspect.py +0 -3
  46. rasa/cli/llm_fine_tuning.py +0 -5
  47. rasa/cli/project_templates/basic/actions/action_api.py +15 -0
  48. rasa/cli/project_templates/basic/actions/action_human_handoff.py +44 -0
  49. rasa/cli/project_templates/basic/config.yml +23 -0
  50. rasa/cli/project_templates/basic/credentials.yml +34 -0
  51. rasa/cli/project_templates/basic/data/general/feedback.yml +20 -0
  52. rasa/cli/project_templates/basic/data/general/goodbye.yml +6 -0
  53. rasa/cli/project_templates/basic/data/general/hello.yml +7 -0
  54. rasa/cli/project_templates/basic/data/general/help.yml +6 -0
  55. rasa/cli/project_templates/basic/data/general/human_handoff.yml +16 -0
  56. rasa/cli/project_templates/basic/data/general/welcome.yml +9 -0
  57. rasa/cli/project_templates/basic/data/system/pattern_completed.yml +7 -0
  58. rasa/cli/project_templates/basic/data/system/pattern_correction.yml +7 -0
  59. rasa/cli/project_templates/basic/data/system/pattern_search.yml +8 -0
  60. rasa/cli/project_templates/basic/data/system/pattern_session_start.yml +8 -0
  61. rasa/cli/project_templates/basic/docs/rasa_assistant_qa.txt +65 -0
  62. rasa/cli/project_templates/basic/docs/template.txt +7 -0
  63. rasa/cli/project_templates/basic/domain/general/assistant_details.yml +12 -0
  64. rasa/cli/project_templates/basic/domain/general/bot_identity.yml +5 -0
  65. rasa/cli/project_templates/basic/domain/general/cannot_handle.yml +5 -0
  66. rasa/cli/project_templates/basic/domain/general/feedback.yml +28 -0
  67. rasa/cli/project_templates/basic/domain/general/goodbye.yml +7 -0
  68. rasa/cli/project_templates/basic/domain/general/help.yml +5 -0
  69. rasa/cli/project_templates/basic/domain/general/human_handoff_domain.yml +35 -0
  70. rasa/cli/project_templates/basic/domain/general/utils.yml +13 -0
  71. rasa/cli/project_templates/basic/domain/general/welcome.yml +7 -0
  72. rasa/cli/project_templates/basic/endpoints.yml +73 -0
  73. rasa/cli/project_templates/basic/prompts/rephraser_demo_personality_prompt.jinja2 +19 -0
  74. rasa/cli/project_templates/finance/actions/__init__.py +46 -0
  75. rasa/cli/project_templates/finance/actions/accounts/action_ask_account.py +47 -0
  76. rasa/cli/project_templates/finance/actions/accounts/action_check_balance.py +40 -0
  77. rasa/cli/project_templates/finance/actions/action_session_start.py +74 -0
  78. rasa/cli/project_templates/finance/actions/cards/action_ask_card.py +48 -0
  79. rasa/cli/project_templates/finance/actions/cards/action_check_card_existence.py +36 -0
  80. rasa/cli/project_templates/finance/actions/cards/action_update_card_status.py +54 -0
  81. rasa/cli/project_templates/finance/actions/database.py +277 -0
  82. rasa/cli/project_templates/finance/actions/transfers/__init__.py +0 -0
  83. rasa/cli/project_templates/finance/actions/transfers/action_add_payee.py +52 -0
  84. rasa/cli/project_templates/finance/actions/transfers/action_ask_account_from.py +51 -0
  85. rasa/cli/project_templates/finance/actions/transfers/action_check_payee_existence.py +40 -0
  86. rasa/cli/project_templates/finance/actions/transfers/action_check_sufficient_funds.py +40 -0
  87. rasa/cli/project_templates/finance/actions/transfers/action_list_payees.py +46 -0
  88. rasa/cli/project_templates/finance/actions/transfers/action_process_immediate_payment.py +18 -0
  89. rasa/cli/project_templates/finance/actions/transfers/action_remove_payee.py +49 -0
  90. rasa/cli/project_templates/finance/actions/transfers/action_schedule_payment.py +19 -0
  91. rasa/cli/project_templates/finance/actions/transfers/action_validate_payment_date.py +36 -0
  92. rasa/cli/project_templates/finance/config.yml +21 -0
  93. rasa/cli/project_templates/finance/credentials.yml +32 -0
  94. rasa/cli/project_templates/finance/csvs/accounts.csv +8 -0
  95. rasa/cli/project_templates/finance/csvs/advisors.csv +7 -0
  96. rasa/cli/project_templates/finance/csvs/appointments.csv +211 -0
  97. rasa/cli/project_templates/finance/csvs/branches.csv +10 -0
  98. rasa/cli/project_templates/finance/csvs/cards.csv +11 -0
  99. rasa/cli/project_templates/finance/csvs/payees.csv +11 -0
  100. rasa/cli/project_templates/finance/csvs/transactions.csv +71 -0
  101. rasa/cli/project_templates/finance/csvs/users.csv +4 -0
  102. rasa/cli/project_templates/finance/data/accounts/check_balance.yml +10 -0
  103. rasa/cli/project_templates/finance/data/cards/block_card.yml +66 -0
  104. rasa/cli/project_templates/finance/data/cards/select_card.yml +12 -0
  105. rasa/cli/project_templates/finance/data/general/bot_identity.yml +6 -0
  106. rasa/cli/project_templates/finance/data/general/feedback.yml +20 -0
  107. rasa/cli/project_templates/finance/data/general/goodbye.yml +6 -0
  108. rasa/cli/project_templates/finance/data/general/hello.yml +7 -0
  109. rasa/cli/project_templates/finance/data/general/help.yml +9 -0
  110. rasa/cli/project_templates/finance/data/general/human_handoff.yml +16 -0
  111. rasa/cli/project_templates/finance/data/general/welcome.yml +9 -0
  112. rasa/cli/project_templates/finance/data/system/patterns/pattern_chitchat.yml +5 -0
  113. rasa/cli/project_templates/finance/data/system/patterns/pattern_completed.yml +7 -0
  114. rasa/cli/project_templates/finance/data/system/patterns/pattern_correction.yml +7 -0
  115. rasa/cli/project_templates/finance/data/system/patterns/pattern_search.yml +8 -0
  116. rasa/cli/project_templates/finance/data/system/patterns/pattern_session_start.yml +8 -0
  117. rasa/cli/project_templates/finance/data/system/source/accounts.json +51 -0
  118. rasa/cli/project_templates/finance/data/system/source/advisors.json +44 -0
  119. rasa/cli/project_templates/finance/data/system/source/appointments.json +1474 -0
  120. rasa/cli/project_templates/finance/data/system/source/branches.json +47 -0
  121. rasa/cli/project_templates/finance/data/system/source/cards.json +72 -0
  122. rasa/cli/project_templates/finance/data/system/source/payees.json +74 -0
  123. rasa/cli/project_templates/finance/data/system/source/transactions.json +492 -0
  124. rasa/cli/project_templates/finance/data/system/source/users.json +29 -0
  125. rasa/cli/project_templates/finance/data/transfers/add_payee.yml +29 -0
  126. rasa/cli/project_templates/finance/data/transfers/list_payees.yml +5 -0
  127. rasa/cli/project_templates/finance/data/transfers/remove_payee.yml +21 -0
  128. rasa/cli/project_templates/finance/data/transfers/transfer_money.yml +67 -0
  129. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/consequences_of_blocking_card.txt +8 -0
  130. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/reasons_to_block_card.txt +8 -0
  131. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/recovering_from_card_fraud.txt +8 -0
  132. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/tips_for_card_security.txt +8 -0
  133. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/block_card/what_to_do_if_card_is_lost.txt +8 -0
  134. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/account_balance_security.txt +7 -0
  135. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/common_balance_inquiries.txt +8 -0
  136. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/methods_to_check_balance.txt +8 -0
  137. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/understanding_balance_updates.txt +8 -0
  138. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/check_balance/what_to_do_if_balance_is_incorrect.txt +8 -0
  139. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/benefits_of_authorised_payees.txt +8 -0
  140. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/common_issues_with_payees.txt +8 -0
  141. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/general_payee_information.txt +8 -0
  142. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/payee_management_tips.txt +8 -0
  143. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/manage_payees/understanding_payee_types.txt +8 -0
  144. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/common_transfer_errors.txt +8 -0
  145. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/fees_for_transfers.txt +8 -0
  146. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/general_transfer_information.txt +8 -0
  147. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/security_tips_for_transfers.txt +8 -0
  148. rasa/cli/project_templates/finance/docs/bank_of_rasa_faq/transfer_money/transfer_processing_times.txt +8 -0
  149. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part1.txt +50 -0
  150. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part10.txt +50 -0
  151. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part11.txt +48 -0
  152. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part12.txt +50 -0
  153. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part13.txt +50 -0
  154. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part14.txt +47 -0
  155. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part15.txt +50 -0
  156. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part16.txt +50 -0
  157. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part17.txt +47 -0
  158. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part18.txt +50 -0
  159. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part19.txt +50 -0
  160. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part2.txt +50 -0
  161. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part20.txt +47 -0
  162. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part21.txt +50 -0
  163. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part22.txt +50 -0
  164. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part23.txt +47 -0
  165. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part24.txt +50 -0
  166. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part25.txt +50 -0
  167. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part26.txt +47 -0
  168. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part27.txt +50 -0
  169. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part28.txt +50 -0
  170. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part29.txt +47 -0
  171. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part3.txt +47 -0
  172. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part30.txt +50 -0
  173. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part31.txt +50 -0
  174. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part32.txt +47 -0
  175. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part33.txt +50 -0
  176. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part34.txt +50 -0
  177. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part35.txt +47 -0
  178. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part36.txt +50 -0
  179. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part37.txt +50 -0
  180. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part38.txt +47 -0
  181. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part39.txt +50 -0
  182. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part4.txt +50 -0
  183. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part40.txt +50 -0
  184. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part41.txt +47 -0
  185. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part42.txt +50 -0
  186. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part43.txt +50 -0
  187. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part44.txt +47 -0
  188. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part45.txt +50 -0
  189. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part46.txt +50 -0
  190. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part47.txt +47 -0
  191. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part48.txt +50 -0
  192. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part49.txt +50 -0
  193. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part5.txt +50 -0
  194. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part50.txt +47 -0
  195. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part51.txt +50 -0
  196. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part52.txt +50 -0
  197. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part53.txt +47 -0
  198. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part54.txt +50 -0
  199. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part55.txt +50 -0
  200. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part56.txt +47 -0
  201. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part57.txt +50 -0
  202. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part58.txt +50 -0
  203. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part59.txt +47 -0
  204. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part6.txt +47 -0
  205. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part60.txt +50 -0
  206. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part61.txt +50 -0
  207. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part7.txt +50 -0
  208. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part8.txt +50 -0
  209. rasa/cli/project_templates/finance/docs/huggingface_alpaca_dataset/questions_part9.txt +47 -0
  210. rasa/cli/project_templates/finance/domain/accounts/check_balance.yml +11 -0
  211. rasa/cli/project_templates/finance/domain/cards/block_card.yml +101 -0
  212. rasa/cli/project_templates/finance/domain/cards/select_card.yml +12 -0
  213. rasa/cli/project_templates/finance/domain/general/assistant_details.yml +12 -0
  214. rasa/cli/project_templates/finance/domain/general/bot_identity.yml +5 -0
  215. rasa/cli/project_templates/finance/domain/general/cannot_handle.yml +5 -0
  216. rasa/cli/project_templates/finance/domain/general/defaults.yml +24 -0
  217. rasa/cli/project_templates/finance/domain/general/feedback.yml +28 -0
  218. rasa/cli/project_templates/finance/domain/general/goodbye.yml +7 -0
  219. rasa/cli/project_templates/finance/domain/general/help.yml +5 -0
  220. rasa/cli/project_templates/finance/domain/general/human_handoff.yml +30 -0
  221. rasa/cli/project_templates/finance/domain/general/utils.yml +13 -0
  222. rasa/cli/project_templates/finance/domain/general/welcome.yml +8 -0
  223. rasa/cli/project_templates/finance/domain/transfers/add_payee.yml +47 -0
  224. rasa/cli/project_templates/finance/domain/transfers/list_payees.yml +4 -0
  225. rasa/cli/project_templates/finance/domain/transfers/remove_payee.yml +16 -0
  226. rasa/cli/project_templates/finance/domain/transfers/transfer_money.yml +79 -0
  227. rasa/cli/project_templates/finance/endpoints.yml +63 -0
  228. rasa/cli/project_templates/finance/prompts/rephraser_demo_personality_prompt.jinja2 +19 -0
  229. rasa/cli/project_templates/telco/actions/__init__.py +0 -0
  230. rasa/cli/project_templates/telco/actions/actions_billing.py +204 -0
  231. rasa/cli/project_templates/telco/actions/actions_get_data_from_db.py +48 -0
  232. rasa/cli/project_templates/telco/actions/actions_run_diagnostics.py +28 -0
  233. rasa/cli/project_templates/telco/actions/actions_session_start.py +18 -0
  234. rasa/cli/project_templates/telco/config.yml +25 -0
  235. rasa/cli/project_templates/telco/credentials.yml +33 -0
  236. rasa/cli/project_templates/telco/csvs/billing.csv +10 -0
  237. rasa/cli/project_templates/telco/csvs/customers.csv +5 -0
  238. rasa/cli/project_templates/telco/data/flows/flow_global.yml +5 -0
  239. rasa/cli/project_templates/telco/data/flows/flow_reboot_router.yml +8 -0
  240. rasa/cli/project_templates/telco/data/flows/flow_reset_router.yml +7 -0
  241. rasa/cli/project_templates/telco/data/flows/flow_solve_internet_issue.yml +73 -0
  242. rasa/cli/project_templates/telco/data/flows/flow_undertand_bill.yml +45 -0
  243. rasa/cli/project_templates/telco/data/patterns/pattern_completed.yml +7 -0
  244. rasa/cli/project_templates/telco/data/patterns/pattern_human_handoff.yml +6 -0
  245. rasa/cli/project_templates/telco/data/patterns/pattern_search.yml +7 -0
  246. rasa/cli/project_templates/telco/data/patterns/pattern_session_start.yml +9 -0
  247. rasa/cli/project_templates/telco/docs/reset_vs_rboot_router.txt +1 -0
  248. rasa/cli/project_templates/telco/docs/restart_router.txt +6 -0
  249. rasa/cli/project_templates/telco/docs/run_speed_test.txt +6 -0
  250. rasa/cli/project_templates/telco/domain/domain_global.yml +29 -0
  251. rasa/cli/project_templates/telco/domain/domain_patterns.yml +17 -0
  252. rasa/cli/project_templates/telco/domain/domain_reboot_router.yml +20 -0
  253. rasa/cli/project_templates/telco/domain/domain_reset_router.yml +11 -0
  254. rasa/cli/project_templates/telco/domain/domain_run_speed_test.yml +24 -0
  255. rasa/cli/project_templates/telco/domain/domain_solve_internet_issue.yml +74 -0
  256. rasa/cli/project_templates/telco/domain/domain_undertand_bill.yml +102 -0
  257. rasa/cli/project_templates/telco/endpoints.yml +60 -0
  258. rasa/{dialogue_understanding/generator/prompt_templates/agent_command_prompt_v2_gpt_4o_2024_11_20_template.jinja2 → cli/project_templates/telco/prompts/command-generator.jinja2} +3 -7
  259. rasa/cli/project_templates/telco/tests/e2e_results_failed.yml +62 -0
  260. rasa/cli/project_templates/telco/tests/e2e_results_passed.yml +130 -0
  261. rasa/cli/project_templates/telco/tests/e2e_test_cases/billing_test_cases.yml +68 -0
  262. rasa/cli/project_templates/telco/tests/e2e_test_cases/global_test_cases.yml +13 -0
  263. rasa/cli/project_templates/telco/tests/e2e_test_cases/internet_slow_test_case.yml +47 -0
  264. rasa/cli/project_templates/telco/tests/e2e_test_cases/out_of_scope_test_case.yml +21 -0
  265. rasa/cli/project_templates/telco/tests/e2e_test_cases/patterns_test_cases.yml +15 -0
  266. rasa/cli/project_templates/tutorial/config.yml +2 -1
  267. rasa/cli/run.py +0 -4
  268. rasa/cli/scaffold.py +46 -2
  269. rasa/cli/shell.py +0 -3
  270. rasa/constants.py +0 -6
  271. rasa/core/actions/action.py +2 -43
  272. rasa/core/agent.py +0 -16
  273. rasa/core/available_endpoints.py +0 -30
  274. rasa/core/channels/channel.py +4 -3
  275. rasa/core/channels/constants.py +3 -0
  276. rasa/core/channels/development_inspector.py +1 -1
  277. rasa/core/channels/inspector/dist/assets/{arc-2e78c586.js → arc-18042c22.js} +1 -1
  278. rasa/core/channels/inspector/dist/assets/{blockDiagram-38ab4fdb-806b712e.js → blockDiagram-38ab4fdb-fdd6bcfa.js} +1 -1
  279. rasa/core/channels/inspector/dist/assets/{c4Diagram-3d4e48cf-0745efa9.js → c4Diagram-3d4e48cf-f5ae6786.js} +1 -1
  280. rasa/core/channels/inspector/dist/assets/channel-b9b536fc.js +1 -0
  281. rasa/core/channels/inspector/dist/assets/{classDiagram-70f12bd4-7bd1082b.js → classDiagram-70f12bd4-81efba3e.js} +1 -1
  282. rasa/core/channels/inspector/dist/assets/{classDiagram-v2-f2320105-d937ba49.js → classDiagram-v2-f2320105-3b6b6a92.js} +1 -1
  283. rasa/core/channels/inspector/dist/assets/clone-78d2ddcf.js +1 -0
  284. rasa/core/channels/inspector/dist/assets/{createText-2e5e7dd3-a2a564ca.js → createText-2e5e7dd3-31422447.js} +1 -1
  285. rasa/core/channels/inspector/dist/assets/{edges-e0da2a9e-b5256940.js → edges-e0da2a9e-518a90db.js} +1 -1
  286. rasa/core/channels/inspector/dist/assets/{erDiagram-9861fffd-e6883ad2.js → erDiagram-9861fffd-a6d3c25a.js} +1 -1
  287. rasa/core/channels/inspector/dist/assets/{flowDb-956e92f1-e576fc02.js → flowDb-956e92f1-e048c2be.js} +1 -1
  288. rasa/core/channels/inspector/dist/assets/{flowDiagram-66a62f08-2e298d01.js → flowDiagram-66a62f08-c7474c91.js} +1 -1
  289. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-8b09c060.js +1 -0
  290. rasa/core/channels/inspector/dist/assets/{flowchart-elk-definition-4a651766-dd7b150a.js → flowchart-elk-definition-4a651766-cb4d8723.js} +1 -1
  291. rasa/core/channels/inspector/dist/assets/{ganttDiagram-c361ad54-5b79575c.js → ganttDiagram-c361ad54-346636a2.js} +1 -1
  292. rasa/core/channels/inspector/dist/assets/{gitGraphDiagram-72cf32ee-3016f40a.js → gitGraphDiagram-72cf32ee-7c508874.js} +1 -1
  293. rasa/core/channels/inspector/dist/assets/{graph-3e19170f.js → graph-14702d8a.js} +1 -1
  294. rasa/core/channels/inspector/dist/assets/{index-3862675e-eb9c86de.js → index-3862675e-f18b534b.js} +1 -1
  295. rasa/core/channels/inspector/dist/assets/index-4d4bdf3a.js +1335 -0
  296. rasa/core/channels/inspector/dist/assets/{infoDiagram-f8f76790-b4280e4d.js → infoDiagram-f8f76790-64154b83.js} +1 -1
  297. rasa/core/channels/inspector/dist/assets/{journeyDiagram-49397b02-556091f8.js → journeyDiagram-49397b02-833a5f95.js} +1 -1
  298. rasa/core/channels/inspector/dist/assets/{layout-08436411.js → layout-5a3b2123.js} +1 -1
  299. rasa/core/channels/inspector/dist/assets/{line-683c4f3b.js → line-2272a8c7.js} +1 -1
  300. rasa/core/channels/inspector/dist/assets/{linear-cee6d791.js → linear-35bcf273.js} +1 -1
  301. rasa/core/channels/inspector/dist/assets/{mindmap-definition-fc14e90a-a0bf0b1a.js → mindmap-definition-fc14e90a-92dcb0e9.js} +1 -1
  302. rasa/core/channels/inspector/dist/assets/{pieDiagram-8a3498a8-3730d5c4.js → pieDiagram-8a3498a8-94dbc900.js} +1 -1
  303. rasa/core/channels/inspector/dist/assets/{quadrantDiagram-120e2f19-12a20fed.js → quadrantDiagram-120e2f19-8b7a9c33.js} +1 -1
  304. rasa/core/channels/inspector/dist/assets/{requirementDiagram-deff3bca-b9732102.js → requirementDiagram-deff3bca-6f7eab81.js} +1 -1
  305. rasa/core/channels/inspector/dist/assets/{sankeyDiagram-04a897e0-a2e72776.js → sankeyDiagram-04a897e0-f43e581d.js} +1 -1
  306. rasa/core/channels/inspector/dist/assets/{sequenceDiagram-704730f1-8b7a76bb.js → sequenceDiagram-704730f1-0bcbefc3.js} +1 -1
  307. rasa/core/channels/inspector/dist/assets/{stateDiagram-587899a1-e65853ac.js → stateDiagram-587899a1-b8a74083.js} +1 -1
  308. rasa/core/channels/inspector/dist/assets/{stateDiagram-v2-d93cdb3a-6f58a44b.js → stateDiagram-v2-d93cdb3a-2070218f.js} +1 -1
  309. rasa/core/channels/inspector/dist/assets/{styles-6aaf32cf-df25b934.js → styles-6aaf32cf-f1d54e34.js} +1 -1
  310. rasa/core/channels/inspector/dist/assets/{styles-9a916d00-88357141.js → styles-9a916d00-980de489.js} +1 -1
  311. rasa/core/channels/inspector/dist/assets/{styles-c10674c1-d600174d.js → styles-c10674c1-3c03abde.js} +1 -1
  312. rasa/core/channels/inspector/dist/assets/{svgDrawCommon-08f97a94-4adc3e0b.js → svgDrawCommon-08f97a94-46ba068f.js} +1 -1
  313. rasa/core/channels/inspector/dist/assets/{timeline-definition-85554ec2-42816fa1.js → timeline-definition-85554ec2-901f5e3d.js} +1 -1
  314. rasa/core/channels/inspector/dist/assets/{xychartDiagram-e933f94c-621eb66a.js → xychartDiagram-e933f94c-acbc628a.js} +1 -1
  315. rasa/core/channels/inspector/dist/index.html +2 -2
  316. rasa/core/channels/inspector/index.html +1 -1
  317. rasa/core/channels/inspector/src/App.tsx +10 -11
  318. rasa/core/channels/inspector/src/components/DialogueInformation.tsx +12 -3
  319. rasa/core/channels/inspector/src/components/DialogueStack.tsx +5 -7
  320. rasa/core/channels/inspector/src/helpers/formatters.ts +3 -24
  321. rasa/core/channels/inspector/src/theme/base/styles.ts +1 -19
  322. rasa/core/channels/inspector/src/types.ts +0 -4
  323. rasa/core/channels/socketio.py +212 -51
  324. rasa/core/channels/studio_chat.py +43 -23
  325. rasa/core/channels/voice_stream/voice_channel.py +5 -3
  326. rasa/core/constants.py +0 -4
  327. rasa/core/policies/enterprise_search_policy.py +6 -11
  328. rasa/core/policies/flow_policy.py +4 -4
  329. rasa/core/policies/flows/flow_executor.py +45 -415
  330. rasa/core/processor.py +1 -6
  331. rasa/core/run.py +14 -11
  332. rasa/core/utils.py +1 -21
  333. rasa/dialogue_understanding/commands/__init__.py +0 -8
  334. rasa/dialogue_understanding/commands/cancel_flow_command.py +4 -97
  335. rasa/dialogue_understanding/commands/chit_chat_answer_command.py +0 -11
  336. rasa/dialogue_understanding/commands/clarify_command.py +0 -10
  337. rasa/dialogue_understanding/commands/knowledge_answer_command.py +0 -11
  338. rasa/dialogue_understanding/commands/start_flow_command.py +8 -164
  339. rasa/dialogue_understanding/commands/utils.py +2 -6
  340. rasa/dialogue_understanding/generator/command_parser.py +0 -4
  341. rasa/dialogue_understanding/generator/flow_retrieval.py +10 -9
  342. rasa/dialogue_understanding/generator/llm_based_command_generator.py +12 -50
  343. rasa/dialogue_understanding/generator/single_step/compact_llm_command_generator.py +6 -7
  344. rasa/dialogue_understanding/generator/single_step/search_ready_llm_command_generator.py +6 -7
  345. rasa/dialogue_understanding/generator/single_step/single_step_based_llm_command_generator.py +2 -41
  346. rasa/dialogue_understanding/patterns/continue_interrupted.py +1 -163
  347. rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml +8 -52
  348. rasa/dialogue_understanding/processor/command_processor.py +15 -31
  349. rasa/dialogue_understanding/stack/dialogue_stack.py +2 -123
  350. rasa/dialogue_understanding/stack/frames/flow_stack_frame.py +0 -57
  351. rasa/dialogue_understanding/stack/utils.py +2 -17
  352. rasa/dialogue_understanding_test/du_test_runner.py +2 -7
  353. rasa/e2e_test/e2e_test_runner.py +0 -5
  354. rasa/engine/storage/local_model_storage.py +45 -2
  355. rasa/model_manager/model_api.py +4 -5
  356. rasa/model_manager/runner_service.py +1 -1
  357. rasa/model_manager/socket_bridge.py +20 -14
  358. rasa/model_manager/trainer_service.py +12 -9
  359. rasa/model_manager/utils.py +1 -29
  360. rasa/server.py +0 -10
  361. rasa/shared/constants.py +0 -5
  362. rasa/shared/core/constants.py +1 -12
  363. rasa/shared/core/domain.py +58 -11
  364. rasa/shared/core/events.py +0 -319
  365. rasa/shared/core/flows/flow_step.py +7 -1
  366. rasa/shared/core/flows/flows_list.py +2 -2
  367. rasa/shared/core/flows/flows_yaml_schema.json +186 -112
  368. rasa/shared/core/flows/steps/call.py +5 -53
  369. rasa/shared/core/flows/validation.py +7 -46
  370. rasa/shared/core/flows/yaml_flows_io.py +16 -8
  371. rasa/shared/core/slots.py +4 -0
  372. rasa/shared/importers/importer.py +6 -0
  373. rasa/shared/importers/utils.py +77 -1
  374. rasa/shared/providers/_utils.py +60 -44
  375. rasa/shared/providers/embedding/default_litellm_embedding_client.py +2 -0
  376. rasa/shared/providers/llm/_base_litellm_client.py +7 -39
  377. rasa/shared/providers/llm/default_litellm_llm_client.py +2 -0
  378. rasa/shared/providers/llm/litellm_router_llm_client.py +4 -8
  379. rasa/shared/providers/llm/llm_client.py +3 -7
  380. rasa/shared/providers/llm/llm_response.py +0 -49
  381. rasa/shared/providers/llm/self_hosted_llm_client.py +4 -8
  382. rasa/shared/utils/llm.py +5 -28
  383. rasa/shared/utils/schemas/events.py +0 -42
  384. rasa/studio/upload.py +16 -47
  385. rasa/telemetry.py +97 -23
  386. rasa/tracing/instrumentation/instrumentation.py +2 -4
  387. rasa/utils/common.py +0 -79
  388. rasa/utils/io.py +27 -9
  389. rasa/utils/json_utils.py +6 -1
  390. rasa/utils/log_utils.py +5 -1
  391. rasa/utils/openapi.py +144 -0
  392. rasa/validator.py +7 -3
  393. rasa/version.py +1 -1
  394. {rasa_pro-3.14.0.dev3.dist-info → rasa_pro-3.14.0.dev5.dist-info}/METADATA +3 -3
  395. {rasa_pro-3.14.0.dev3.dist-info → rasa_pro-3.14.0.dev5.dist-info}/RECORD +405 -174
  396. rasa/agents/agent_factory.py +0 -122
  397. rasa/agents/agent_manager.py +0 -162
  398. rasa/agents/constants.py +0 -32
  399. rasa/agents/core/agent_protocol.py +0 -108
  400. rasa/agents/core/types.py +0 -70
  401. rasa/agents/exceptions.py +0 -8
  402. rasa/agents/protocol/__init__.py +0 -5
  403. rasa/agents/protocol/a2a/a2a_agent.py +0 -51
  404. rasa/agents/protocol/mcp/mcp_base_agent.py +0 -674
  405. rasa/agents/protocol/mcp/mcp_open_agent.py +0 -276
  406. rasa/agents/protocol/mcp/mcp_task_agent.py +0 -469
  407. rasa/agents/schemas/__init__.py +0 -12
  408. rasa/agents/schemas/agent_input.py +0 -38
  409. rasa/agents/schemas/agent_output.py +0 -26
  410. rasa/agents/schemas/agent_tool_result.py +0 -51
  411. rasa/agents/schemas/agent_tool_schema.py +0 -134
  412. rasa/agents/templates/mcp_open_agent_prompt_template.jinja2 +0 -15
  413. rasa/agents/templates/mcp_task_agent_prompt_template.jinja2 +0 -17
  414. rasa/agents/utils.py +0 -72
  415. rasa/core/available_agents.py +0 -196
  416. rasa/core/channels/inspector/dist/assets/channel-c436ca7c.js +0 -1
  417. rasa/core/channels/inspector/dist/assets/clone-50dd656b.js +0 -1
  418. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-2b2aeaf8.js +0 -1
  419. rasa/core/channels/inspector/dist/assets/index-1bd9135e.js +0 -1353
  420. rasa/core/policies/flows/mcp_tool_executor.py +0 -277
  421. rasa/dialogue_understanding/commands/continue_agent_command.py +0 -91
  422. rasa/dialogue_understanding/commands/restart_agent_command.py +0 -162
  423. rasa/dialogue_understanding/generator/prompt_templates/agent_command_prompt_v2_claude_3_5_sonnet_20240620_template.jinja2 +0 -61
  424. rasa/dialogue_understanding/generator/prompt_templates/agent_command_prompt_v3_claude_3_5_sonnet_20240620_template.jinja2 +0 -81
  425. rasa/dialogue_understanding/generator/prompt_templates/agent_command_prompt_v3_gpt_4o_2024_11_20_template.jinja2 +0 -81
  426. rasa/shared/agents/utils.py +0 -35
  427. rasa/shared/utils/mcp/server_connection.py +0 -157
  428. /rasa/{agents → builder}/__init__.py +0 -0
  429. /rasa/{agents/core → builder/copilot}/__init__.py +0 -0
  430. /rasa/{agents/protocol/a2a → builder/copilot/prompts}/__init__.py +0 -0
  431. /rasa/{agents/protocol/mcp → builder/copilot/templated_messages}/__init__.py +0 -0
  432. /rasa/{agents/templates → builder/document_retrieval}/__init__.py +0 -0
  433. /rasa/{shared/agents → cli/project_templates/finance/actions/accounts}/__init__.py +0 -0
  434. /rasa/{shared/utils/mcp → cli/project_templates/finance/actions/cards}/__init__.py +0 -0
  435. {rasa_pro-3.14.0.dev3.dist-info → rasa_pro-3.14.0.dev5.dist-info}/NOTICE +0 -0
  436. {rasa_pro-3.14.0.dev3.dist-info → rasa_pro-3.14.0.dev5.dist-info}/WHEEL +0 -0
  437. {rasa_pro-3.14.0.dev3.dist-info → rasa_pro-3.14.0.dev5.dist-info}/entry_points.txt +0 -0
rasa/cli/inspect.py CHANGED
@@ -8,7 +8,6 @@ from sanic import Sanic
8
8
  from rasa import telemetry
9
9
  from rasa.cli import SubParsersAction
10
10
  from rasa.cli.arguments import shell as arguments
11
- from rasa.cli.arguments.default_arguments import add_sub_agents_param
12
11
  from rasa.core import constants
13
12
  from rasa.core.available_endpoints import AvailableEndpoints
14
13
  from rasa.engine.storage.local_model_storage import LocalModelStorage
@@ -45,8 +44,6 @@ def add_subparser(
45
44
  "--voice", help="Enable voice", action="store_true", default=False
46
45
  )
47
46
 
48
- add_sub_agents_param(inspect_parser)
49
-
50
47
  # it'd be confusing to expose those arguments to the user,
51
48
  # so we remove them
52
49
  remove_argument_from_parser(inspect_parser, "--credentials")
@@ -14,7 +14,6 @@ from rasa.cli.arguments.default_arguments import (
14
14
  add_endpoint_param,
15
15
  add_model_param,
16
16
  add_remote_storage_param,
17
- add_sub_agents_param,
18
17
  )
19
18
  from rasa.cli.e2e_test import (
20
19
  RASA_PRO_BETA_FINE_TUNING_RECIPE_ENV_VAR_NAME,
@@ -138,8 +137,6 @@ def add_data_preparation_arguments(parser: argparse.ArgumentParser) -> None:
138
137
  default=DEFAULT_INPUT_E2E_TEST_PATH,
139
138
  )
140
139
 
141
- add_sub_agents_param(parser)
142
-
143
140
  add_remote_storage_param(parser)
144
141
 
145
142
  rephrasing_arguments = parser.add_argument_group("Rephrasing Module")
@@ -379,7 +376,6 @@ def write_params(
379
376
  "rephrase_config": rephrase_config,
380
377
  "model": args.model,
381
378
  "endpoints": args.endpoints,
382
- "sub-agents": args.sub_agents,
383
379
  "remote-storage": args.remote_storage,
384
380
  "train_frac": args.train_frac,
385
381
  "output_format": args.output_format,
@@ -424,7 +420,6 @@ def set_up_e2e_test_runner(args: argparse.Namespace) -> E2ETestRunner:
424
420
  model_path=args.model,
425
421
  model_server=endpoints.model,
426
422
  endpoints=endpoints,
427
- sub_agents_path=args.sub_agents,
428
423
  )
429
424
  except AgentNotReady as error:
430
425
  structlogger.error(
@@ -0,0 +1,15 @@
1
+ from typing import Any, Dict, List, Text
2
+
3
+ from rasa_sdk import Action, Tracker
4
+ from rasa_sdk.executor import CollectingDispatcher
5
+ from rasa_sdk.types import DomainDict
6
+
7
+
8
+ class ActionAPI(Action):
9
+ def name(self) -> Text:
10
+ return "action_api"
11
+
12
+ async def run(
13
+ self, dispatcher: CollectingDispatcher, tracker: Tracker, domain: DomainDict
14
+ ) -> List[Dict[Text, Any]]:
15
+ return []
@@ -0,0 +1,44 @@
1
+ from typing import Any, Dict, List, Text
2
+
3
+ import openai
4
+ from rasa_sdk import Action, Tracker
5
+ from rasa_sdk.events import BotUttered
6
+ from rasa_sdk.executor import CollectingDispatcher
7
+ from rasa_sdk.types import DomainDict
8
+
9
+
10
+ class ActionHumanHandoff(Action):
11
+ def name(self) -> Text:
12
+ return "action_human_handoff"
13
+
14
+ async def run(
15
+ self, dispatcher: CollectingDispatcher, tracker: Tracker, domain: DomainDict
16
+ ) -> List[Dict[Text, Any]]:
17
+ # Collect conversation
18
+ convo = []
19
+ for event in tracker.events:
20
+ if event.get("event") == "user":
21
+ user_text = f"user - {event.get('text')}"
22
+ convo.append(user_text)
23
+ if event.get("event") == "bot":
24
+ bot_text = f"bot - {event.get('text')}"
25
+ convo.append(bot_text)
26
+ prompt = (
27
+ f"The following is a conversation between a bot and a human user, "
28
+ f"please summarise so that a human agent can easily understand "
29
+ f"the important context. Conversation: {convo}"
30
+ )
31
+ response = openai.chat.completions.create(
32
+ model="gpt-4", # or "gpt-3.5-turbo"
33
+ messages=[{"role": "user", "content": prompt}],
34
+ )
35
+ summarised_conversation = (
36
+ response.choices[0].message.content or "No summary available"
37
+ )
38
+ return [
39
+ BotUttered(
40
+ f"I will transfer the following summary of our conversation "
41
+ f"to the Callback Manager:\n"
42
+ f"{summarised_conversation}"
43
+ )
44
+ ]
@@ -0,0 +1,23 @@
1
+ # This file contains the configuration for the bot.
2
+ # https://rasa.com/docs/reference/config/overview
3
+
4
+ recipe: default.v1
5
+ language: en
6
+ assistant_id: placeholder_default
7
+
8
+ pipeline:
9
+ - name: SearchReadyLLMCommandGenerator
10
+ llm:
11
+ model_group: openai-gpt-4o
12
+ flow_retrieval:
13
+ active: false
14
+
15
+ policies:
16
+ - name: FlowPolicy
17
+ - name: EnterpriseSearchPolicy
18
+ vector_store:
19
+ type: "faiss"
20
+ source: "./docs"
21
+ llm:
22
+ model_group: openai-gpt-4o
23
+ check_relevancy: true
@@ -0,0 +1,34 @@
1
+
2
+ # This file contains the credentials for the voice & chat platforms
3
+ # which your bot is using.
4
+ # https://rasa.com/docs/rasa-pro/connectors/messaging-and-voice-channels/
5
+ rest:
6
+ socketio:
7
+ bot_message_evt: bot_uttered
8
+ session_persistence: true
9
+ user_message_evt: user_uttered
10
+
11
+ rasa:
12
+ url: "http://localhost:5002/api"
13
+
14
+ #facebook:
15
+ # verify: "<verify>"
16
+ # secret: "<your secret>"
17
+ # page-access-token: "<your page access token>"
18
+
19
+ #slack:
20
+ # slack_token: "<your slack token>"
21
+ # slack_channel: "<the slack channel>"
22
+ # slack_signing_secret: "<your slack signing secret>"
23
+
24
+ #socketio:
25
+ # user_message_evt: <event name for user message>
26
+ # bot_message_evt: <event name for bot messages>
27
+ # session_persistence: <true/false>
28
+
29
+ #mattermost:
30
+ # url: "https://<mattermost instance>/api/v4"
31
+ # token: "<bot token>"
32
+ # webhook_url: "<callback URL>"
33
+
34
+
@@ -0,0 +1,20 @@
1
+ # Simple thumbs up/down feedback flow
2
+ flows:
3
+ leave_feedback:
4
+ description: This flow collects simple thumbs up or thumbs down feedback
5
+ if: False # Flow guard to prevent direct triggering
6
+ steps:
7
+ - collect: feedback_rating
8
+ description: Ask user for thumbs up or thumbs down feedback
9
+ - id: feedback_response
10
+ noop: true
11
+ next:
12
+ - if: slots.feedback_rating == "thumbs_up"
13
+ then: positive_response
14
+ - else: negative_response
15
+ - id: positive_response
16
+ action: utter_thankyou_positive
17
+ next: END
18
+ - id: negative_response
19
+ action: utter_thankyou_negative
20
+ next: END
@@ -0,0 +1,6 @@
1
+ flows:
2
+ goodbye_flow:
3
+ description: Handle user goodbye messages, say farewell, and collect feedback
4
+ steps:
5
+ - action: utter_goodbye
6
+ - link: leave_feedback
@@ -0,0 +1,7 @@
1
+ flows:
2
+ hello:
3
+ description: Flow for greeting the user hello
4
+ name: hello
5
+ steps:
6
+ - action: utter_greeting
7
+
@@ -0,0 +1,6 @@
1
+ flows:
2
+ help:
3
+ description: Answer the users question on what the assistant can do to help them
4
+ name: help
5
+ steps:
6
+ - action: utter_help
@@ -0,0 +1,16 @@
1
+ version: "3.1"
2
+ flows:
3
+ human_handoff:
4
+ description: Handles escalation to a live human agent.
5
+ steps:
6
+ - collect: confirm_human_handoff
7
+ ask_before_filling: True
8
+ next:
9
+ - if: slots.confirm_human_handoff is "Yes"
10
+ then:
11
+ - action: utter_transferring_to_human
12
+ - action: action_human_handoff
13
+ next: END
14
+ - else:
15
+ - action: utter_human_handoff_cancelled
16
+ next: END
@@ -0,0 +1,9 @@
1
+ flows:
2
+ welcome:
3
+ if: False
4
+ description: |
5
+ This flow is designed to greet and onboard new users who initiate a welcome intent.
6
+ It begins with an initial greeting message to establish a friendly interaction.
7
+ name: say hello
8
+ steps:
9
+ - action: utter_greeting
@@ -0,0 +1,7 @@
1
+ flows:
2
+ pattern_completed:
3
+ description: A flow has been completed and there is nothing else to be done
4
+ if: False
5
+ steps:
6
+ - noop: true
7
+ next: END
@@ -0,0 +1,7 @@
1
+ flows:
2
+ pattern_correction:
3
+ description: Handle a correction of a slot value.
4
+ name: pattern correction
5
+ steps:
6
+ - action: action_correct_flow_slot
7
+ next: "END"
@@ -0,0 +1,8 @@
1
+ flows:
2
+ pattern_search:
3
+ name: pattern_search
4
+ description: Flow for handling knowledge-based questions
5
+ steps:
6
+ - id: 0_action_trigger_search
7
+ next: END
8
+ action: action_trigger_search
@@ -0,0 +1,8 @@
1
+ flows:
2
+ pattern_session_start:
3
+ description: Flow for starting the conversation
4
+ name: pattern session start
5
+ nlu_trigger:
6
+ - intent: session_start
7
+ steps:
8
+ - link: hello
@@ -0,0 +1,65 @@
1
+ 1. Rasa Assistant Capabilities
2
+
3
+ Q: What is a Rasa assistant?
4
+ A: A Rasa assistant is an AI-powered conversational bot built using the Rasa framework. It can understand natural language, manage complex conversations, execute actions, and integrate with external systems to help users accomplish tasks through text or voice interactions.
5
+
6
+ Q: What types of tasks can Rasa assistants handle?
7
+ A: Rasa assistants can handle a wide variety of tasks including customer support, booking appointments, processing transactions, answering FAQs, collecting information through forms, routing calls to human agents, providing personalized recommendations, and integrating with databases and APIs.
8
+
9
+ Q: How does a Rasa assistant understand what users say?
10
+ A: Rasa assistants use Natural Language Understanding (NLU) to interpret user messages. They can extract intents (what the user wants to do) and entities (important information like names, dates, amounts) from text. Rasa Pro also supports LLM-based understanding for more flexible conversation handling.
11
+
12
+ 2. Conversation Management
13
+
14
+ Q: Can Rasa assistants handle complex conversations?
15
+ A: Yes, Rasa assistants excel at managing complex, multi-turn conversations. They use dialogue management to track conversation context, remember previous interactions, and guide users through multi-step processes like filling out forms or completing transactions.
16
+
17
+ Q: What are Rasa flows?
18
+ A: Rasa flows are a powerful feature that allows you to define conversational workflows with branching logic, conditional steps, and data collection. They make it easy to create structured conversations for tasks like onboarding, troubleshooting, or gathering customer information.
19
+
20
+ Q: Can the assistant handle interruptions and context switching?
21
+ A: Absolutely! Rasa assistants can handle conversation repairs, interruptions, clarifications, and context switching. Users can change topics mid-conversation or ask for help, and the assistant will respond appropriately while maintaining conversation state.
22
+
23
+ 3. Integration and Actions
24
+
25
+ Q: Can Rasa assistants connect to external systems?
26
+ A: Yes, Rasa assistants can integrate with virtually any external system through custom actions. They can connect to databases, APIs, CRM systems, payment processors, booking systems, and more to perform real-world tasks on behalf of users.
27
+
28
+ Q: What are custom actions in Rasa?
29
+ A: Custom actions are Python functions that allow your assistant to perform specific tasks like querying databases, calling APIs, processing payments, sending emails, or any other business logic. They bridge the gap between conversation and real-world actions.
30
+
31
+ Q: Can Rasa assistants work with existing business systems?
32
+ A: Yes, Rasa assistants are designed to integrate seamlessly with existing business infrastructure. They can connect to your CRM, ERP, databases, microservices, and other enterprise systems through APIs and custom integrations.
33
+
34
+ 4. Advanced Features
35
+
36
+ Q: Does Rasa support voice interactions?
37
+ A: Yes, Rasa assistants can handle voice interactions through integration with speech-to-text and text-to-speech services. They can be deployed as voice bots for phone systems or voice-enabled applications.
38
+
39
+ Q: Can Rasa assistants learn and improve over time?
40
+ A: Rasa assistants can be continuously improved through conversation analytics, user feedback, and retraining with new data. Rasa X (now part of Rasa Pro) provides tools for reviewing conversations and improving assistant performance.
41
+
42
+ Q: What is CALM in Rasa?
43
+ A: CALM (Conversational AI with Language Models) is Rasa's architecture that combines traditional rule-based dialogue management with large language models. This provides both reliability and flexibility, allowing for structured workflows while handling unexpected user inputs gracefully.
44
+
45
+ 5. Deployment and Scaling
46
+
47
+ Q: Where can Rasa assistants be deployed?
48
+ A: Rasa assistants can be deployed anywhere - on websites as chatbots, in mobile apps, on messaging platforms (WhatsApp, Slack, Facebook Messenger), as voice bots, in call centers, or as standalone applications. They're platform-agnostic and highly flexible.
49
+
50
+ Q: Can Rasa assistants handle multiple languages?
51
+ A: Yes, Rasa supports multilingual assistants. You can train models in different languages and create assistants that can communicate with users in their preferred language.
52
+
53
+ Q: How do Rasa assistants scale for enterprise use?
54
+ A: Rasa assistants are built for enterprise scale with features like clustering, load balancing, conversation analytics, version control for models, A/B testing capabilities, and enterprise-grade security and compliance features.
55
+
56
+ 6. Use Cases and Industries
57
+
58
+ Q: What industries use Rasa assistants?
59
+ A: Rasa assistants are used across many industries including banking and finance, healthcare, e-commerce, telecommunications, insurance, travel and hospitality, education, and government services. Any industry that needs to automate customer interactions can benefit.
60
+
61
+ Q: Can Rasa assistants replace human agents?
62
+ A: Rasa assistants are designed to augment human agents, not replace them. They can handle routine inquiries and tasks, freeing up human agents for complex issues that require empathy, creativity, or specialized knowledge. They can also seamlessly hand off conversations to humans when needed.
63
+
64
+ Q: What's the difference between Rasa and simple chatbots?
65
+ A: Unlike simple rule-based chatbots, Rasa assistants can understand context, handle complex multi-turn conversations, learn from interactions, integrate with business systems, and manage sophisticated workflows. They're true conversational AI rather than basic question-answering systems.
@@ -0,0 +1,7 @@
1
+ 1. General Questions
2
+
3
+ Q: What else can you do?
4
+ A: I can answer questions from docs. Add more txt files to /docs to get started.
5
+
6
+ Q: Can you do RAG?
7
+ A: Yes, you can use Retrieval-Augmented Generation (RAG) with Rasa. Rasa's CALM architecture supports RAG through its Enterprise Search Policy. Right now, I'm just retrieving messages from the /docs folder for demo purposes. Add more txt files to /docs to test it out.
@@ -0,0 +1,12 @@
1
+ slots:
2
+ skills_summary:
3
+ type: text
4
+ initial_value: "general questions or direct you to an available agent"
5
+ mappings:
6
+ - type: controlled
7
+ assistant_name:
8
+ type: text
9
+ initial_value: "Vanessa"
10
+ mappings:
11
+ - type: controlled
12
+
@@ -0,0 +1,5 @@
1
+ responses:
2
+ utter_bot_identity:
3
+ - text: "Yes, I'm an AI assistant designed to help you with your questions. I'm here to provide helpful information and support. How can I assist you today?"
4
+ - text: "I am indeed an AI assistant! I'm programmed to be helpful, accurate, and friendly. What can I help you with?"
5
+ - text: "That's right, I'm an AI bot created to assist you. I aim to provide useful responses and help solve your questions. Is there something specific I can help you with?"
@@ -0,0 +1,5 @@
1
+ responses:
2
+ utter_no_relevant_answer_found:
3
+ - text: I’m sorry, I can’t help with that.
4
+ metadata:
5
+ rephrase: False
@@ -0,0 +1,28 @@
1
+ slots:
2
+ feedback_rating:
3
+ type: categorical
4
+ values: [thumbs_up, thumbs_down]
5
+ mappings:
6
+ - type: from_llm
7
+
8
+ responses:
9
+ utter_ask_feedback_rating:
10
+ - text: "Before you go, how was your experience?"
11
+ buttons:
12
+ - title: "👍 Great"
13
+ payload: "/SetSlots(feedback_rating=thumbs_up)"
14
+ - title: "👎 Could be better"
15
+ payload: "/SetSlots(feedback_rating=thumbs_down)"
16
+
17
+ utter_thankyou_positive:
18
+ - text: "That's wonderful to hear! Thank you for your feedback! Have a fantastic day! 🌟"
19
+ - text: "So glad we could help! Thanks for the positive feedback! Take care! 😊"
20
+ - text: "Amazing! We're thrilled you had a great experience. Have a wonderful day! 🎉"
21
+
22
+ utter_thankyou_negative:
23
+ - text: "Thank you for your honest feedback. We're always working to improve our service. Have a good day."
24
+ - text: "We appreciate your feedback and will use it to make our service better. Thank you for your time."
25
+ - text: "Thanks for letting us know. Your feedback helps us improve. Take care!"
26
+
27
+ actions:
28
+ - action_default_fallback
@@ -0,0 +1,7 @@
1
+ responses:
2
+ utter_goodbye:
3
+ - text: "Thanks for stopping by — take care!"
4
+ - text: "Thanks for the chat. Have a great day!"
5
+ - text: "Catch you later! Feel free to reach out anytime."
6
+ - text: "Goodbye for now — we’re here if you need anything."
7
+ - text: "Take care! Let us know if you have any other questions."
@@ -0,0 +1,5 @@
1
+ version: "3.1"
2
+
3
+ responses:
4
+ utter_help:
5
+ - text: "I can help you with {skills_summary}."
@@ -0,0 +1,35 @@
1
+ version: "3.1"
2
+ actions:
3
+ - "action_human_handoff"
4
+
5
+ intents:
6
+ - human_handoff
7
+ - speak_to_agent
8
+ - talk_to_human
9
+ - escalate
10
+
11
+ slots:
12
+ confirm_human_handoff:
13
+ type: "categorical"
14
+ mappings:
15
+ - type: "from_llm"
16
+ values:
17
+ - "Yes"
18
+ - "No"
19
+
20
+ responses:
21
+ utter_ask_confirm_human_handoff:
22
+ - text: "Do you want to be connected to a human agent?"
23
+ buttons:
24
+ - payload: "/SetSlots(confirm_human_handoff=Yes)"
25
+ title: "Yes"
26
+ - payload: "/SetSlots(confirm_human_handoff=No)"
27
+ title: "No"
28
+
29
+ utter_transferring_to_human:
30
+ - text: "You will be transfered to a human agent in a few moments."
31
+
32
+ utter_human_handoff_cancelled:
33
+ - text: "Ok, I understand you don't want to be connected to a human agent. Is there something else I can help you with?"
34
+ metadata:
35
+ rephrase: True
@@ -0,0 +1,13 @@
1
+ version: "3.1"
2
+
3
+ slots:
4
+ current_date:
5
+ type: text
6
+ username:
7
+ type: text
8
+ email_address:
9
+ type: text
10
+ physical_address:
11
+ type: text
12
+ segment:
13
+ type: text
@@ -0,0 +1,7 @@
1
+ version: "3.1"
2
+
3
+ responses:
4
+ utter_greeting:
5
+ - text: "Hi there! I'm {assistant_name}. I can help you with {skills_summary}. How can I help you today?"
6
+ metadata:
7
+ rephrase: True
@@ -0,0 +1,73 @@
1
+ # This file contains the different endpoints your bot can use.
2
+
3
+ # Server which runs your custom actions.
4
+ # https://rasa.com/docs/rasa-pro/concepts/custom-actions
5
+ action_endpoint:
6
+ actions_module: "actions"
7
+
8
+ # Allow rephrasing of responses using a Rasa-hosted model
9
+ nlg:
10
+ type: rephrase
11
+ llm:
12
+ model_group: openai-gpt-4o
13
+ prompt_template: ./prompts/rephraser_demo_personality_prompt.jinja2
14
+ rephrase_all: False
15
+ summarize_history: False
16
+
17
+ # Model Groups - Integrate with different LLM providers
18
+ # https://rasa.com/docs/reference/config/components/llm-configuration/#model-groups
19
+ # https://platform.openai.com/docs/models
20
+ model_groups:
21
+ - id: openai-gpt-4o
22
+ models:
23
+ - provider: openai
24
+ model: gpt-4o-2024-11-20
25
+ timeout: 7
26
+ temperature: 0.0
27
+ top_p: 0.0
28
+ - id: gpt-3.5-turbo-openai-model
29
+ models:
30
+ - provider: openai
31
+ model: gpt-3.5-turbo
32
+ temperature: 0.3
33
+ # - id: rasa_command_generation_model
34
+ # models:
35
+ # - provider: rasa
36
+ # model: rasa/cmd_gen_codellama_13b_calm_demo
37
+ # api_base: "https://tutorial-llm.rasa.ai"
38
+ # - id: openai_embeddings
39
+ # models:
40
+ # - provider: openai
41
+ # model: text-embedding-ada-002
42
+
43
+
44
+ # Server where the models are pulled from.
45
+ # https://rasa.com/docs/rasa-pro/production/model-storage#fetching-models-from-a-server
46
+ #models:
47
+ # url: http://my-server.com/models/default_core@latest
48
+ # wait_time_between_pulls: 10 # [optional](default: 100)
49
+
50
+ # Tracker store which is used to store the conversations.
51
+ # By default the conversations are stored in memory.
52
+ # https://rasa.com/docs/rasa-pro/production/tracker-stores
53
+ #tracker_store:
54
+ # type: redis
55
+ # url: <host of the redis instance, e.g. localhost>
56
+ # port: <port of your redis instance, usually 6379>
57
+ # db: <number of your database within redis, e.g. 0>
58
+ # password: <password used for authentication>
59
+ # use_ssl: <whether or not the communication is encrypted, default false>
60
+ #tracker_store:
61
+ # type: mongod
62
+ # url: <url to your mongo instance, e.g. mongodb://localhost:27017>
63
+ # db: <name of the db within your mongo instance, e.g. rasa>
64
+ # username: <username used for authentication>
65
+ # password: <password used for authentication>
66
+
67
+ # Event broker which all conversation events should be streamed to.
68
+ # https://rasa.com/docs/rasa-pro/production/event-brokers
69
+ #event_broker:
70
+ # url: localhost
71
+ # username: username
72
+ # password: password
73
+ # queue: queue
@@ -0,0 +1,19 @@
1
+ The following is a conversation with an AI assistant.
2
+ The assistant is professional, calm, and highly attentive to detail.
3
+ Its main priorities are efficiency, speed, and accuracy when handling user requests.
4
+
5
+ Please rephrase the suggested AI response, staying close to the original meaning while
6
+ ensuring the assistant's tone remains formal yet empathetic, friendly, and reassuring.
7
+ It should convey patience, even with vague or repetitive questions, and be clear,
8
+ informative, and slightly humorous where appropriate.
9
+
10
+ Write your responses in English
11
+
12
+ Context / previous conversation with the user:
13
+ {{history}}
14
+
15
+ {{current_input}}
16
+
17
+ Suggested AI Response: {{suggested_response}}
18
+
19
+ Rephrased AI Response:
@@ -0,0 +1,46 @@
1
+ # Account actions
2
+ from actions.accounts.action_ask_account import ActionAskAccount
3
+ from actions.accounts.action_check_balance import ActionCheckBalance
4
+
5
+ # General actions
6
+ from actions.action_session_start import ActionSessionStart
7
+
8
+ # Card actions
9
+ from actions.cards.action_ask_card import ActionAskCard
10
+ from actions.cards.action_check_card_existence import ActionCheckCardExistence
11
+ from actions.cards.action_update_card_status import ActionUpdateCardStatus
12
+
13
+ # Transfer actions
14
+ from actions.transfers.action_add_payee import ActionAddPayee
15
+ from actions.transfers.action_ask_account_from import ActionAskAccountFrom
16
+ from actions.transfers.action_check_payee_existence import ActionCheckPayeeExistence
17
+ from actions.transfers.action_check_sufficient_funds import ActionCheckSufficientFunds
18
+ from actions.transfers.action_list_payees import ActionListPayees
19
+ from actions.transfers.action_process_immediate_payment import (
20
+ ActionProcessImmediatePayment,
21
+ )
22
+ from actions.transfers.action_remove_payee import ActionRemovePayee
23
+ from actions.transfers.action_schedule_payment import ActionSchedulePayment
24
+ from actions.transfers.action_validate_payment_date import ActionValidatePaymentDate
25
+
26
+ __all__ = [
27
+ # General actions
28
+ "ActionSessionStart",
29
+ # Account actions
30
+ "ActionAskAccount",
31
+ "ActionCheckBalance",
32
+ # Card actions
33
+ "ActionAskCard",
34
+ "ActionCheckCardExistence",
35
+ "ActionUpdateCardStatus",
36
+ # Transfer actions
37
+ "ActionAddPayee",
38
+ "ActionAskAccountFrom",
39
+ "ActionCheckPayeeExistence",
40
+ "ActionCheckSufficientFunds",
41
+ "ActionListPayees",
42
+ "ActionProcessImmediatePayment",
43
+ "ActionRemovePayee",
44
+ "ActionSchedulePayment",
45
+ "ActionValidatePaymentDate",
46
+ ]