rasa-pro 3.12.0.dev2__py3-none-any.whl → 3.12.0.dev4__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 (502) hide show
  1. rasa/__main__.py +7 -7
  2. rasa/anonymization/anonymisation_rule_yaml_reader.py +1 -1
  3. rasa/anonymization/anonymization_pipeline.py +3 -3
  4. rasa/anonymization/anonymization_rule_executor.py +1 -1
  5. rasa/anonymization/anonymization_rule_orchestrator.py +2 -3
  6. rasa/cli/arguments/data.py +2 -2
  7. rasa/cli/arguments/evaluate.py +2 -1
  8. rasa/cli/arguments/interactive.py +1 -1
  9. rasa/cli/arguments/run.py +1 -1
  10. rasa/cli/arguments/test.py +7 -5
  11. rasa/cli/arguments/train.py +3 -3
  12. rasa/cli/arguments/visualize.py +2 -2
  13. rasa/cli/arguments/x.py +1 -0
  14. rasa/cli/data.py +4 -3
  15. rasa/cli/dialogue_understanding_test.py +121 -18
  16. rasa/cli/evaluate.py +1 -1
  17. rasa/cli/export.py +6 -6
  18. rasa/cli/interactive.py +4 -5
  19. rasa/cli/llm_fine_tuning.py +5 -5
  20. rasa/cli/markers.py +1 -2
  21. rasa/cli/project_templates/calm/actions/add_contact.py +1 -1
  22. rasa/cli/project_templates/tutorial/actions/actions.py +3 -2
  23. rasa/cli/shell.py +2 -3
  24. rasa/cli/studio/download.py +1 -2
  25. rasa/cli/studio/studio.py +2 -3
  26. rasa/cli/studio/train.py +0 -1
  27. rasa/cli/telemetry.py +2 -2
  28. rasa/cli/test.py +11 -11
  29. rasa/cli/utils.py +7 -5
  30. rasa/core/__init__.py +0 -1
  31. rasa/core/actions/action.py +42 -21
  32. rasa/core/actions/action_hangup.py +1 -1
  33. rasa/core/actions/action_repeat_bot_messages.py +2 -2
  34. rasa/core/actions/action_run_slot_rejections.py +2 -2
  35. rasa/core/actions/action_trigger_chitchat.py +1 -1
  36. rasa/core/actions/action_trigger_flow.py +5 -5
  37. rasa/core/actions/action_trigger_search.py +1 -1
  38. rasa/core/actions/forms.py +14 -12
  39. rasa/core/actions/http_custom_action_executor.py +8 -1
  40. rasa/core/actions/loops.py +3 -3
  41. rasa/core/actions/two_stage_fallback.py +13 -13
  42. rasa/core/auth_retry_tracker_store.py +1 -2
  43. rasa/core/brokers/broker.py +2 -1
  44. rasa/core/brokers/file.py +1 -1
  45. rasa/core/brokers/kafka.py +8 -8
  46. rasa/core/brokers/pika.py +8 -9
  47. rasa/core/brokers/sql.py +4 -3
  48. rasa/core/channels/__init__.py +3 -0
  49. rasa/core/channels/botframework.py +2 -2
  50. rasa/core/channels/callback.py +4 -4
  51. rasa/core/channels/channel.py +11 -11
  52. rasa/core/channels/console.py +0 -1
  53. rasa/core/channels/development_inspector.py +6 -6
  54. rasa/core/channels/facebook.py +5 -5
  55. rasa/core/channels/hangouts.py +7 -8
  56. rasa/core/channels/inspector/dist/assets/{arc-861ddd57.js → arc-632a63ec.js} +1 -1
  57. rasa/core/channels/inspector/dist/assets/{c4Diagram-d0fbc5ce-921f02db.js → c4Diagram-d0fbc5ce-081e0df4.js} +1 -1
  58. rasa/core/channels/inspector/dist/assets/{classDiagram-936ed81e-b436c4f8.js → classDiagram-936ed81e-3df0afc2.js} +1 -1
  59. rasa/core/channels/inspector/dist/assets/{classDiagram-v2-c3cb15f1-511a23cb.js → classDiagram-v2-c3cb15f1-8c5ed31e.js} +1 -1
  60. rasa/core/channels/inspector/dist/assets/{createText-62fc7601-ef476ecd.js → createText-62fc7601-89c73b31.js} +1 -1
  61. rasa/core/channels/inspector/dist/assets/{edges-f2ad444c-f1878e0a.js → edges-f2ad444c-4fc48c3e.js} +1 -1
  62. rasa/core/channels/inspector/dist/assets/{erDiagram-9d236eb7-fac75185.js → erDiagram-9d236eb7-907e0440.js} +1 -1
  63. rasa/core/channels/inspector/dist/assets/{flowDb-1972c806-201c5bbc.js → flowDb-1972c806-9ec53a3c.js} +1 -1
  64. rasa/core/channels/inspector/dist/assets/{flowDiagram-7ea5b25a-f904ae41.js → flowDiagram-7ea5b25a-41da787a.js} +1 -1
  65. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-855bc5b3-8bea338b.js +1 -0
  66. rasa/core/channels/inspector/dist/assets/{flowchart-elk-definition-abe16c3d-1813da66.js → flowchart-elk-definition-abe16c3d-ce370633.js} +1 -1
  67. rasa/core/channels/inspector/dist/assets/{ganttDiagram-9b5ea136-872af172.js → ganttDiagram-9b5ea136-90a36523.js} +1 -1
  68. rasa/core/channels/inspector/dist/assets/{gitGraphDiagram-99d0ae7c-34a0af5a.js → gitGraphDiagram-99d0ae7c-41e1aa3f.js} +1 -1
  69. rasa/core/channels/inspector/dist/assets/{index-2c4b9a3b-42ba3e3d.js → index-2c4b9a3b-e6f2af62.js} +1 -1
  70. rasa/core/channels/inspector/dist/assets/{index-37817b51.js → index-e793d777.js} +3 -3
  71. rasa/core/channels/inspector/dist/assets/{infoDiagram-736b4530-6b731386.js → infoDiagram-736b4530-8ceba4db.js} +1 -1
  72. rasa/core/channels/inspector/dist/assets/{journeyDiagram-df861f2b-e8579ac6.js → journeyDiagram-df861f2b-960d3809.js} +1 -1
  73. rasa/core/channels/inspector/dist/assets/{layout-89e6403a.js → layout-498807d8.js} +1 -1
  74. rasa/core/channels/inspector/dist/assets/{line-dc73d3fc.js → line-eeccc4e2.js} +1 -1
  75. rasa/core/channels/inspector/dist/assets/{linear-f5b1d2bc.js → linear-8a078617.js} +1 -1
  76. rasa/core/channels/inspector/dist/assets/{mindmap-definition-beec6740-82cb74fa.js → mindmap-definition-beec6740-396d17dd.js} +1 -1
  77. rasa/core/channels/inspector/dist/assets/{pieDiagram-dbbf0591-bdf5f29b.js → pieDiagram-dbbf0591-dc9b5e1b.js} +1 -1
  78. rasa/core/channels/inspector/dist/assets/{quadrantDiagram-4d7f4fd6-c7a0cbe4.js → quadrantDiagram-4d7f4fd6-a08cba6d.js} +1 -1
  79. rasa/core/channels/inspector/dist/assets/{requirementDiagram-6fc4c22a-7ec5410f.js → requirementDiagram-6fc4c22a-87242b9e.js} +1 -1
  80. rasa/core/channels/inspector/dist/assets/{sankeyDiagram-8f13d901-caee5554.js → sankeyDiagram-8f13d901-53f6f391.js} +1 -1
  81. rasa/core/channels/inspector/dist/assets/{sequenceDiagram-b655622a-2935f8db.js → sequenceDiagram-b655622a-715c9c20.js} +1 -1
  82. rasa/core/channels/inspector/dist/assets/{stateDiagram-59f0c015-8f5d9693.js → stateDiagram-59f0c015-2e8fb31f.js} +1 -1
  83. rasa/core/channels/inspector/dist/assets/{stateDiagram-v2-2b26beab-d565d1de.js → stateDiagram-v2-2b26beab-7e2d2aa0.js} +1 -1
  84. rasa/core/channels/inspector/dist/assets/{styles-080da4f6-75ad421d.js → styles-080da4f6-4420cea6.js} +1 -1
  85. rasa/core/channels/inspector/dist/assets/{styles-3dcbcfbf-7e764226.js → styles-3dcbcfbf-28676cf4.js} +1 -1
  86. rasa/core/channels/inspector/dist/assets/{styles-9c745c82-7a4e0e61.js → styles-9c745c82-cef936a6.js} +1 -1
  87. rasa/core/channels/inspector/dist/assets/{svgDrawCommon-4835440b-4019d1bf.js → svgDrawCommon-4835440b-151251e9.js} +1 -1
  88. rasa/core/channels/inspector/dist/assets/{timeline-definition-5b62e21b-01ea12df.js → timeline-definition-5b62e21b-0d39bdb2.js} +1 -1
  89. rasa/core/channels/inspector/dist/assets/{xychartDiagram-2b33534f-89407137.js → xychartDiagram-2b33534f-a03fa445.js} +1 -1
  90. rasa/core/channels/inspector/dist/index.html +3 -1
  91. rasa/core/channels/inspector/index.html +2 -0
  92. rasa/core/channels/inspector/src/App.tsx +1 -4
  93. rasa/core/channels/mattermost.py +4 -4
  94. rasa/core/channels/rasa_chat.py +4 -4
  95. rasa/core/channels/rest.py +11 -12
  96. rasa/core/channels/rocketchat.py +4 -3
  97. rasa/core/channels/slack.py +6 -5
  98. rasa/core/channels/socketio.py +7 -28
  99. rasa/core/channels/studio_chat.py +193 -0
  100. rasa/core/channels/telegram.py +73 -41
  101. rasa/core/channels/twilio.py +3 -3
  102. rasa/core/channels/vier_cvg.py +2 -2
  103. rasa/core/channels/voice_ready/audiocodes.py +8 -8
  104. rasa/core/channels/voice_ready/jambonz.py +5 -5
  105. rasa/core/channels/voice_ready/jambonz_protocol.py +3 -4
  106. rasa/core/channels/voice_ready/twilio_voice.py +9 -8
  107. rasa/core/channels/voice_ready/utils.py +1 -1
  108. rasa/core/channels/voice_stream/asr/asr_engine.py +2 -2
  109. rasa/core/channels/voice_stream/asr/azure.py +2 -2
  110. rasa/core/channels/voice_stream/asr/deepgram.py +57 -16
  111. rasa/core/channels/voice_stream/browser_audio.py +9 -6
  112. rasa/core/channels/voice_stream/call_state.py +2 -1
  113. rasa/core/channels/voice_stream/tts/azure.py +1 -2
  114. rasa/core/channels/voice_stream/tts/cartesia.py +5 -4
  115. rasa/core/channels/voice_stream/tts/tts_cache.py +3 -2
  116. rasa/core/channels/voice_stream/tts/tts_engine.py +1 -1
  117. rasa/core/channels/voice_stream/twilio_media_streams.py +10 -7
  118. rasa/core/channels/voice_stream/util.py +1 -1
  119. rasa/core/channels/voice_stream/voice_channel.py +15 -15
  120. rasa/core/channels/webexteams.py +3 -4
  121. rasa/core/evaluation/marker.py +7 -6
  122. rasa/core/evaluation/marker_base.py +15 -16
  123. rasa/core/evaluation/marker_stats.py +3 -4
  124. rasa/core/evaluation/marker_tracker_loader.py +5 -4
  125. rasa/core/exporter.py +4 -4
  126. rasa/core/featurizers/precomputation.py +8 -8
  127. rasa/core/featurizers/single_state_featurizer.py +7 -7
  128. rasa/core/featurizers/tracker_featurizers.py +13 -13
  129. rasa/core/http_interpreter.py +3 -4
  130. rasa/core/information_retrieval/__init__.py +1 -1
  131. rasa/core/information_retrieval/faiss.py +4 -4
  132. rasa/core/information_retrieval/information_retrieval.py +2 -2
  133. rasa/core/information_retrieval/milvus.py +3 -3
  134. rasa/core/information_retrieval/qdrant.py +3 -3
  135. rasa/core/jobs.py +1 -0
  136. rasa/core/lock.py +2 -3
  137. rasa/core/lock_store.py +3 -3
  138. rasa/core/migrate.py +11 -8
  139. rasa/core/nlg/__init__.py +1 -1
  140. rasa/core/nlg/callback.py +2 -3
  141. rasa/core/nlg/contextual_response_rephraser.py +63 -13
  142. rasa/core/nlg/generator.py +2 -2
  143. rasa/core/nlg/interpolator.py +4 -3
  144. rasa/core/nlg/response.py +3 -4
  145. rasa/core/nlg/summarize.py +1 -0
  146. rasa/core/persistor.py +3 -3
  147. rasa/core/policies/ensemble.py +10 -9
  148. rasa/core/policies/enterprise_search_policy.py +86 -21
  149. rasa/core/policies/flow_policy.py +13 -14
  150. rasa/core/policies/flows/flow_executor.py +35 -11
  151. rasa/core/policies/intentless_policy.py +6 -7
  152. rasa/core/policies/memoization.py +22 -20
  153. rasa/core/policies/policy.py +24 -22
  154. rasa/core/policies/rule_policy.py +37 -36
  155. rasa/core/policies/ted_policy.py +87 -85
  156. rasa/core/policies/unexpected_intent_policy.py +77 -75
  157. rasa/core/processor.py +96 -65
  158. rasa/core/run.py +1 -1
  159. rasa/core/secrets_manager/endpoints.py +2 -3
  160. rasa/core/secrets_manager/factory.py +2 -3
  161. rasa/core/secrets_manager/secret_manager.py +2 -3
  162. rasa/core/secrets_manager/vault.py +2 -2
  163. rasa/core/test.py +30 -30
  164. rasa/core/tracker_store.py +15 -15
  165. rasa/core/train.py +1 -1
  166. rasa/core/training/__init__.py +2 -2
  167. rasa/core/training/converters/responses_prefix_converter.py +1 -2
  168. rasa/core/training/interactive.py +13 -13
  169. rasa/core/training/story_conflict.py +4 -5
  170. rasa/core/training/training.py +3 -5
  171. rasa/core/utils.py +5 -5
  172. rasa/core/visualize.py +1 -1
  173. rasa/dialogue_understanding/coexistence/intent_based_router.py +2 -2
  174. rasa/dialogue_understanding/coexistence/llm_based_router.py +5 -5
  175. rasa/dialogue_understanding/commands/__init__.py +22 -22
  176. rasa/dialogue_understanding/commands/can_not_handle_command.py +20 -1
  177. rasa/dialogue_understanding/commands/cancel_flow_command.py +18 -7
  178. rasa/dialogue_understanding/commands/change_flow_command.py +18 -2
  179. rasa/dialogue_understanding/commands/chit_chat_answer_command.py +18 -4
  180. rasa/dialogue_understanding/commands/clarify_command.py +19 -3
  181. rasa/dialogue_understanding/commands/command.py +19 -3
  182. rasa/dialogue_understanding/commands/correct_slots_command.py +3 -3
  183. rasa/dialogue_understanding/commands/error_command.py +1 -1
  184. rasa/dialogue_understanding/commands/free_form_answer_command.py +2 -1
  185. rasa/dialogue_understanding/commands/handle_code_change_command.py +2 -2
  186. rasa/dialogue_understanding/commands/human_handoff_command.py +16 -4
  187. rasa/dialogue_understanding/commands/knowledge_answer_command.py +18 -4
  188. rasa/dialogue_understanding/commands/noop_command.py +2 -1
  189. rasa/dialogue_understanding/commands/repeat_bot_messages_command.py +16 -4
  190. rasa/dialogue_understanding/commands/restart_command.py +2 -5
  191. rasa/dialogue_understanding/commands/session_end_command.py +3 -5
  192. rasa/dialogue_understanding/commands/session_start_command.py +3 -5
  193. rasa/dialogue_understanding/commands/set_slot_command.py +27 -3
  194. rasa/dialogue_understanding/commands/skip_question_command.py +16 -4
  195. rasa/dialogue_understanding/commands/start_flow_command.py +17 -2
  196. rasa/dialogue_understanding/commands/user_silence_command.py +3 -5
  197. rasa/dialogue_understanding/commands/utils.py +64 -45
  198. rasa/dialogue_understanding/constants.py +1 -0
  199. rasa/dialogue_understanding/generator/command_generator.py +2 -119
  200. rasa/dialogue_understanding/generator/command_parser.py +201 -0
  201. rasa/dialogue_understanding/generator/constants.py +2 -2
  202. rasa/dialogue_understanding/generator/flow_retrieval.py +7 -7
  203. rasa/dialogue_understanding/generator/llm_based_command_generator.py +11 -57
  204. rasa/dialogue_understanding/generator/llm_command_generator.py +2 -1
  205. rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py +67 -120
  206. rasa/dialogue_understanding/generator/nlu_command_adapter.py +8 -10
  207. rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py +32 -93
  208. rasa/dialogue_understanding/generator/utils.py +45 -0
  209. rasa/dialogue_understanding/patterns/cancel.py +2 -1
  210. rasa/dialogue_understanding/patterns/cannot_handle.py +1 -0
  211. rasa/dialogue_understanding/patterns/chitchat.py +1 -1
  212. rasa/dialogue_understanding/patterns/clarify.py +2 -1
  213. rasa/dialogue_understanding/patterns/code_change.py +2 -0
  214. rasa/dialogue_understanding/patterns/collect_information.py +6 -3
  215. rasa/dialogue_understanding/patterns/completed.py +1 -1
  216. rasa/dialogue_understanding/patterns/continue_interrupted.py +10 -1
  217. rasa/dialogue_understanding/patterns/correction.py +4 -2
  218. rasa/dialogue_understanding/patterns/human_handoff.py +1 -1
  219. rasa/dialogue_understanding/patterns/internal_error.py +1 -0
  220. rasa/dialogue_understanding/patterns/search.py +1 -1
  221. rasa/dialogue_understanding/patterns/session_start.py +1 -1
  222. rasa/dialogue_understanding/patterns/skip_question.py +1 -0
  223. rasa/dialogue_understanding/patterns/user_silence.py +1 -1
  224. rasa/dialogue_understanding/processor/command_processor.py +13 -9
  225. rasa/dialogue_understanding/processor/command_processor_component.py +1 -1
  226. rasa/dialogue_understanding/stack/dialogue_stack.py +4 -3
  227. rasa/dialogue_understanding/stack/frames/__init__.py +2 -2
  228. rasa/dialogue_understanding/stack/frames/chit_chat_frame.py +4 -1
  229. rasa/dialogue_understanding/stack/frames/dialogue_stack_frame.py +2 -3
  230. rasa/dialogue_understanding/stack/frames/flow_stack_frame.py +5 -2
  231. rasa/dialogue_understanding/stack/frames/search_frame.py +4 -1
  232. rasa/dialogue_understanding/stack/utils.py +8 -4
  233. rasa/dialogue_understanding/utils.py +121 -2
  234. rasa/dialogue_understanding_test/README.md +379 -0
  235. rasa/dialogue_understanding_test/command_comparison.py +60 -0
  236. rasa/dialogue_understanding_test/command_metric_calculation.py +110 -4
  237. rasa/dialogue_understanding_test/constants.py +6 -1
  238. rasa/dialogue_understanding_test/du_test_case.py +252 -38
  239. rasa/dialogue_understanding_test/du_test_result.py +291 -2
  240. rasa/dialogue_understanding_test/du_test_runner.py +239 -10
  241. rasa/dialogue_understanding_test/du_test_schema.yml +161 -0
  242. rasa/dialogue_understanding_test/io.py +338 -20
  243. rasa/dialogue_understanding_test/test_case_simulation/__init__.py +0 -0
  244. rasa/dialogue_understanding_test/test_case_simulation/exception.py +28 -0
  245. rasa/dialogue_understanding_test/test_case_simulation/test_case_tracker_simulator.py +336 -0
  246. rasa/dialogue_understanding_test/utils.py +70 -0
  247. rasa/dialogue_understanding_test/validation.py +59 -4
  248. rasa/e2e_test/aggregate_test_stats_calculator.py +1 -1
  249. rasa/e2e_test/assertions.py +1 -1
  250. rasa/e2e_test/e2e_config.py +1 -1
  251. rasa/e2e_test/e2e_test_case.py +3 -4
  252. rasa/e2e_test/e2e_test_converter.py +2 -3
  253. rasa/e2e_test/e2e_test_coverage_report.py +6 -6
  254. rasa/e2e_test/e2e_test_result.py +1 -1
  255. rasa/e2e_test/e2e_test_runner.py +134 -31
  256. rasa/e2e_test/stub_custom_action.py +1 -1
  257. rasa/e2e_test/utils/e2e_yaml_utils.py +1 -1
  258. rasa/e2e_test/utils/io.py +132 -65
  259. rasa/e2e_test/utils/validation.py +1 -1
  260. rasa/engine/caching.py +5 -7
  261. rasa/engine/constants.py +1 -1
  262. rasa/engine/graph.py +2 -2
  263. rasa/engine/recipes/default_components.py +13 -15
  264. rasa/engine/recipes/recipe.py +2 -2
  265. rasa/engine/runner/dask.py +2 -2
  266. rasa/engine/runner/interface.py +1 -0
  267. rasa/engine/storage/local_model_storage.py +5 -4
  268. rasa/engine/storage/resource.py +2 -1
  269. rasa/engine/storage/storage.py +5 -3
  270. rasa/engine/training/components.py +2 -1
  271. rasa/engine/training/fingerprinting.py +4 -2
  272. rasa/engine/training/graph_trainer.py +4 -4
  273. rasa/engine/training/hooks.py +2 -2
  274. rasa/engine/validation.py +34 -33
  275. rasa/exceptions.py +3 -2
  276. rasa/graph_components/converters/nlu_message_converter.py +3 -3
  277. rasa/graph_components/providers/domain_for_core_training_provider.py +3 -3
  278. rasa/graph_components/providers/domain_provider.py +3 -2
  279. rasa/graph_components/providers/flows_provider.py +2 -3
  280. rasa/graph_components/providers/forms_provider.py +4 -4
  281. rasa/graph_components/providers/nlu_training_data_provider.py +5 -3
  282. rasa/graph_components/providers/responses_provider.py +4 -4
  283. rasa/graph_components/providers/rule_only_provider.py +3 -2
  284. rasa/graph_components/providers/story_graph_provider.py +8 -8
  285. rasa/graph_components/providers/training_tracker_provider.py +3 -2
  286. rasa/graph_components/validators/default_recipe_validator.py +16 -16
  287. rasa/graph_components/validators/finetuning_validator.py +10 -8
  288. rasa/hooks.py +18 -12
  289. rasa/jupyter.py +2 -2
  290. rasa/llm_fine_tuning/annotation_module.py +4 -4
  291. rasa/llm_fine_tuning/conversations.py +6 -6
  292. rasa/llm_fine_tuning/llm_data_preparation_module.py +1 -1
  293. rasa/llm_fine_tuning/paraphrasing/conversation_rephraser.py +4 -4
  294. rasa/llm_fine_tuning/paraphrasing/rephrase_validator.py +1 -1
  295. rasa/llm_fine_tuning/paraphrasing_module.py +1 -1
  296. rasa/llm_fine_tuning/storage.py +3 -3
  297. rasa/markers/marker.py +2 -3
  298. rasa/markers/marker_base.py +1 -2
  299. rasa/markers/upload.py +2 -2
  300. rasa/markers/validate.py +2 -3
  301. rasa/model.py +3 -5
  302. rasa/model_manager/config.py +1 -1
  303. rasa/model_manager/model_api.py +5 -4
  304. rasa/model_manager/runner_service.py +6 -6
  305. rasa/model_manager/socket_bridge.py +8 -3
  306. rasa/model_manager/studio_jwt_auth.py +1 -0
  307. rasa/model_manager/trainer_service.py +9 -7
  308. rasa/model_manager/utils.py +1 -1
  309. rasa/model_manager/warm_rasa_process.py +14 -8
  310. rasa/model_service.py +5 -6
  311. rasa/model_testing.py +13 -15
  312. rasa/nlu/classifiers/diet_classifier.py +72 -73
  313. rasa/nlu/classifiers/fallback_classifier.py +9 -11
  314. rasa/nlu/classifiers/keyword_intent_classifier.py +7 -6
  315. rasa/nlu/classifiers/logistic_regression_classifier.py +3 -3
  316. rasa/nlu/classifiers/mitie_intent_classifier.py +5 -4
  317. rasa/nlu/classifiers/regex_message_handler.py +3 -2
  318. rasa/nlu/classifiers/sklearn_intent_classifier.py +2 -2
  319. rasa/nlu/convert.py +2 -2
  320. rasa/nlu/emulators/dialogflow.py +3 -3
  321. rasa/nlu/emulators/luis.py +5 -5
  322. rasa/nlu/emulators/no_emulator.py +1 -0
  323. rasa/nlu/emulators/wit.py +4 -4
  324. rasa/nlu/extractors/crf_entity_extractor.py +11 -11
  325. rasa/nlu/extractors/duckling_entity_extractor.py +7 -6
  326. rasa/nlu/extractors/entity_synonyms.py +10 -9
  327. rasa/nlu/extractors/extractor.py +16 -16
  328. rasa/nlu/extractors/mitie_entity_extractor.py +10 -9
  329. rasa/nlu/extractors/regex_entity_extractor.py +11 -10
  330. rasa/nlu/extractors/spacy_entity_extractor.py +2 -2
  331. rasa/nlu/featurizers/dense_featurizer/convert_featurizer.py +15 -14
  332. rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py +2 -1
  333. rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py +10 -9
  334. rasa/nlu/featurizers/dense_featurizer/mitie_featurizer.py +9 -7
  335. rasa/nlu/featurizers/dense_featurizer/spacy_featurizer.py +13 -12
  336. rasa/nlu/featurizers/featurizer.py +5 -4
  337. rasa/nlu/featurizers/sparse_featurizer/count_vectors_featurizer.py +6 -6
  338. rasa/nlu/featurizers/sparse_featurizer/lexical_syntactic_featurizer.py +4 -4
  339. rasa/nlu/featurizers/sparse_featurizer/regex_featurizer.py +4 -4
  340. rasa/nlu/featurizers/sparse_featurizer/sparse_featurizer.py +2 -0
  341. rasa/nlu/model.py +0 -1
  342. rasa/nlu/selectors/response_selector.py +67 -68
  343. rasa/nlu/test.py +38 -38
  344. rasa/nlu/tokenizers/jieba_tokenizer.py +1 -2
  345. rasa/nlu/tokenizers/mitie_tokenizer.py +2 -2
  346. rasa/nlu/tokenizers/spacy_tokenizer.py +3 -3
  347. rasa/nlu/tokenizers/tokenizer.py +6 -7
  348. rasa/nlu/tokenizers/whitespace_tokenizer.py +1 -1
  349. rasa/nlu/utils/bilou_utils.py +7 -7
  350. rasa/nlu/utils/hugging_face/registry.py +22 -22
  351. rasa/nlu/utils/hugging_face/transformers_pre_post_processors.py +2 -1
  352. rasa/nlu/utils/mitie_utils.py +2 -1
  353. rasa/nlu/utils/pattern_utils.py +1 -1
  354. rasa/nlu/utils/spacy_utils.py +3 -3
  355. rasa/plugin.py +12 -1
  356. rasa/server.py +37 -1
  357. rasa/shared/constants.py +22 -2
  358. rasa/shared/core/command_payload_reader.py +15 -7
  359. rasa/shared/core/constants.py +4 -1
  360. rasa/shared/core/conversation.py +1 -2
  361. rasa/shared/core/events.py +47 -37
  362. rasa/shared/core/flows/__init__.py +0 -1
  363. rasa/shared/core/flows/flow.py +11 -11
  364. rasa/shared/core/flows/flow_step.py +19 -13
  365. rasa/shared/core/flows/flow_step_links.py +21 -14
  366. rasa/shared/core/flows/flow_step_sequence.py +6 -4
  367. rasa/shared/core/flows/flows_list.py +3 -3
  368. rasa/shared/core/flows/nlu_trigger.py +1 -1
  369. rasa/shared/core/flows/steps/__init__.py +2 -2
  370. rasa/shared/core/flows/steps/action.py +4 -3
  371. rasa/shared/core/flows/steps/call.py +4 -4
  372. rasa/shared/core/flows/steps/collect.py +7 -4
  373. rasa/shared/core/flows/steps/continuation.py +3 -1
  374. rasa/shared/core/flows/steps/end.py +3 -1
  375. rasa/shared/core/flows/steps/internal.py +3 -2
  376. rasa/shared/core/flows/steps/link.py +6 -4
  377. rasa/shared/core/flows/steps/no_operation.py +7 -5
  378. rasa/shared/core/flows/steps/set_slots.py +4 -3
  379. rasa/shared/core/flows/steps/start.py +3 -1
  380. rasa/shared/core/flows/utils.py +1 -0
  381. rasa/shared/core/flows/validation.py +3 -5
  382. rasa/shared/core/generator.py +20 -21
  383. rasa/shared/core/slot_mappings.py +15 -15
  384. rasa/shared/core/slots.py +3 -3
  385. rasa/shared/core/trackers.py +31 -31
  386. rasa/shared/core/training_data/loading.py +1 -1
  387. rasa/shared/core/training_data/story_reader/story_reader.py +3 -3
  388. rasa/shared/core/training_data/story_reader/story_step_builder.py +4 -4
  389. rasa/shared/core/training_data/story_reader/yaml_story_reader.py +29 -31
  390. rasa/shared/core/training_data/story_writer/yaml_story_writer.py +22 -24
  391. rasa/shared/core/training_data/structures.py +11 -12
  392. rasa/shared/core/training_data/visualization.py +10 -10
  393. rasa/shared/data.py +6 -6
  394. rasa/shared/engine/caching.py +0 -1
  395. rasa/shared/exceptions.py +2 -2
  396. rasa/shared/importers/rasa.py +5 -6
  397. rasa/shared/importers/utils.py +1 -1
  398. rasa/shared/nlu/constants.py +3 -0
  399. rasa/shared/nlu/training_data/entities_parser.py +6 -6
  400. rasa/shared/nlu/training_data/features.py +3 -3
  401. rasa/shared/nlu/training_data/formats/__init__.py +1 -1
  402. rasa/shared/nlu/training_data/formats/dialogflow.py +4 -5
  403. rasa/shared/nlu/training_data/formats/luis.py +7 -8
  404. rasa/shared/nlu/training_data/formats/rasa.py +4 -5
  405. rasa/shared/nlu/training_data/formats/rasa_yaml.py +17 -16
  406. rasa/shared/nlu/training_data/formats/readerwriter.py +8 -11
  407. rasa/shared/nlu/training_data/formats/wit.py +3 -4
  408. rasa/shared/nlu/training_data/loading.py +4 -4
  409. rasa/shared/nlu/training_data/lookup_tables_parser.py +1 -1
  410. rasa/shared/nlu/training_data/message.py +13 -14
  411. rasa/shared/nlu/training_data/schemas/data_schema.py +1 -1
  412. rasa/shared/nlu/training_data/schemas/responses.yml +1 -0
  413. rasa/shared/nlu/training_data/synonyms_parser.py +3 -3
  414. rasa/shared/nlu/training_data/training_data.py +12 -13
  415. rasa/shared/nlu/training_data/util.py +11 -10
  416. rasa/shared/providers/_configs/azure_openai_client_config.py +3 -119
  417. rasa/shared/providers/_configs/client_config.py +1 -3
  418. rasa/shared/providers/_configs/default_litellm_client_config.py +1 -3
  419. rasa/shared/providers/_configs/huggingface_local_embedding_client_config.py +1 -3
  420. rasa/shared/providers/_configs/litellm_router_client_config.py +1 -3
  421. rasa/shared/providers/_configs/model_group_config.py +2 -7
  422. rasa/shared/providers/_configs/openai_client_config.py +1 -3
  423. rasa/shared/providers/_configs/rasa_llm_client_config.py +1 -3
  424. rasa/shared/providers/_configs/self_hosted_llm_client_config.py +1 -3
  425. rasa/shared/providers/_configs/utils.py +1 -0
  426. rasa/shared/providers/_ssl_verification_utils.py +5 -6
  427. rasa/shared/providers/_utils.py +5 -5
  428. rasa/shared/providers/embedding/_base_litellm_embedding_client.py +1 -1
  429. rasa/shared/providers/embedding/azure_openai_embedding_client.py +3 -26
  430. rasa/shared/providers/embedding/embedding_client.py +1 -1
  431. rasa/shared/providers/embedding/litellm_router_embedding_client.py +1 -3
  432. rasa/shared/providers/llm/_base_litellm_client.py +1 -3
  433. rasa/shared/providers/llm/azure_openai_llm_client.py +25 -79
  434. rasa/shared/providers/llm/default_litellm_llm_client.py +1 -3
  435. rasa/shared/providers/llm/litellm_router_llm_client.py +2 -21
  436. rasa/shared/providers/llm/llm_client.py +1 -3
  437. rasa/shared/providers/llm/llm_response.py +41 -2
  438. rasa/shared/providers/llm/openai_llm_client.py +3 -9
  439. rasa/shared/providers/llm/rasa_llm_client.py +6 -20
  440. rasa/shared/providers/llm/self_hosted_llm_client.py +3 -9
  441. rasa/shared/providers/mappings.py +18 -19
  442. rasa/shared/providers/router/_base_litellm_router_client.py +1 -3
  443. rasa/shared/providers/router/router_client.py +1 -3
  444. rasa/shared/utils/cli.py +1 -1
  445. rasa/shared/utils/common.py +1 -1
  446. rasa/shared/utils/health_check/embeddings_health_check_mixin.py +1 -1
  447. rasa/shared/utils/health_check/health_check.py +3 -3
  448. rasa/shared/utils/health_check/llm_health_check_mixin.py +1 -1
  449. rasa/shared/utils/io.py +1 -1
  450. rasa/shared/utils/llm.py +5 -9
  451. rasa/shared/utils/pykwalify_extensions.py +1 -1
  452. rasa/shared/utils/schemas/events.py +1 -1
  453. rasa/shared/utils/yaml.py +29 -26
  454. rasa/studio/auth.py +3 -3
  455. rasa/studio/config.py +1 -2
  456. rasa/studio/data_handler.py +3 -3
  457. rasa/studio/download.py +1 -1
  458. rasa/studio/results_logger.py +3 -3
  459. rasa/studio/upload.py +2 -0
  460. rasa/telemetry.py +31 -0
  461. rasa/tracing/config.py +3 -3
  462. rasa/tracing/instrumentation/attribute_extractors.py +54 -0
  463. rasa/tracing/instrumentation/instrumentation.py +25 -5
  464. rasa/tracing/instrumentation/intentless_policy_instrumentation.py +1 -1
  465. rasa/tracing/instrumentation/metrics.py +11 -11
  466. rasa/tracing/metric_instrument_provider.py +14 -14
  467. rasa/utils/common.py +12 -9
  468. rasa/utils/endpoints.py +1 -1
  469. rasa/utils/io.py +7 -7
  470. rasa/utils/licensing.py +3 -4
  471. rasa/utils/log_utils.py +7 -6
  472. rasa/utils/ml_utils.py +1 -0
  473. rasa/utils/plotting.py +3 -3
  474. rasa/utils/sanic_error_handler.py +1 -1
  475. rasa/utils/tensorflow/callback.py +2 -2
  476. rasa/utils/tensorflow/crf.py +2 -2
  477. rasa/utils/tensorflow/data_generator.py +5 -5
  478. rasa/utils/tensorflow/environment.py +3 -3
  479. rasa/utils/tensorflow/feature_array.py +2 -3
  480. rasa/utils/tensorflow/layers.py +18 -12
  481. rasa/utils/tensorflow/layers_utils.py +2 -1
  482. rasa/utils/tensorflow/metrics.py +2 -2
  483. rasa/utils/tensorflow/model_data.py +7 -7
  484. rasa/utils/tensorflow/model_data_utils.py +10 -9
  485. rasa/utils/tensorflow/models.py +31 -32
  486. rasa/utils/tensorflow/rasa_layers.py +20 -19
  487. rasa/utils/tensorflow/types.py +2 -1
  488. rasa/utils/train_utils.py +23 -21
  489. rasa/utils/url_tools.py +1 -1
  490. rasa/validator.py +17 -1
  491. rasa/version.py +1 -1
  492. {rasa_pro-3.12.0.dev2.dist-info → rasa_pro-3.12.0.dev4.dist-info}/METADATA +9 -10
  493. rasa_pro-3.12.0.dev4.dist-info/RECORD +800 -0
  494. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-855bc5b3-b080d6f2.js +0 -1
  495. rasa/shared/providers/_configs/azure_entra_id_client_creds.py +0 -40
  496. rasa/shared/providers/_configs/azure_entra_id_config.py +0 -533
  497. rasa/shared/providers/_configs/oauth_config.py +0 -33
  498. rasa/shared/providers/constants.py +0 -6
  499. rasa_pro-3.12.0.dev2.dist-info/RECORD +0 -793
  500. {rasa_pro-3.12.0.dev2.dist-info → rasa_pro-3.12.0.dev4.dist-info}/NOTICE +0 -0
  501. {rasa_pro-3.12.0.dev2.dist-info → rasa_pro-3.12.0.dev4.dist-info}/WHEEL +0 -0
  502. {rasa_pro-3.12.0.dev2.dist-info → rasa_pro-3.12.0.dev4.dist-info}/entry_points.txt +0 -0
@@ -1,12 +1,12 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  import abc
4
- from typing import Text, Dict, Any, Optional, Tuple, Set
4
+ from typing import Any, Dict, Optional, Set, Text, Tuple
5
5
 
6
6
  import rasa.shared.utils.io
7
7
  from rasa.engine.graph import GraphModelConfiguration
8
- from rasa.shared.exceptions import RasaException
9
8
  from rasa.shared.data import TrainingType
9
+ from rasa.shared.exceptions import RasaException
10
10
 
11
11
 
12
12
  class InvalidRecipeException(RasaException):
@@ -1,11 +1,11 @@
1
1
  from __future__ import annotations
2
2
 
3
+ import asyncio
3
4
  import logging
4
5
  from typing import Any, Dict, List, Optional, Text
5
6
 
6
- import dask.local
7
7
  import dask.core
8
- import asyncio
8
+ import dask.local
9
9
 
10
10
  from rasa.engine.exceptions import GraphRunError
11
11
  from rasa.engine.graph import ExecutionContext, GraphNode, GraphNodeHook, GraphSchema
@@ -1,4 +1,5 @@
1
1
  from __future__ import annotations
2
+
2
3
  from abc import ABC, abstractmethod
3
4
  from typing import Any, Dict, List, Optional, Text
4
5
 
@@ -8,17 +8,18 @@ import uuid
8
8
  from contextlib import contextmanager
9
9
  from datetime import datetime
10
10
  from pathlib import Path
11
- from tarsafe import TarSafe
12
11
  from typing import Generator, Optional, Text, Tuple, Union
13
12
 
14
- import rasa.utils.common
13
+ from tarsafe import TarSafe
14
+
15
+ import rasa.model
15
16
  import rasa.shared.utils.io
16
- from rasa.engine.storage.storage import ModelMetadata, ModelStorage
17
+ import rasa.utils.common
17
18
  from rasa.engine.graph import GraphModelConfiguration
18
19
  from rasa.engine.storage.resource import Resource
20
+ from rasa.engine.storage.storage import ModelMetadata, ModelStorage
19
21
  from rasa.exceptions import UnsupportedModelVersionError
20
22
  from rasa.shared.core.domain import Domain
21
- import rasa.model
22
23
 
23
24
  logger = logging.getLogger(__name__)
24
25
 
@@ -1,10 +1,11 @@
1
1
  from __future__ import annotations
2
+
2
3
  import logging
3
4
  import typing
5
+ import uuid
4
6
  from dataclasses import dataclass, field
5
7
  from pathlib import Path
6
8
  from typing import Text
7
- import uuid
8
9
 
9
10
  import rasa.utils.common
10
11
  import rasa.utils.io
@@ -1,4 +1,5 @@
1
1
  from __future__ import annotations
2
+
2
3
  import abc
3
4
  import logging
4
5
  import typing
@@ -6,17 +7,18 @@ from contextlib import contextmanager
6
7
  from dataclasses import dataclass
7
8
  from datetime import datetime
8
9
  from pathlib import Path
9
- from typing import Tuple, Union, Text, Generator, Dict, Any, Optional
10
+ from typing import Any, Dict, Generator, Optional, Text, Tuple, Union
11
+
10
12
  from packaging import version
11
13
 
12
14
  from rasa.constants import MINIMUM_COMPATIBLE_VERSION
13
- from rasa.exceptions import UnsupportedModelVersionError
14
15
  from rasa.engine.storage.resource import Resource
16
+ from rasa.exceptions import UnsupportedModelVersionError
15
17
  from rasa.shared.core.domain import Domain
16
18
  from rasa.shared.data import TrainingType
17
19
 
18
20
  if typing.TYPE_CHECKING:
19
- from rasa.engine.graph import GraphSchema, GraphModelConfiguration
21
+ from rasa.engine.graph import GraphModelConfiguration, GraphSchema
20
22
 
21
23
  logger = logging.getLogger(__name__)
22
24
 
@@ -1,7 +1,8 @@
1
1
  from __future__ import annotations
2
- from typing import Any, Dict, Optional, Text, Type
2
+
3
3
  import dataclasses
4
4
  import uuid
5
+ from typing import Any, Dict, Optional, Text, Type
5
6
 
6
7
  from rasa.engine.caching import Cacheable, TrainingCache
7
8
  from rasa.engine.graph import ExecutionContext, GraphComponent, SchemaNode
@@ -1,10 +1,12 @@
1
1
  import inspect
2
2
  import logging
3
3
  from typing import Any, Dict, Text, Type
4
- from typing_extensions import Protocol, runtime_checkable
4
+
5
5
  import importlib_metadata
6
- import rasa.utils.common
6
+ from typing_extensions import Protocol, runtime_checkable
7
+
7
8
  import rasa.shared.utils.io
9
+ import rasa.utils.common
8
10
  from rasa.engine.graph import GraphComponent
9
11
 
10
12
  logger = logging.getLogger(__name__)
@@ -4,16 +4,16 @@ from pathlib import Path
4
4
  from typing import Any, Dict, Text, Type, Union
5
5
 
6
6
  from rasa.engine.caching import TrainingCache
7
- from rasa.engine.graph import ExecutionContext, GraphSchema, GraphModelConfiguration
8
7
  from rasa.engine.constants import PLACEHOLDER_IMPORTER
8
+ from rasa.engine.graph import ExecutionContext, GraphModelConfiguration, GraphSchema
9
9
  from rasa.engine.runner.interface import GraphRunner
10
- from rasa.engine.storage.storage import ModelStorage, ModelMetadata
10
+ from rasa.engine.storage.storage import ModelMetadata, ModelStorage
11
11
  from rasa.engine.training.components import (
12
- PrecomputedValueProvider,
13
12
  FingerprintComponent,
14
13
  FingerprintStatus,
14
+ PrecomputedValueProvider,
15
15
  )
16
- from rasa.engine.training.hooks import TrainingHook, LoggingHook
16
+ from rasa.engine.training.hooks import LoggingHook, TrainingHook
17
17
  from rasa.shared.importers.importer import TrainingDataImporter
18
18
 
19
19
  logger = logging.getLogger(__name__)
@@ -1,12 +1,12 @@
1
1
  import logging
2
2
  from typing import Any, Dict, Text, Type
3
3
 
4
+ import rasa.shared.utils.io
4
5
  from rasa.engine.caching import TrainingCache
5
6
  from rasa.engine.graph import ExecutionContext, GraphNodeHook, GraphSchema, SchemaNode
6
7
  from rasa.engine.storage.storage import ModelStorage
7
- from rasa.engine.training.components import PrecomputedValueProvider
8
- import rasa.shared.utils.io
9
8
  from rasa.engine.training import fingerprinting
9
+ from rasa.engine.training.components import PrecomputedValueProvider
10
10
 
11
11
  logger = logging.getLogger(__name__)
12
12
 
rasa/engine/validation.py CHANGED
@@ -5,31 +5,32 @@ import re
5
5
  import sys
6
6
  import typing
7
7
  from typing import (
8
- Optional,
8
+ Any,
9
9
  Callable,
10
+ Dict,
11
+ List,
12
+ Literal,
13
+ Optional,
14
+ Set,
10
15
  Text,
11
16
  Tuple,
12
- Dict,
13
17
  Type,
14
- Any,
15
- Set,
16
- Union,
17
18
  TypeVar,
18
- List,
19
- Literal,
19
+ Union,
20
20
  )
21
21
 
22
- import rasa.utils.common
23
22
  import structlog
24
23
  import typing_utils
25
- from rasa.core import IntentlessPolicy, ContextualResponseRephraser
24
+
25
+ import rasa.utils.common
26
+ from rasa.core import ContextualResponseRephraser, IntentlessPolicy
26
27
  from rasa.core.policies.policy import PolicyPrediction
27
28
  from rasa.core.utils import AvailableEndpoints
28
29
  from rasa.dialogue_understanding.coexistence.constants import (
29
- NLU_ENTRY,
30
30
  CALM_ENTRY,
31
- STICKY,
31
+ NLU_ENTRY,
32
32
  NON_STICKY,
33
+ STICKY,
33
34
  )
34
35
  from rasa.dialogue_understanding.coexistence.intent_based_router import (
35
36
  IntentBasedRouter,
@@ -39,52 +40,52 @@ from rasa.dialogue_understanding.generator import (
39
40
  LLMBasedCommandGenerator,
40
41
  )
41
42
  from rasa.dialogue_understanding.generator.constants import (
42
- LLM_CONFIG_KEY,
43
43
  FLOW_RETRIEVAL_KEY,
44
+ LLM_CONFIG_KEY,
44
45
  )
45
46
  from rasa.dialogue_understanding.patterns.chitchat import FLOW_PATTERN_CHITCHAT
46
47
  from rasa.engine.constants import RESERVED_PLACEHOLDERS
47
48
  from rasa.engine.exceptions import GraphSchemaValidationException
48
49
  from rasa.engine.graph import (
49
- GraphSchema,
50
- GraphComponent,
51
- SchemaNode,
52
50
  ExecutionContext,
51
+ GraphComponent,
53
52
  GraphModelConfiguration,
53
+ GraphSchema,
54
+ SchemaNode,
54
55
  )
55
56
  from rasa.engine.storage.resource import Resource
56
- from rasa.engine.storage.storage import ModelStorage, ModelMetadata
57
+ from rasa.engine.storage.storage import ModelMetadata, ModelStorage
57
58
  from rasa.engine.training.fingerprinting import Fingerprintable
58
59
  from rasa.shared.constants import (
59
- DOCS_URL_GRAPH_COMPONENTS,
60
- ROUTE_TO_CALM_SLOT,
61
- EMBEDDINGS_CONFIG_KEY,
62
60
  API_BASE_CONFIG_KEY,
63
- DEPLOYMENT_CONFIG_KEY,
64
- API_VERSION_CONFIG_KEY,
65
61
  API_KEY,
62
+ API_TYPE_CONFIG_KEY,
63
+ API_VERSION_CONFIG_KEY,
64
+ AWS_ACCESS_KEY_ID_CONFIG_KEY,
66
65
  AWS_REGION_NAME_CONFIG_KEY,
66
+ AWS_SECRET_ACCESS_KEY_CONFIG_KEY,
67
+ AWS_SESSION_TOKEN_CONFIG_KEY,
68
+ DEPLOYMENT_CONFIG_KEY,
69
+ DOCS_URL_GRAPH_COMPONENTS,
70
+ EMBEDDINGS_CONFIG_KEY,
71
+ MODEL_GROUP_CONFIG_KEY,
67
72
  MODEL_GROUP_ID_CONFIG_KEY,
68
- ROUTER_CONFIG_KEY,
69
73
  MODELS_CONFIG_KEY,
70
- MODEL_GROUP_CONFIG_KEY,
71
- ROUTING_STRATEGY_CONFIG_KEY,
72
- VALID_ROUTING_STRATEGIES,
73
- ROUTING_STRATEGIES_REQUIRING_REDIS_CACHE,
74
- ROUTING_STRATEGIES_NOT_REQUIRING_CACHE,
74
+ PROVIDER_CONFIG_KEY,
75
75
  REDIS_HOST_CONFIG_KEY,
76
- AWS_ACCESS_KEY_ID_CONFIG_KEY,
77
- AWS_SECRET_ACCESS_KEY_CONFIG_KEY,
78
- AWS_SESSION_TOKEN_CONFIG_KEY,
76
+ ROUTE_TO_CALM_SLOT,
77
+ ROUTER_CONFIG_KEY,
78
+ ROUTING_STRATEGIES_NOT_REQUIRING_CACHE,
79
+ ROUTING_STRATEGIES_REQUIRING_REDIS_CACHE,
80
+ ROUTING_STRATEGY_CONFIG_KEY,
79
81
  SENSITIVE_DATA,
80
82
  USE_CHAT_COMPLETIONS_ENDPOINT_CONFIG_KEY,
81
- API_TYPE_CONFIG_KEY,
82
83
  VALID_PROVIDERS_FOR_API_TYPE_CONFIG_KEY,
83
- PROVIDER_CONFIG_KEY,
84
+ VALID_ROUTING_STRATEGIES,
84
85
  )
85
86
  from rasa.shared.core.constants import ACTION_RESET_ROUTING, ACTION_TRIGGER_CHITCHAT
86
87
  from rasa.shared.core.domain import Domain
87
- from rasa.shared.core.flows import FlowsList, Flow
88
+ from rasa.shared.core.flows import Flow, FlowsList
88
89
  from rasa.shared.core.slots import Slot
89
90
  from rasa.shared.exceptions import RasaException
90
91
  from rasa.shared.nlu.training_data.message import Message
rasa/exceptions.py CHANGED
@@ -1,9 +1,10 @@
1
+ from dataclasses import dataclass
1
2
  from typing import Text
3
+
2
4
  from packaging import version
3
- from dataclasses import dataclass
4
5
 
5
- from rasa.shared.exceptions import RasaException
6
6
  from rasa.constants import MINIMUM_COMPATIBLE_VERSION
7
+ from rasa.shared.exceptions import RasaException
7
8
 
8
9
 
9
10
  @dataclass
@@ -1,9 +1,9 @@
1
1
  from __future__ import annotations
2
- from typing import Dict, Text, Any, List
3
2
 
4
- from rasa.core.channels.channel import UserMessage
3
+ from typing import Any, Dict, List, Text
5
4
 
6
- from rasa.engine.graph import GraphComponent, ExecutionContext
5
+ from rasa.core.channels.channel import UserMessage
6
+ from rasa.engine.graph import ExecutionContext, GraphComponent
7
7
  from rasa.engine.storage.resource import Resource
8
8
  from rasa.engine.storage.storage import ModelStorage
9
9
  from rasa.shared.nlu.constants import TEXT, TEXT_TOKENS
@@ -1,13 +1,13 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  import copy
4
- from typing import Dict, Text, Any
4
+ from typing import Any, Dict, Text
5
5
 
6
- from rasa.engine.graph import GraphComponent, ExecutionContext
6
+ from rasa.engine.graph import ExecutionContext, GraphComponent
7
7
  from rasa.engine.storage.resource import Resource
8
8
  from rasa.engine.storage.storage import ModelStorage
9
9
  from rasa.shared.constants import REQUIRED_SLOTS_KEY
10
- from rasa.shared.core.domain import KEY_RESPONSES, Domain, SESSION_CONFIG_KEY, KEY_FORMS
10
+ from rasa.shared.core.domain import KEY_FORMS, KEY_RESPONSES, SESSION_CONFIG_KEY, Domain
11
11
 
12
12
 
13
13
  class DomainForCoreTrainingProvider(GraphComponent):
@@ -1,7 +1,8 @@
1
1
  from __future__ import annotations
2
- from typing import Dict, Text, Any, Optional
3
2
 
4
- from rasa.engine.graph import GraphComponent, ExecutionContext
3
+ from typing import Any, Dict, Optional, Text
4
+
5
+ from rasa.engine.graph import ExecutionContext, GraphComponent
5
6
  from rasa.engine.storage.resource import Resource
6
7
  from rasa.engine.storage.storage import ModelStorage
7
8
  from rasa.shared.core.domain import Domain
@@ -5,10 +5,9 @@ from typing import Any, Dict, Text
5
5
  from rasa.engine.graph import ExecutionContext, GraphComponent
6
6
  from rasa.engine.storage.resource import Resource
7
7
  from rasa.engine.storage.storage import ModelStorage
8
- from rasa.shared.importers.importer import TrainingDataImporter
9
- from rasa.shared.core.flows.yaml_flows_io import YAMLFlowsReader, YamlFlowsWriter
10
-
11
8
  from rasa.shared.core.flows import FlowsList
9
+ from rasa.shared.core.flows.yaml_flows_io import YAMLFlowsReader, YamlFlowsWriter
10
+ from rasa.shared.importers.importer import TrainingDataImporter
12
11
 
13
12
  FLOWS_PERSISTENCE_FILE_NAME = "flows.yml"
14
13
 
@@ -1,13 +1,13 @@
1
1
  from __future__ import annotations
2
- import dataclasses
3
2
 
4
- from typing import Dict, Text, Any
3
+ import dataclasses
4
+ from typing import Any, Dict, Text
5
5
 
6
- from rasa.engine.graph import GraphComponent, ExecutionContext
6
+ import rasa.shared.utils.io
7
+ from rasa.engine.graph import ExecutionContext, GraphComponent
7
8
  from rasa.engine.storage.resource import Resource
8
9
  from rasa.engine.storage.storage import ModelStorage
9
10
  from rasa.shared.core.domain import Domain
10
- import rasa.shared.utils.io
11
11
 
12
12
 
13
13
  @dataclasses.dataclass
@@ -1,12 +1,14 @@
1
1
  from __future__ import annotations
2
- from typing import Dict, Text, Any
3
- from rasa.engine.graph import GraphComponent, ExecutionContext
2
+
3
+ from typing import Any, Dict, Text
4
+
5
+ from rasa.engine.graph import ExecutionContext, GraphComponent
4
6
  from rasa.engine.storage.resource import Resource
5
7
  from rasa.engine.storage.storage import ModelStorage
6
8
  from rasa.shared.importers.importer import TrainingDataImporter
7
9
  from rasa.shared.nlu.training_data.training_data import (
8
- TrainingData,
9
10
  DEFAULT_TRAINING_DATA_OUTPUT_PATH,
11
+ TrainingData,
10
12
  )
11
13
 
12
14
 
@@ -1,13 +1,13 @@
1
1
  from __future__ import annotations
2
- import dataclasses
3
2
 
4
- from typing import Dict, List, Text, Any
3
+ import dataclasses
4
+ from typing import Any, Dict, List, Text
5
5
 
6
- from rasa.engine.graph import GraphComponent, ExecutionContext
6
+ import rasa.shared.utils.io
7
+ from rasa.engine.graph import ExecutionContext, GraphComponent
7
8
  from rasa.engine.storage.resource import Resource
8
9
  from rasa.engine.storage.storage import ModelStorage
9
10
  from rasa.shared.core.domain import Domain
10
- import rasa.shared.utils.io
11
11
 
12
12
 
13
13
  @dataclasses.dataclass
@@ -1,10 +1,11 @@
1
1
  from __future__ import annotations
2
+
2
3
  import dataclasses
3
4
  import logging
4
- from typing import Dict, Text, Any
5
+ from typing import Any, Dict, Text
5
6
 
6
7
  import rasa.shared.utils.io
7
- from rasa.engine.graph import GraphComponent, ExecutionContext
8
+ from rasa.engine.graph import ExecutionContext, GraphComponent
8
9
  from rasa.engine.storage.resource import Resource
9
10
  from rasa.engine.storage.storage import ModelStorage
10
11
 
@@ -1,18 +1,18 @@
1
1
  from __future__ import annotations
2
- from typing import Dict, Text, Any, List
3
2
 
4
- from rasa.engine.graph import GraphComponent, ExecutionContext
3
+ from typing import Any, Dict, List, Text
4
+
5
+ from rasa.engine.graph import ExecutionContext, GraphComponent
5
6
  from rasa.engine.storage.resource import Resource
6
7
  from rasa.engine.storage.storage import ModelStorage
7
- from rasa.shared.core.training_data.structures import StoryGraph, StoryStep
8
- from rasa.shared.importers.importer import TrainingDataImporter
9
- from rasa.shared.core.training_data.story_writer.yaml_story_writer import (
10
- YAMLStoryWriter,
11
- )
12
8
  from rasa.shared.core.training_data.story_reader.yaml_story_reader import (
13
9
  YAMLStoryReader,
14
10
  )
15
-
11
+ from rasa.shared.core.training_data.story_writer.yaml_story_writer import (
12
+ YAMLStoryWriter,
13
+ )
14
+ from rasa.shared.core.training_data.structures import StoryGraph, StoryStep
15
+ from rasa.shared.importers.importer import TrainingDataImporter
16
16
 
17
17
  STORIES_PERSISTENCE_FILE_NAME = "stories.yml"
18
18
 
@@ -1,7 +1,8 @@
1
1
  from __future__ import annotations
2
- from typing import Dict, Text, Any, List
3
2
 
4
- from rasa.engine.graph import GraphComponent, ExecutionContext
3
+ from typing import Any, Dict, List, Text
4
+
5
+ from rasa.engine.graph import ExecutionContext, GraphComponent
5
6
  from rasa.engine.storage.resource import Resource
6
7
  from rasa.engine.storage.storage import ModelStorage
7
8
  from rasa.shared.core.domain import Domain
@@ -1,31 +1,32 @@
1
1
  from __future__ import annotations
2
+
2
3
  from collections import defaultdict
3
- from typing import Iterable, List, Dict, Text, Any, Set, Type, cast
4
+ from typing import Any, Dict, Iterable, List, Set, Text, Type, cast
4
5
 
6
+ import rasa.shared.utils.io
7
+ from rasa.core.constants import POLICY_PRIORITY
5
8
  from rasa.core.featurizers.precomputation import CoreFeaturizationInputConverter
9
+ from rasa.core.policies.flow_policy import FlowPolicy
10
+ from rasa.core.policies.memoization import AugmentedMemoizationPolicy, MemoizationPolicy
11
+ from rasa.core.policies.policy import Policy, SupportedData
12
+ from rasa.core.policies.rule_policy import RulePolicy
13
+ from rasa.core.policies.ted_policy import TEDPolicy
6
14
  from rasa.core.policies.unexpected_intent_policy import UnexpecTEDIntentPolicy
7
15
  from rasa.engine.graph import ExecutionContext, GraphComponent, GraphSchema, SchemaNode
8
- from rasa.engine.storage.storage import ModelStorage
9
16
  from rasa.engine.storage.resource import Resource
10
- from rasa.nlu.featurizers.featurizer import Featurizer
11
- from rasa.nlu.extractors.mitie_entity_extractor import MitieEntityExtractor
12
- from rasa.nlu.extractors.regex_entity_extractor import RegexEntityExtractor
17
+ from rasa.engine.storage.storage import ModelStorage
18
+ from rasa.nlu.classifiers.diet_classifier import DIETClassifier
13
19
  from rasa.nlu.extractors.crf_entity_extractor import (
14
20
  CRFEntityExtractor,
15
21
  CRFEntityExtractorOptions,
16
22
  )
17
23
  from rasa.nlu.extractors.entity_synonyms import EntitySynonymMapper
24
+ from rasa.nlu.extractors.mitie_entity_extractor import MitieEntityExtractor
25
+ from rasa.nlu.extractors.regex_entity_extractor import RegexEntityExtractor
26
+ from rasa.nlu.featurizers.featurizer import Featurizer
18
27
  from rasa.nlu.featurizers.sparse_featurizer.regex_featurizer import RegexFeaturizer
19
- from rasa.nlu.classifiers.diet_classifier import DIETClassifier
20
28
  from rasa.nlu.selectors.response_selector import ResponseSelector
21
29
  from rasa.nlu.tokenizers.tokenizer import Tokenizer
22
- from rasa.core.policies.rule_policy import RulePolicy
23
- from rasa.core.policies.policy import Policy, SupportedData
24
- from rasa.core.policies.memoization import AugmentedMemoizationPolicy, MemoizationPolicy
25
- from rasa.core.policies.ted_policy import TEDPolicy
26
- from rasa.core.policies.flow_policy import FlowPolicy
27
- from rasa.core.constants import POLICY_PRIORITY
28
- from rasa.shared.core.training_data.structures import RuleStep, StoryGraph
29
30
  from rasa.shared.constants import (
30
31
  DEFAULT_CONFIG_PATH,
31
32
  DOCS_URL_COMPONENTS,
@@ -33,18 +34,17 @@ from rasa.shared.constants import (
33
34
  DOCS_URL_NLU_BASED_POLICIES,
34
35
  DOCS_URL_RULES,
35
36
  )
36
- from rasa.shared.core.domain import Domain, InvalidDomain
37
37
  from rasa.shared.core.constants import (
38
38
  ACTION_BACK_NAME,
39
39
  ACTION_RESTART_NAME,
40
40
  USER_INTENT_BACK,
41
41
  USER_INTENT_RESTART,
42
42
  )
43
+ from rasa.shared.core.domain import Domain, InvalidDomain
44
+ from rasa.shared.core.training_data.structures import RuleStep, StoryGraph
43
45
  from rasa.shared.exceptions import InvalidConfigException
44
46
  from rasa.shared.importers.importer import TrainingDataImporter
45
47
  from rasa.shared.nlu.training_data.training_data import TrainingData
46
- import rasa.shared.utils.io
47
-
48
48
 
49
49
  # TODO: Can we replace this with the registered types from the regitry?
50
50
  TRAINABLE_EXTRACTORS = [MitieEntityExtractor, CRFEntityExtractor, DIETClassifier]
@@ -1,21 +1,23 @@
1
1
  from __future__ import annotations
2
- from typing import Dict, Text, Any, Optional
2
+
3
3
  import copy
4
4
  import logging
5
+ from typing import Any, Dict, Optional, Text
5
6
 
6
7
  from packaging import version
8
+
9
+ import rasa.shared.utils.io
7
10
  from rasa.constants import MINIMUM_COMPATIBLE_VERSION
8
- from rasa.engine.graph import GraphComponent, ExecutionContext
9
- from rasa.engine.storage.storage import ModelStorage
11
+ from rasa.engine.graph import ExecutionContext, GraphComponent
10
12
  from rasa.engine.storage.resource import Resource
11
- from rasa.shared.exceptions import InvalidConfigException
12
- from rasa.shared.core.domain import Domain
13
- from rasa.shared.importers.importer import TrainingDataImporter
14
- import rasa.shared.utils.io
15
- from rasa.utils.tensorflow.constants import EPOCHS
13
+ from rasa.engine.storage.storage import ModelStorage
16
14
  from rasa.graph_components.providers.domain_for_core_training_provider import (
17
15
  DomainForCoreTrainingProvider,
18
16
  )
17
+ from rasa.shared.core.domain import Domain
18
+ from rasa.shared.exceptions import InvalidConfigException
19
+ from rasa.shared.importers.importer import TrainingDataImporter
20
+ from rasa.utils.tensorflow.constants import EPOCHS
19
21
 
20
22
  FINGERPRINT_CONFIG = "fingerprint-config"
21
23
  FINGERPRINT_CORE = "fingerprint-core"
rasa/hooks.py CHANGED
@@ -1,21 +1,20 @@
1
1
  import argparse
2
2
  import logging
3
- from typing import Optional, TYPE_CHECKING, List, Text, Union
3
+ from typing import TYPE_CHECKING, List, Optional, Text, Union
4
4
 
5
5
  import pluggy
6
6
 
7
- from rasa.cli import SubParsersAction
8
- from rasa.cli import x as rasa_x
9
- from rasa.core.auth_retry_tracker_store import AuthRetryTrackerStore
10
- from rasa.core.secrets_manager.factory import load_secret_manager
11
- from rasa.tracing import config
12
- from rasa.utils.endpoints import EndpointConfig
7
+ # IMPORTANT: do not import anything from rasa here - use scoped imports
8
+ # this avoids circular imports, as the hooks are used in different places
9
+ # across the codebase.
13
10
 
14
11
  if TYPE_CHECKING:
12
+ from rasa.anonymization.anonymization_pipeline import AnonymizationPipeline
13
+ from rasa.cli import SubParsersAction
15
14
  from rasa.core.brokers.broker import EventBroker
16
15
  from rasa.core.tracker_store import TrackerStore
17
16
  from rasa.shared.core.domain import Domain
18
- from rasa.anonymization.anonymization_pipeline import AnonymizationPipeline
17
+ from rasa.utils.endpoints import EndpointConfig
19
18
 
20
19
  hookimpl = pluggy.HookimplMarker("rasa")
21
20
  logger = logging.getLogger(__name__)
@@ -23,13 +22,12 @@ logger = logging.getLogger(__name__)
23
22
 
24
23
  @hookimpl # type: ignore[misc]
25
24
  def refine_cli(
26
- subparsers: SubParsersAction,
25
+ subparsers: "SubParsersAction",
27
26
  parent_parsers: List[argparse.ArgumentParser],
28
27
  ) -> None:
29
- from rasa.cli import e2e_test, inspect, markers, dialogue_understanding_test
30
- from rasa.cli.studio import studio
31
-
28
+ from rasa.cli import dialogue_understanding_test, e2e_test, inspect, markers
32
29
  from rasa.cli import license as license_cli
30
+ from rasa.cli.studio import studio
33
31
 
34
32
  e2e_test.add_subparser(subparsers, parent_parsers)
35
33
  dialogue_understanding_test.add_subparser(subparsers, parent_parsers)
@@ -42,6 +40,9 @@ def refine_cli(
42
40
 
43
41
  @hookimpl # type: ignore[misc]
44
42
  def configure_commandline(cmdline_arguments: argparse.Namespace) -> Optional[Text]:
43
+ from rasa.cli import x as rasa_x
44
+ from rasa.tracing import config
45
+
45
46
  endpoints_file = None
46
47
 
47
48
  if cmdline_arguments.func.__name__ == "rasa_x":
@@ -68,6 +69,8 @@ def init_telemetry(endpoints_file: Optional[Text]) -> None:
68
69
 
69
70
  @hookimpl # type: ignore[misc]
70
71
  def init_managers(endpoints_file: Optional[Text]) -> None:
72
+ from rasa.core.secrets_manager.factory import load_secret_manager
73
+
71
74
  load_secret_manager(endpoints_file)
72
75
 
73
76
 
@@ -77,6 +80,9 @@ def create_tracker_store(
77
80
  domain: "Domain",
78
81
  event_broker: Optional["EventBroker"],
79
82
  ) -> "TrackerStore":
83
+ from rasa.core.auth_retry_tracker_store import AuthRetryTrackerStore
84
+ from rasa.utils.endpoints import EndpointConfig
85
+
80
86
  if isinstance(endpoint_config, EndpointConfig):
81
87
  return AuthRetryTrackerStore(
82
88
  endpoint_config=endpoint_config, domain=domain, event_broker=event_broker
rasa/jupyter.py CHANGED
@@ -3,10 +3,10 @@ import pprint as pretty_print
3
3
  import typing
4
4
  from typing import Any, Dict, Optional, Text
5
5
 
6
- from rasa.shared.exceptions import RasaException
7
- from rasa.shared.utils.cli import print_success
8
6
  import rasa.core.agent
9
7
  import rasa.utils.common
8
+ from rasa.shared.exceptions import RasaException
9
+ from rasa.shared.utils.cli import print_success
10
10
 
11
11
  if typing.TYPE_CHECKING:
12
12
  from rasa.core.agent import Agent