rasa-pro 3.11.4__py3-none-any.whl → 3.12.0__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 (580) hide show
  1. README.md +10 -13
  2. rasa/__main__.py +7 -7
  3. rasa/anonymization/anonymisation_rule_yaml_reader.py +1 -1
  4. rasa/anonymization/anonymization_pipeline.py +3 -3
  5. rasa/anonymization/anonymization_rule_executor.py +17 -11
  6. rasa/anonymization/anonymization_rule_orchestrator.py +2 -3
  7. rasa/cli/arguments/data.py +2 -2
  8. rasa/cli/arguments/default_arguments.py +1 -1
  9. rasa/cli/arguments/evaluate.py +2 -1
  10. rasa/cli/arguments/interactive.py +1 -1
  11. rasa/cli/arguments/run.py +1 -1
  12. rasa/cli/arguments/test.py +7 -5
  13. rasa/cli/arguments/train.py +3 -3
  14. rasa/cli/arguments/visualize.py +2 -2
  15. rasa/cli/arguments/x.py +1 -0
  16. rasa/cli/data.py +20 -3
  17. rasa/cli/dialogue_understanding_test.py +386 -0
  18. rasa/cli/evaluate.py +1 -1
  19. rasa/cli/export.py +6 -6
  20. rasa/cli/inspect.py +20 -1
  21. rasa/cli/interactive.py +4 -5
  22. rasa/cli/llm_fine_tuning.py +51 -16
  23. rasa/cli/markers.py +1 -2
  24. rasa/cli/project_templates/calm/actions/add_contact.py +1 -1
  25. rasa/cli/project_templates/calm/config.yml +2 -2
  26. rasa/cli/project_templates/calm/domain/list_contacts.yml +1 -2
  27. rasa/cli/project_templates/calm/domain/remove_contact.yml +1 -2
  28. rasa/cli/project_templates/calm/domain/shared.yml +1 -4
  29. rasa/cli/project_templates/calm/endpoints.yml +2 -2
  30. rasa/cli/project_templates/tutorial/actions/actions.py +3 -2
  31. rasa/cli/shell.py +5 -6
  32. rasa/cli/studio/download.py +1 -2
  33. rasa/cli/studio/studio.py +2 -3
  34. rasa/cli/studio/train.py +0 -1
  35. rasa/cli/telemetry.py +2 -2
  36. rasa/cli/test.py +11 -11
  37. rasa/cli/train.py +3 -0
  38. rasa/cli/utils.py +25 -5
  39. rasa/constants.py +0 -1
  40. rasa/core/__init__.py +0 -1
  41. rasa/core/actions/action.py +137 -208
  42. rasa/core/actions/action_handle_digressions.py +164 -0
  43. rasa/core/actions/action_hangup.py +1 -1
  44. rasa/core/actions/action_repeat_bot_messages.py +2 -2
  45. rasa/core/actions/action_run_slot_rejections.py +18 -6
  46. rasa/core/actions/action_trigger_chitchat.py +1 -1
  47. rasa/core/actions/action_trigger_flow.py +5 -5
  48. rasa/core/actions/action_trigger_search.py +1 -1
  49. rasa/core/actions/custom_action_executor.py +1 -1
  50. rasa/core/actions/direct_custom_actions_executor.py +1 -0
  51. rasa/core/actions/forms.py +22 -15
  52. rasa/core/actions/http_custom_action_executor.py +8 -1
  53. rasa/core/actions/loops.py +3 -3
  54. rasa/core/actions/two_stage_fallback.py +13 -13
  55. rasa/core/auth_retry_tracker_store.py +1 -2
  56. rasa/core/brokers/broker.py +2 -1
  57. rasa/core/brokers/file.py +1 -1
  58. rasa/core/brokers/kafka.py +8 -8
  59. rasa/core/brokers/pika.py +8 -9
  60. rasa/core/brokers/sql.py +4 -3
  61. rasa/core/channels/__init__.py +7 -0
  62. rasa/core/channels/botframework.py +2 -2
  63. rasa/core/channels/callback.py +4 -4
  64. rasa/core/channels/channel.py +11 -11
  65. rasa/core/channels/console.py +0 -1
  66. rasa/core/channels/development_inspector.py +80 -24
  67. rasa/core/channels/facebook.py +5 -5
  68. rasa/core/channels/hangouts.py +7 -8
  69. rasa/core/channels/inspector/dist/assets/Tableau10-1b767f5e.js +1 -0
  70. rasa/core/channels/inspector/dist/assets/arc-9f1365dc.js +1 -0
  71. rasa/core/channels/inspector/dist/assets/blockDiagram-38ab4fdb-e0f81b12.js +118 -0
  72. rasa/core/channels/inspector/dist/assets/c4Diagram-3d4e48cf-9deaee1c.js +10 -0
  73. rasa/core/channels/inspector/dist/assets/channel-44956714.js +1 -0
  74. rasa/core/channels/inspector/dist/assets/classDiagram-70f12bd4-20450a96.js +2 -0
  75. rasa/core/channels/inspector/dist/assets/classDiagram-v2-f2320105-749d2abf.js +2 -0
  76. rasa/core/channels/inspector/dist/assets/clone-a9475142.js +1 -0
  77. rasa/core/channels/inspector/dist/assets/{createText-62fc7601-89c73b31.js → createText-2e5e7dd3-bef0b38c.js} +1 -1
  78. rasa/core/channels/inspector/dist/assets/edges-e0da2a9e-943801a7.js +4 -0
  79. rasa/core/channels/inspector/dist/assets/{erDiagram-9d236eb7-907e0440.js → erDiagram-9861fffd-d523a948.js} +4 -4
  80. rasa/core/channels/inspector/dist/assets/flowDb-956e92f1-54e4cf19.js +10 -0
  81. rasa/core/channels/inspector/dist/assets/flowDiagram-66a62f08-48bfbbe8.js +4 -0
  82. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-43fa749a.js +1 -0
  83. rasa/core/channels/inspector/dist/assets/flowchart-elk-definition-4a651766-17c30827.js +139 -0
  84. rasa/core/channels/inspector/dist/assets/ganttDiagram-c361ad54-43086f2d.js +257 -0
  85. rasa/core/channels/inspector/dist/assets/gitGraphDiagram-72cf32ee-5c8b693e.js +70 -0
  86. rasa/core/channels/inspector/dist/assets/graph-41a90d26.js +1 -0
  87. rasa/core/channels/inspector/dist/assets/index-3862675e-b43eeae9.js +1 -0
  88. rasa/core/channels/inspector/dist/assets/{index-e793d777.js → index-e8affe45.js} +201 -196
  89. rasa/core/channels/inspector/dist/assets/{infoDiagram-736b4530-8ceba4db.js → infoDiagram-f8f76790-0b20676b.js} +1 -1
  90. rasa/core/channels/inspector/dist/assets/{journeyDiagram-df861f2b-960d3809.js → journeyDiagram-49397b02-39bce7b5.js} +4 -4
  91. rasa/core/channels/inspector/dist/assets/katex-498eb57e.js +261 -0
  92. rasa/core/channels/inspector/dist/assets/layout-dc8eeea4.js +1 -0
  93. rasa/core/channels/inspector/dist/assets/{line-eeccc4e2.js → line-c4d2e756.js} +1 -1
  94. rasa/core/channels/inspector/dist/assets/linear-86f6f2d9.js +1 -0
  95. rasa/core/channels/inspector/dist/assets/mindmap-definition-fc14e90a-4216f771.js +312 -0
  96. rasa/core/channels/inspector/dist/assets/{pieDiagram-dbbf0591-dc9b5e1b.js → pieDiagram-8a3498a8-1a0cfa96.js} +7 -7
  97. rasa/core/channels/inspector/dist/assets/{quadrantDiagram-4d7f4fd6-a08cba6d.js → quadrantDiagram-120e2f19-f91e67cf.js} +1 -1
  98. rasa/core/channels/inspector/dist/assets/{requirementDiagram-6fc4c22a-87242b9e.js → requirementDiagram-deff3bca-d4046bed.js} +2 -2
  99. rasa/core/channels/inspector/dist/assets/sankeyDiagram-04a897e0-2cf6d1d7.js +8 -0
  100. rasa/core/channels/inspector/dist/assets/sequenceDiagram-704730f1-751ac4f5.js +122 -0
  101. rasa/core/channels/inspector/dist/assets/stateDiagram-587899a1-f734f4d4.js +1 -0
  102. rasa/core/channels/inspector/dist/assets/stateDiagram-v2-d93cdb3a-91c65710.js +1 -0
  103. rasa/core/channels/inspector/dist/assets/{styles-9c745c82-cef936a6.js → styles-6aaf32cf-e0cff7be.js} +1 -1
  104. rasa/core/channels/inspector/dist/assets/styles-9a916d00-c8029e5d.js +160 -0
  105. rasa/core/channels/inspector/dist/assets/styles-c10674c1-114f312a.js +116 -0
  106. rasa/core/channels/inspector/dist/assets/svgDrawCommon-08f97a94-b7b9dc00.js +1 -0
  107. rasa/core/channels/inspector/dist/assets/{timeline-definition-5b62e21b-0d39bdb2.js → timeline-definition-85554ec2-9536d189.js} +3 -3
  108. rasa/core/channels/inspector/dist/assets/{xychartDiagram-2b33534f-a03fa445.js → xychartDiagram-e933f94c-bf3b0f36.js} +3 -3
  109. rasa/core/channels/inspector/dist/index.html +1 -1
  110. rasa/core/channels/inspector/package.json +11 -3
  111. rasa/core/channels/inspector/src/App.tsx +15 -2
  112. rasa/core/channels/inspector/src/components/RasaLogo.tsx +31 -0
  113. rasa/core/channels/inspector/src/components/RecruitmentPanel.tsx +68 -0
  114. rasa/core/channels/inspector/src/components/Welcome.tsx +19 -13
  115. rasa/core/channels/inspector/yarn.lock +94 -99
  116. rasa/core/channels/mattermost.py +4 -4
  117. rasa/core/channels/rasa_chat.py +4 -4
  118. rasa/core/channels/rest.py +11 -12
  119. rasa/core/channels/rocketchat.py +4 -3
  120. rasa/core/channels/slack.py +6 -5
  121. rasa/core/channels/socketio.py +8 -28
  122. rasa/core/channels/studio_chat.py +212 -0
  123. rasa/core/channels/telegram.py +105 -55
  124. rasa/core/channels/twilio.py +3 -3
  125. rasa/core/channels/vier_cvg.py +2 -2
  126. rasa/core/channels/voice_ready/audiocodes.py +51 -32
  127. rasa/core/channels/voice_ready/jambonz.py +5 -5
  128. rasa/core/channels/voice_ready/jambonz_protocol.py +3 -4
  129. rasa/core/channels/voice_ready/twilio_voice.py +9 -8
  130. rasa/core/channels/voice_ready/utils.py +2 -2
  131. rasa/core/channels/voice_stream/asr/asr_engine.py +12 -6
  132. rasa/core/channels/voice_stream/asr/asr_event.py +5 -0
  133. rasa/core/channels/voice_stream/asr/azure.py +16 -3
  134. rasa/core/channels/voice_stream/asr/deepgram.py +76 -19
  135. rasa/core/channels/voice_stream/audiocodes.py +292 -0
  136. rasa/core/channels/voice_stream/browser_audio.py +14 -7
  137. rasa/core/channels/voice_stream/call_state.py +6 -2
  138. rasa/core/channels/voice_stream/genesys.py +320 -0
  139. rasa/core/channels/voice_stream/tts/azure.py +13 -5
  140. rasa/core/channels/voice_stream/tts/cartesia.py +34 -14
  141. rasa/core/channels/voice_stream/tts/tts_cache.py +3 -2
  142. rasa/core/channels/voice_stream/tts/tts_engine.py +1 -1
  143. rasa/core/channels/voice_stream/twilio_media_streams.py +12 -8
  144. rasa/core/channels/voice_stream/util.py +1 -1
  145. rasa/core/channels/voice_stream/voice_channel.py +100 -56
  146. rasa/core/channels/webexteams.py +3 -4
  147. rasa/core/constants.py +2 -0
  148. rasa/core/evaluation/marker.py +7 -6
  149. rasa/core/evaluation/marker_base.py +15 -16
  150. rasa/core/evaluation/marker_stats.py +3 -4
  151. rasa/core/evaluation/marker_tracker_loader.py +5 -4
  152. rasa/core/exporter.py +4 -4
  153. rasa/core/featurizers/precomputation.py +8 -8
  154. rasa/core/featurizers/single_state_featurizer.py +7 -7
  155. rasa/core/featurizers/tracker_featurizers.py +13 -13
  156. rasa/core/http_interpreter.py +3 -4
  157. rasa/core/information_retrieval/__init__.py +1 -1
  158. rasa/core/information_retrieval/faiss.py +4 -4
  159. rasa/core/information_retrieval/information_retrieval.py +2 -2
  160. rasa/core/information_retrieval/milvus.py +3 -3
  161. rasa/core/information_retrieval/qdrant.py +3 -3
  162. rasa/core/jobs.py +1 -0
  163. rasa/core/lock.py +2 -3
  164. rasa/core/lock_store.py +3 -3
  165. rasa/core/migrate.py +12 -9
  166. rasa/core/nlg/__init__.py +1 -1
  167. rasa/core/nlg/callback.py +2 -3
  168. rasa/core/nlg/contextual_response_rephraser.py +82 -14
  169. rasa/core/nlg/generator.py +85 -17
  170. rasa/core/nlg/interpolator.py +4 -3
  171. rasa/core/nlg/response.py +9 -7
  172. rasa/core/nlg/summarize.py +1 -0
  173. rasa/core/nlg/translate.py +55 -0
  174. rasa/core/persistor.py +3 -3
  175. rasa/core/policies/ensemble.py +10 -9
  176. rasa/core/policies/enterprise_search_policy.py +87 -21
  177. rasa/core/policies/enterprise_search_prompt_with_citation_template.jinja2 +1 -1
  178. rasa/core/policies/flow_policy.py +13 -14
  179. rasa/core/policies/flows/flow_executor.py +85 -55
  180. rasa/core/policies/intentless_policy.py +6 -7
  181. rasa/core/policies/memoization.py +22 -20
  182. rasa/core/policies/policy.py +24 -22
  183. rasa/core/policies/rule_policy.py +37 -36
  184. rasa/core/policies/ted_policy.py +87 -85
  185. rasa/core/policies/unexpected_intent_policy.py +77 -75
  186. rasa/core/processor.py +167 -74
  187. rasa/core/run.py +5 -4
  188. rasa/core/secrets_manager/endpoints.py +2 -3
  189. rasa/core/secrets_manager/factory.py +2 -3
  190. rasa/core/secrets_manager/secret_manager.py +2 -3
  191. rasa/core/secrets_manager/vault.py +2 -2
  192. rasa/core/test.py +30 -30
  193. rasa/core/tracker_store.py +138 -49
  194. rasa/core/train.py +1 -1
  195. rasa/core/training/__init__.py +2 -2
  196. rasa/core/training/converters/responses_prefix_converter.py +1 -2
  197. rasa/core/training/interactive.py +13 -13
  198. rasa/core/training/story_conflict.py +4 -5
  199. rasa/core/training/training.py +3 -5
  200. rasa/core/utils.py +5 -5
  201. rasa/core/visualize.py +1 -1
  202. rasa/dialogue_understanding/coexistence/intent_based_router.py +2 -2
  203. rasa/dialogue_understanding/coexistence/llm_based_router.py +5 -5
  204. rasa/dialogue_understanding/commands/__init__.py +22 -22
  205. rasa/dialogue_understanding/commands/can_not_handle_command.py +38 -1
  206. rasa/dialogue_understanding/commands/cancel_flow_command.py +96 -9
  207. rasa/dialogue_understanding/commands/change_flow_command.py +36 -2
  208. rasa/dialogue_understanding/commands/chit_chat_answer_command.py +36 -4
  209. rasa/dialogue_understanding/commands/clarify_command.py +46 -4
  210. rasa/dialogue_understanding/commands/command.py +3 -2
  211. rasa/dialogue_understanding/commands/command_syntax_manager.py +55 -0
  212. rasa/dialogue_understanding/commands/correct_slots_command.py +14 -5
  213. rasa/dialogue_understanding/commands/error_command.py +1 -1
  214. rasa/dialogue_understanding/commands/free_form_answer_command.py +2 -1
  215. rasa/dialogue_understanding/commands/handle_code_change_command.py +2 -2
  216. rasa/dialogue_understanding/commands/handle_digressions_command.py +144 -0
  217. rasa/dialogue_understanding/commands/human_handoff_command.py +34 -4
  218. rasa/dialogue_understanding/commands/knowledge_answer_command.py +36 -4
  219. rasa/dialogue_understanding/commands/noop_command.py +2 -1
  220. rasa/dialogue_understanding/commands/prompt_command.py +94 -0
  221. rasa/dialogue_understanding/commands/repeat_bot_messages_command.py +34 -4
  222. rasa/dialogue_understanding/commands/restart_command.py +2 -5
  223. rasa/dialogue_understanding/commands/session_end_command.py +3 -5
  224. rasa/dialogue_understanding/commands/session_start_command.py +3 -5
  225. rasa/dialogue_understanding/commands/set_slot_command.py +55 -16
  226. rasa/dialogue_understanding/commands/skip_question_command.py +34 -4
  227. rasa/dialogue_understanding/commands/start_flow_command.py +78 -2
  228. rasa/dialogue_understanding/commands/user_silence_command.py +3 -5
  229. rasa/dialogue_understanding/commands/utils.py +126 -43
  230. rasa/dialogue_understanding/constants.py +2 -0
  231. rasa/dialogue_understanding/generator/__init__.py +2 -0
  232. rasa/dialogue_understanding/generator/command_generator.py +120 -79
  233. rasa/dialogue_understanding/generator/command_parser.py +245 -0
  234. rasa/dialogue_understanding/generator/constants.py +12 -4
  235. rasa/dialogue_understanding/generator/flow_retrieval.py +7 -7
  236. rasa/dialogue_understanding/generator/llm_based_command_generator.py +187 -59
  237. rasa/dialogue_understanding/generator/llm_command_generator.py +6 -3
  238. rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py +106 -110
  239. rasa/dialogue_understanding/generator/nlu_command_adapter.py +53 -11
  240. rasa/dialogue_understanding/generator/prompt_templates/__init__.py +0 -0
  241. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v2_claude_3_5_sonnet_20240620_template.jinja2 +58 -0
  242. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v2_gpt_4o_2024_11_20_template.jinja2 +57 -0
  243. rasa/dialogue_understanding/generator/single_step/compact_llm_command_generator.py +574 -0
  244. rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py +41 -386
  245. rasa/dialogue_understanding/generator/utils.py +76 -0
  246. rasa/dialogue_understanding/patterns/cancel.py +2 -1
  247. rasa/dialogue_understanding/patterns/cannot_handle.py +1 -0
  248. rasa/dialogue_understanding/patterns/chitchat.py +1 -1
  249. rasa/dialogue_understanding/patterns/clarify.py +2 -1
  250. rasa/dialogue_understanding/patterns/code_change.py +2 -0
  251. rasa/dialogue_understanding/patterns/collect_information.py +7 -4
  252. rasa/dialogue_understanding/patterns/completed.py +1 -1
  253. rasa/dialogue_understanding/patterns/continue_interrupted.py +1 -1
  254. rasa/dialogue_understanding/patterns/correction.py +17 -3
  255. rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml +78 -2
  256. rasa/dialogue_understanding/patterns/handle_digressions.py +81 -0
  257. rasa/dialogue_understanding/patterns/human_handoff.py +1 -1
  258. rasa/dialogue_understanding/patterns/internal_error.py +1 -0
  259. rasa/dialogue_understanding/patterns/search.py +1 -1
  260. rasa/dialogue_understanding/patterns/session_start.py +1 -1
  261. rasa/dialogue_understanding/patterns/skip_question.py +1 -0
  262. rasa/dialogue_understanding/patterns/user_silence.py +1 -1
  263. rasa/dialogue_understanding/patterns/validate_slot.py +65 -0
  264. rasa/dialogue_understanding/processor/command_processor.py +193 -43
  265. rasa/dialogue_understanding/processor/command_processor_component.py +1 -1
  266. rasa/dialogue_understanding/stack/dialogue_stack.py +4 -3
  267. rasa/dialogue_understanding/stack/frames/__init__.py +2 -2
  268. rasa/dialogue_understanding/stack/frames/chit_chat_frame.py +4 -1
  269. rasa/dialogue_understanding/stack/frames/dialogue_stack_frame.py +2 -3
  270. rasa/dialogue_understanding/stack/frames/flow_stack_frame.py +5 -2
  271. rasa/dialogue_understanding/stack/frames/search_frame.py +4 -1
  272. rasa/dialogue_understanding/stack/utils.py +56 -10
  273. rasa/dialogue_understanding/utils.py +164 -0
  274. rasa/dialogue_understanding_test/README.md +429 -0
  275. rasa/dialogue_understanding_test/__init__.py +0 -0
  276. rasa/dialogue_understanding_test/command_comparison.py +60 -0
  277. rasa/dialogue_understanding_test/command_metric_calculation.py +122 -0
  278. rasa/dialogue_understanding_test/constants.py +22 -0
  279. rasa/dialogue_understanding_test/du_test_case.py +448 -0
  280. rasa/dialogue_understanding_test/du_test_result.py +390 -0
  281. rasa/dialogue_understanding_test/du_test_runner.py +322 -0
  282. rasa/dialogue_understanding_test/du_test_schema.yml +161 -0
  283. rasa/dialogue_understanding_test/io.py +443 -0
  284. rasa/dialogue_understanding_test/test_case_simulation/__init__.py +0 -0
  285. rasa/dialogue_understanding_test/test_case_simulation/exception.py +28 -0
  286. rasa/dialogue_understanding_test/test_case_simulation/test_case_tracker_simulator.py +336 -0
  287. rasa/dialogue_understanding_test/utils.py +70 -0
  288. rasa/dialogue_understanding_test/validation.py +77 -0
  289. rasa/e2e_test/aggregate_test_stats_calculator.py +1 -1
  290. rasa/e2e_test/assertions.py +202 -175
  291. rasa/e2e_test/assertions_schema.yml +6 -0
  292. rasa/e2e_test/constants.py +16 -1
  293. rasa/e2e_test/e2e_config.py +102 -41
  294. rasa/e2e_test/e2e_config_schema.yml +28 -10
  295. rasa/e2e_test/e2e_test_case.py +5 -5
  296. rasa/e2e_test/e2e_test_converter.py +2 -3
  297. rasa/e2e_test/e2e_test_coverage_report.py +6 -6
  298. rasa/e2e_test/e2e_test_result.py +1 -1
  299. rasa/e2e_test/e2e_test_runner.py +143 -38
  300. rasa/e2e_test/llm_judge_prompts/answer_relevance_prompt_template.jinja2 +93 -0
  301. rasa/e2e_test/llm_judge_prompts/groundedness_prompt_template.jinja2 +169 -0
  302. rasa/e2e_test/stub_custom_action.py +1 -1
  303. rasa/e2e_test/utils/generative_assertions.py +243 -0
  304. rasa/e2e_test/utils/io.py +123 -93
  305. rasa/e2e_test/utils/validation.py +101 -3
  306. rasa/engine/caching.py +5 -7
  307. rasa/engine/constants.py +1 -1
  308. rasa/engine/graph.py +3 -2
  309. rasa/engine/language.py +182 -0
  310. rasa/engine/recipes/config_files/default_config.yml +4 -0
  311. rasa/engine/recipes/default_components.py +13 -15
  312. rasa/engine/recipes/default_recipe.py +65 -49
  313. rasa/engine/recipes/graph_recipe.py +10 -7
  314. rasa/engine/recipes/recipe.py +2 -2
  315. rasa/engine/runner/dask.py +2 -2
  316. rasa/engine/runner/interface.py +1 -0
  317. rasa/engine/storage/local_model_storage.py +6 -4
  318. rasa/engine/storage/resource.py +2 -1
  319. rasa/engine/storage/storage.py +8 -3
  320. rasa/engine/training/components.py +2 -1
  321. rasa/engine/training/fingerprinting.py +4 -2
  322. rasa/engine/training/graph_trainer.py +4 -4
  323. rasa/engine/training/hooks.py +2 -2
  324. rasa/engine/validation.py +36 -33
  325. rasa/exceptions.py +3 -2
  326. rasa/graph_components/converters/nlu_message_converter.py +3 -3
  327. rasa/graph_components/providers/domain_for_core_training_provider.py +3 -3
  328. rasa/graph_components/providers/domain_provider.py +3 -2
  329. rasa/graph_components/providers/flows_provider.py +2 -3
  330. rasa/graph_components/providers/forms_provider.py +4 -4
  331. rasa/graph_components/providers/nlu_training_data_provider.py +5 -3
  332. rasa/graph_components/providers/responses_provider.py +4 -4
  333. rasa/graph_components/providers/rule_only_provider.py +3 -2
  334. rasa/graph_components/providers/story_graph_provider.py +8 -8
  335. rasa/graph_components/providers/training_tracker_provider.py +3 -2
  336. rasa/graph_components/validators/default_recipe_validator.py +16 -16
  337. rasa/graph_components/validators/finetuning_validator.py +10 -8
  338. rasa/hooks.py +19 -14
  339. rasa/jupyter.py +2 -2
  340. rasa/llm_fine_tuning/annotation_module.py +4 -4
  341. rasa/llm_fine_tuning/conversations.py +5 -33
  342. rasa/llm_fine_tuning/llm_data_preparation_module.py +6 -4
  343. rasa/llm_fine_tuning/paraphrasing/conversation_rephraser.py +4 -4
  344. rasa/llm_fine_tuning/paraphrasing/rephrase_validator.py +18 -13
  345. rasa/llm_fine_tuning/paraphrasing_module.py +6 -2
  346. rasa/llm_fine_tuning/storage.py +3 -3
  347. rasa/llm_fine_tuning/train_test_split_module.py +27 -27
  348. rasa/llm_fine_tuning/utils.py +7 -0
  349. rasa/markers/marker.py +2 -3
  350. rasa/markers/marker_base.py +1 -2
  351. rasa/markers/upload.py +2 -2
  352. rasa/markers/validate.py +2 -3
  353. rasa/model.py +3 -5
  354. rasa/model_manager/config.py +1 -1
  355. rasa/model_manager/model_api.py +5 -4
  356. rasa/model_manager/runner_service.py +13 -10
  357. rasa/model_manager/socket_bridge.py +15 -9
  358. rasa/model_manager/studio_jwt_auth.py +1 -0
  359. rasa/model_manager/trainer_service.py +9 -7
  360. rasa/model_manager/utils.py +1 -1
  361. rasa/model_manager/warm_rasa_process.py +14 -9
  362. rasa/model_service.py +5 -6
  363. rasa/model_testing.py +13 -15
  364. rasa/model_training.py +29 -29
  365. rasa/nlu/classifiers/diet_classifier.py +72 -73
  366. rasa/nlu/classifiers/fallback_classifier.py +9 -8
  367. rasa/nlu/classifiers/keyword_intent_classifier.py +7 -6
  368. rasa/nlu/classifiers/logistic_regression_classifier.py +3 -3
  369. rasa/nlu/classifiers/mitie_intent_classifier.py +5 -4
  370. rasa/nlu/classifiers/regex_message_handler.py +3 -2
  371. rasa/nlu/classifiers/sklearn_intent_classifier.py +2 -2
  372. rasa/nlu/convert.py +2 -2
  373. rasa/nlu/emulators/dialogflow.py +3 -3
  374. rasa/nlu/emulators/luis.py +5 -5
  375. rasa/nlu/emulators/no_emulator.py +1 -0
  376. rasa/nlu/emulators/wit.py +4 -4
  377. rasa/nlu/extractors/crf_entity_extractor.py +11 -11
  378. rasa/nlu/extractors/duckling_entity_extractor.py +7 -6
  379. rasa/nlu/extractors/entity_synonyms.py +10 -9
  380. rasa/nlu/extractors/extractor.py +16 -16
  381. rasa/nlu/extractors/mitie_entity_extractor.py +10 -9
  382. rasa/nlu/extractors/regex_entity_extractor.py +11 -10
  383. rasa/nlu/extractors/spacy_entity_extractor.py +2 -2
  384. rasa/nlu/featurizers/dense_featurizer/convert_featurizer.py +15 -14
  385. rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py +2 -1
  386. rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py +10 -9
  387. rasa/nlu/featurizers/dense_featurizer/mitie_featurizer.py +9 -7
  388. rasa/nlu/featurizers/dense_featurizer/spacy_featurizer.py +13 -12
  389. rasa/nlu/featurizers/featurizer.py +5 -4
  390. rasa/nlu/featurizers/sparse_featurizer/count_vectors_featurizer.py +6 -6
  391. rasa/nlu/featurizers/sparse_featurizer/lexical_syntactic_featurizer.py +4 -4
  392. rasa/nlu/featurizers/sparse_featurizer/regex_featurizer.py +4 -4
  393. rasa/nlu/featurizers/sparse_featurizer/sparse_featurizer.py +2 -0
  394. rasa/nlu/model.py +0 -1
  395. rasa/nlu/selectors/response_selector.py +67 -68
  396. rasa/nlu/test.py +38 -38
  397. rasa/nlu/tokenizers/jieba_tokenizer.py +1 -2
  398. rasa/nlu/tokenizers/mitie_tokenizer.py +2 -2
  399. rasa/nlu/tokenizers/spacy_tokenizer.py +3 -3
  400. rasa/nlu/tokenizers/tokenizer.py +6 -7
  401. rasa/nlu/tokenizers/whitespace_tokenizer.py +1 -1
  402. rasa/nlu/utils/bilou_utils.py +7 -7
  403. rasa/nlu/utils/hugging_face/registry.py +22 -22
  404. rasa/nlu/utils/hugging_face/transformers_pre_post_processors.py +2 -1
  405. rasa/nlu/utils/mitie_utils.py +2 -1
  406. rasa/nlu/utils/pattern_utils.py +1 -1
  407. rasa/nlu/utils/spacy_utils.py +3 -3
  408. rasa/plugin.py +12 -1
  409. rasa/server.py +6 -3
  410. rasa/shared/constants.py +45 -18
  411. rasa/shared/core/command_payload_reader.py +15 -7
  412. rasa/shared/core/constants.py +34 -4
  413. rasa/shared/core/conversation.py +1 -2
  414. rasa/shared/core/domain.py +19 -20
  415. rasa/shared/core/events.py +60 -39
  416. rasa/shared/core/flows/__init__.py +0 -1
  417. rasa/shared/core/flows/constants.py +11 -0
  418. rasa/shared/core/flows/flow.py +107 -26
  419. rasa/shared/core/flows/flow_step.py +4 -3
  420. rasa/shared/core/flows/flow_step_links.py +1 -2
  421. rasa/shared/core/flows/flow_step_sequence.py +1 -1
  422. rasa/shared/core/flows/flows_list.py +3 -3
  423. rasa/shared/core/flows/flows_yaml_schema.json +69 -3
  424. rasa/shared/core/flows/nlu_trigger.py +1 -1
  425. rasa/shared/core/flows/steps/__init__.py +2 -2
  426. rasa/shared/core/flows/steps/action.py +1 -1
  427. rasa/shared/core/flows/steps/call.py +1 -1
  428. rasa/shared/core/flows/steps/collect.py +22 -40
  429. rasa/shared/core/flows/steps/internal.py +1 -1
  430. rasa/shared/core/flows/steps/link.py +1 -1
  431. rasa/shared/core/flows/steps/no_operation.py +2 -2
  432. rasa/shared/core/flows/steps/set_slots.py +1 -1
  433. rasa/shared/core/flows/utils.py +44 -4
  434. rasa/shared/core/flows/validation.py +4 -6
  435. rasa/shared/core/generator.py +20 -21
  436. rasa/shared/core/slot_mappings.py +360 -121
  437. rasa/shared/core/slots.py +163 -6
  438. rasa/shared/core/trackers.py +108 -33
  439. rasa/shared/core/training_data/loading.py +1 -1
  440. rasa/shared/core/training_data/story_reader/story_reader.py +3 -3
  441. rasa/shared/core/training_data/story_reader/story_step_builder.py +4 -4
  442. rasa/shared/core/training_data/story_reader/yaml_story_reader.py +29 -31
  443. rasa/shared/core/training_data/story_writer/yaml_story_writer.py +22 -24
  444. rasa/shared/core/training_data/structures.py +11 -12
  445. rasa/shared/core/training_data/visualization.py +10 -10
  446. rasa/shared/data.py +6 -6
  447. rasa/shared/engine/caching.py +0 -1
  448. rasa/shared/exceptions.py +2 -2
  449. rasa/shared/importers/importer.py +58 -2
  450. rasa/shared/importers/rasa.py +5 -6
  451. rasa/shared/importers/utils.py +1 -1
  452. rasa/shared/nlu/constants.py +9 -0
  453. rasa/shared/nlu/training_data/entities_parser.py +6 -6
  454. rasa/shared/nlu/training_data/features.py +3 -3
  455. rasa/shared/nlu/training_data/formats/__init__.py +1 -1
  456. rasa/shared/nlu/training_data/formats/dialogflow.py +4 -5
  457. rasa/shared/nlu/training_data/formats/luis.py +7 -8
  458. rasa/shared/nlu/training_data/formats/rasa.py +4 -5
  459. rasa/shared/nlu/training_data/formats/rasa_yaml.py +17 -16
  460. rasa/shared/nlu/training_data/formats/readerwriter.py +8 -11
  461. rasa/shared/nlu/training_data/formats/wit.py +3 -4
  462. rasa/shared/nlu/training_data/loading.py +4 -4
  463. rasa/shared/nlu/training_data/lookup_tables_parser.py +1 -1
  464. rasa/shared/nlu/training_data/message.py +13 -14
  465. rasa/shared/nlu/training_data/schemas/data_schema.py +1 -1
  466. rasa/shared/nlu/training_data/schemas/responses.yml +19 -11
  467. rasa/shared/nlu/training_data/synonyms_parser.py +3 -3
  468. rasa/shared/nlu/training_data/training_data.py +12 -13
  469. rasa/shared/nlu/training_data/util.py +11 -10
  470. rasa/shared/providers/_configs/azure_entra_id_config.py +541 -0
  471. rasa/shared/providers/_configs/azure_openai_client_config.py +150 -15
  472. rasa/shared/providers/_configs/client_config.py +3 -1
  473. rasa/shared/providers/_configs/default_litellm_client_config.py +9 -7
  474. rasa/shared/providers/_configs/huggingface_local_embedding_client_config.py +13 -11
  475. rasa/shared/providers/_configs/litellm_router_client_config.py +12 -10
  476. rasa/shared/providers/_configs/model_group_config.py +8 -5
  477. rasa/shared/providers/_configs/oauth_config.py +33 -0
  478. rasa/shared/providers/_configs/openai_client_config.py +14 -12
  479. rasa/shared/providers/_configs/rasa_llm_client_config.py +5 -3
  480. rasa/shared/providers/_configs/self_hosted_llm_client_config.py +12 -11
  481. rasa/shared/providers/_configs/utils.py +1 -0
  482. rasa/shared/providers/_ssl_verification_utils.py +5 -6
  483. rasa/shared/providers/_utils.py +5 -5
  484. rasa/shared/providers/constants.py +6 -0
  485. rasa/shared/providers/embedding/_base_litellm_embedding_client.py +1 -1
  486. rasa/shared/providers/embedding/azure_openai_embedding_client.py +32 -7
  487. rasa/shared/providers/embedding/embedding_client.py +1 -1
  488. rasa/shared/providers/embedding/litellm_router_embedding_client.py +5 -2
  489. rasa/shared/providers/llm/_base_litellm_client.py +43 -18
  490. rasa/shared/providers/llm/azure_openai_llm_client.py +90 -34
  491. rasa/shared/providers/llm/default_litellm_llm_client.py +4 -2
  492. rasa/shared/providers/llm/litellm_router_llm_client.py +32 -9
  493. rasa/shared/providers/llm/llm_client.py +24 -8
  494. rasa/shared/providers/llm/llm_response.py +61 -2
  495. rasa/shared/providers/llm/openai_llm_client.py +11 -5
  496. rasa/shared/providers/llm/rasa_llm_client.py +17 -14
  497. rasa/shared/providers/llm/self_hosted_llm_client.py +35 -15
  498. rasa/shared/providers/mappings.py +18 -19
  499. rasa/shared/providers/router/_base_litellm_router_client.py +48 -15
  500. rasa/shared/providers/router/router_client.py +3 -1
  501. rasa/shared/utils/cli.py +1 -1
  502. rasa/shared/utils/common.py +15 -1
  503. rasa/shared/utils/constants.py +3 -0
  504. rasa/shared/utils/health_check/embeddings_health_check_mixin.py +1 -1
  505. rasa/shared/utils/health_check/health_check.py +3 -3
  506. rasa/shared/utils/health_check/llm_health_check_mixin.py +1 -1
  507. rasa/shared/utils/io.py +1 -1
  508. rasa/shared/utils/llm.py +100 -18
  509. rasa/shared/utils/pykwalify_extensions.py +25 -1
  510. rasa/shared/utils/schemas/domain.yml +26 -1
  511. rasa/shared/utils/schemas/events.py +1 -1
  512. rasa/shared/utils/yaml.py +24 -20
  513. rasa/studio/auth.py +3 -3
  514. rasa/studio/config.py +1 -2
  515. rasa/studio/data_handler.py +3 -3
  516. rasa/studio/download.py +1 -1
  517. rasa/studio/results_logger.py +3 -3
  518. rasa/studio/upload.py +21 -5
  519. rasa/telemetry.py +127 -48
  520. rasa/tracing/config.py +5 -3
  521. rasa/tracing/constants.py +12 -0
  522. rasa/tracing/instrumentation/attribute_extractors.py +92 -14
  523. rasa/tracing/instrumentation/instrumentation.py +61 -5
  524. rasa/tracing/instrumentation/intentless_policy_instrumentation.py +1 -1
  525. rasa/tracing/instrumentation/metrics.py +52 -11
  526. rasa/tracing/metric_instrument_provider.py +54 -14
  527. rasa/utils/common.py +12 -24
  528. rasa/utils/endpoints.py +1 -1
  529. rasa/utils/io.py +7 -7
  530. rasa/utils/licensing.py +3 -4
  531. rasa/utils/log_utils.py +7 -6
  532. rasa/utils/ml_utils.py +1 -0
  533. rasa/utils/plotting.py +3 -3
  534. rasa/utils/sanic_error_handler.py +1 -1
  535. rasa/utils/tensorflow/callback.py +2 -2
  536. rasa/utils/tensorflow/crf.py +2 -2
  537. rasa/utils/tensorflow/data_generator.py +5 -5
  538. rasa/utils/tensorflow/environment.py +3 -3
  539. rasa/utils/tensorflow/feature_array.py +2 -3
  540. rasa/utils/tensorflow/layers.py +18 -12
  541. rasa/utils/tensorflow/layers_utils.py +2 -1
  542. rasa/utils/tensorflow/metrics.py +2 -2
  543. rasa/utils/tensorflow/model_data.py +7 -7
  544. rasa/utils/tensorflow/model_data_utils.py +10 -9
  545. rasa/utils/tensorflow/models.py +31 -32
  546. rasa/utils/tensorflow/rasa_layers.py +20 -19
  547. rasa/utils/tensorflow/types.py +2 -1
  548. rasa/utils/train_utils.py +23 -21
  549. rasa/utils/url_tools.py +1 -1
  550. rasa/validator.py +594 -115
  551. rasa/version.py +1 -1
  552. {rasa_pro-3.11.4.dist-info → rasa_pro-3.12.0.dist-info}/METADATA +23 -26
  553. rasa_pro-3.12.0.dist-info/RECORD +829 -0
  554. rasa/core/channels/inspector/dist/assets/arc-632a63ec.js +0 -1
  555. rasa/core/channels/inspector/dist/assets/c4Diagram-d0fbc5ce-081e0df4.js +0 -10
  556. rasa/core/channels/inspector/dist/assets/classDiagram-936ed81e-3df0afc2.js +0 -2
  557. rasa/core/channels/inspector/dist/assets/classDiagram-v2-c3cb15f1-8c5ed31e.js +0 -2
  558. rasa/core/channels/inspector/dist/assets/edges-f2ad444c-4fc48c3e.js +0 -4
  559. rasa/core/channels/inspector/dist/assets/flowDb-1972c806-9ec53a3c.js +0 -6
  560. rasa/core/channels/inspector/dist/assets/flowDiagram-7ea5b25a-41da787a.js +0 -4
  561. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-855bc5b3-8bea338b.js +0 -1
  562. rasa/core/channels/inspector/dist/assets/flowchart-elk-definition-abe16c3d-ce370633.js +0 -139
  563. rasa/core/channels/inspector/dist/assets/ganttDiagram-9b5ea136-90a36523.js +0 -266
  564. rasa/core/channels/inspector/dist/assets/gitGraphDiagram-99d0ae7c-41e1aa3f.js +0 -70
  565. rasa/core/channels/inspector/dist/assets/index-2c4b9a3b-e6f2af62.js +0 -1
  566. rasa/core/channels/inspector/dist/assets/layout-498807d8.js +0 -1
  567. rasa/core/channels/inspector/dist/assets/linear-8a078617.js +0 -1
  568. rasa/core/channels/inspector/dist/assets/mindmap-definition-beec6740-396d17dd.js +0 -109
  569. rasa/core/channels/inspector/dist/assets/sankeyDiagram-8f13d901-53f6f391.js +0 -8
  570. rasa/core/channels/inspector/dist/assets/sequenceDiagram-b655622a-715c9c20.js +0 -122
  571. rasa/core/channels/inspector/dist/assets/stateDiagram-59f0c015-2e8fb31f.js +0 -1
  572. rasa/core/channels/inspector/dist/assets/stateDiagram-v2-2b26beab-7e2d2aa0.js +0 -1
  573. rasa/core/channels/inspector/dist/assets/styles-080da4f6-4420cea6.js +0 -110
  574. rasa/core/channels/inspector/dist/assets/styles-3dcbcfbf-28676cf4.js +0 -159
  575. rasa/core/channels/inspector/dist/assets/svgDrawCommon-4835440b-151251e9.js +0 -1
  576. rasa_pro-3.11.4.dist-info/RECORD +0 -779
  577. /rasa/dialogue_understanding/generator/{single_step → prompt_templates}/command_prompt_template.jinja2 +0 -0
  578. {rasa_pro-3.11.4.dist-info → rasa_pro-3.12.0.dist-info}/NOTICE +0 -0
  579. {rasa_pro-3.11.4.dist-info → rasa_pro-3.12.0.dist-info}/WHEEL +0 -0
  580. {rasa_pro-3.11.4.dist-info → rasa_pro-3.12.0.dist-info}/entry_points.txt +0 -0
@@ -6,45 +6,47 @@ import logging
6
6
  from enum import Enum
7
7
  from pathlib import Path
8
8
  from typing import (
9
+ TYPE_CHECKING,
9
10
  Any,
11
+ Callable,
12
+ Dict,
10
13
  List,
11
14
  Optional,
12
15
  Text,
13
- Dict,
14
- Callable,
15
16
  Tuple,
16
17
  TypeVar,
17
- TYPE_CHECKING,
18
18
  )
19
19
 
20
20
  import numpy as np
21
21
 
22
- from rasa.shared.constants import ROUTE_TO_CALM_SLOT
23
- from rasa.shared.core.events import Event
24
- from rasa.engine.graph import GraphComponent, ExecutionContext
25
- from rasa.engine.storage.resource import Resource
26
- from rasa.engine.storage.storage import ModelStorage
27
- from rasa.core.featurizers.precomputation import MessageContainerForCoreFeaturization
28
- import rasa.utils.common
22
+ import rasa.shared.utils.common
29
23
  import rasa.shared.utils.io
30
- from rasa.shared.exceptions import RasaException, FileIOException
31
- from rasa.shared.nlu.constants import ENTITIES, INTENT, TEXT, ACTION_TEXT, ACTION_NAME
32
- from rasa.shared.core.domain import Domain, State
33
- from rasa.shared.core.trackers import DialogueStateTracker
34
- from rasa.shared.core.generator import TrackerWithCachedStates
24
+ import rasa.utils.common
35
25
  from rasa.core.constants import (
36
26
  DEFAULT_POLICY_PRIORITY,
37
- POLICY_PRIORITY,
38
27
  POLICY_MAX_HISTORY,
28
+ POLICY_PRIORITY,
39
29
  )
40
- from rasa.shared.core.constants import USER, SLOTS, PREVIOUS_ACTION, ACTIVE_LOOP
41
- import rasa.shared.utils.common
30
+ from rasa.core.featurizers.precomputation import MessageContainerForCoreFeaturization
31
+ from rasa.engine.graph import ExecutionContext, GraphComponent
32
+ from rasa.engine.storage.resource import Resource
33
+ from rasa.engine.storage.storage import ModelStorage
34
+ from rasa.shared.constants import ROUTE_TO_CALM_SLOT
35
+ from rasa.shared.core.constants import ACTIVE_LOOP, PREVIOUS_ACTION, SLOTS, USER
36
+ from rasa.shared.core.domain import Domain, State
37
+ from rasa.shared.core.events import Event
38
+ from rasa.shared.core.generator import TrackerWithCachedStates
39
+ from rasa.shared.core.trackers import DialogueStateTracker
40
+ from rasa.shared.exceptions import FileIOException, RasaException
41
+ from rasa.shared.nlu.constants import ACTION_NAME, ACTION_TEXT, ENTITIES, INTENT, TEXT
42
42
 
43
43
  if TYPE_CHECKING:
44
- from rasa.shared.nlu.training_data.features import Features
45
- from rasa.core.featurizers.tracker_featurizers import TrackerFeaturizer
46
- from rasa.core.featurizers.tracker_featurizers import MaxHistoryTrackerFeaturizer
44
+ from rasa.core.featurizers.tracker_featurizers import (
45
+ MaxHistoryTrackerFeaturizer,
46
+ TrackerFeaturizer,
47
+ )
47
48
  from rasa.dialogue_understanding.stack.frames import DialogueStackFrame
49
+ from rasa.shared.nlu.training_data.features import Features
48
50
 
49
51
  logger = logging.getLogger(__name__)
50
52
 
@@ -467,8 +469,8 @@ class Policy(GraphComponent):
467
469
  ) -> Policy:
468
470
  """Loads a trained policy (see parent class for full docstring)."""
469
471
  from rasa.core.featurizers.tracker_featurizers import (
470
- TrackerFeaturizer,
471
472
  FEATURIZER_FILE,
473
+ TrackerFeaturizer,
472
474
  )
473
475
 
474
476
  featurizer = None
@@ -1,60 +1,61 @@
1
1
  from __future__ import annotations
2
+
2
3
  import copy
3
4
  import functools
5
+ import json
4
6
  import logging
5
- import structlog
6
- from typing import Any, List, DefaultDict, Dict, Text, Optional, Set, Tuple, cast
7
+ from collections import defaultdict
8
+ from typing import Any, DefaultDict, Dict, List, Optional, Set, Text, Tuple, cast
7
9
 
8
- from tqdm import tqdm
9
10
  import numpy as np
10
- import json
11
- from collections import defaultdict
11
+ import structlog
12
+ from tqdm import tqdm
12
13
 
13
- from rasa.engine.graph import ExecutionContext
14
- from rasa.engine.recipes.default_recipe import DefaultV1Recipe
15
- from rasa.engine.storage.resource import Resource
16
- from rasa.engine.storage.storage import ModelStorage
17
- from rasa.shared.constants import DOCS_URL_RULES
18
- from rasa.shared.exceptions import RasaException
14
+ import rasa.core.test
19
15
  import rasa.shared.utils.io
20
- from rasa.shared.core.events import LoopInterrupted, UserUttered, ActionExecuted
21
- from rasa.core.featurizers.tracker_featurizers import TrackerFeaturizer
22
- from rasa.core.policies.memoization import MemoizationPolicy
23
- from rasa.core.policies.policy import SupportedData, PolicyPrediction
24
- from rasa.shared.core.trackers import (
25
- DialogueStateTracker,
26
- get_active_loop_name,
27
- is_prev_action_listen_in_state,
28
- )
29
- from rasa.shared.core.generator import TrackerWithCachedStates
30
16
  from rasa.core.constants import (
31
17
  DEFAULT_CORE_FALLBACK_THRESHOLD,
32
- RULE_POLICY_PRIORITY,
33
- POLICY_PRIORITY,
34
18
  POLICY_MAX_HISTORY,
19
+ POLICY_PRIORITY,
20
+ RULE_POLICY_PRIORITY,
35
21
  )
22
+ from rasa.core.featurizers.tracker_featurizers import TrackerFeaturizer
23
+ from rasa.core.policies.memoization import MemoizationPolicy
24
+ from rasa.core.policies.policy import PolicyPrediction, SupportedData
25
+ from rasa.core.training.training import ActionFingerprint, create_action_fingerprints
26
+ from rasa.engine.graph import ExecutionContext
27
+ from rasa.engine.recipes.default_recipe import DefaultV1Recipe
28
+ from rasa.engine.storage.resource import Resource
29
+ from rasa.engine.storage.storage import ModelStorage
30
+ from rasa.shared.constants import DOCS_URL_RULES
36
31
  from rasa.shared.core.constants import (
37
- USER_INTENT_RESTART,
38
- USER_INTENT_BACK,
39
- USER_INTENT_SESSION_START,
32
+ ACTION_BACK_NAME,
33
+ ACTION_DEFAULT_FALLBACK_NAME,
40
34
  ACTION_LISTEN_NAME,
41
35
  ACTION_RESTART_NAME,
42
36
  ACTION_SESSION_START_NAME,
43
- ACTION_DEFAULT_FALLBACK_NAME,
44
- ACTION_BACK_NAME,
37
+ ACTIVE_LOOP,
38
+ LOOP_NAME,
39
+ PREVIOUS_ACTION,
40
+ RULE_ONLY_LOOPS,
41
+ RULE_ONLY_SLOTS,
45
42
  RULE_SNIPPET_ACTION_NAME,
46
43
  SHOULD_NOT_BE_SET,
47
- PREVIOUS_ACTION,
48
- LOOP_NAME,
49
44
  SLOTS,
50
- ACTIVE_LOOP,
51
- RULE_ONLY_SLOTS,
52
- RULE_ONLY_LOOPS,
45
+ USER_INTENT_BACK,
46
+ USER_INTENT_RESTART,
47
+ USER_INTENT_SESSION_START,
53
48
  )
54
- from rasa.shared.core.domain import InvalidDomain, State, Domain
49
+ from rasa.shared.core.domain import Domain, InvalidDomain, State
50
+ from rasa.shared.core.events import ActionExecuted, LoopInterrupted, UserUttered
51
+ from rasa.shared.core.generator import TrackerWithCachedStates
52
+ from rasa.shared.core.trackers import (
53
+ DialogueStateTracker,
54
+ get_active_loop_name,
55
+ is_prev_action_listen_in_state,
56
+ )
57
+ from rasa.shared.exceptions import RasaException
55
58
  from rasa.shared.nlu.constants import ACTION_NAME, INTENT_NAME_KEY
56
- import rasa.core.test
57
- from rasa.core.training.training import create_action_fingerprints, ActionFingerprint
58
59
 
59
60
  logger = logging.getLogger(__name__)
60
61
  structlogger = structlog.get_logger()
@@ -1,131 +1,133 @@
1
1
  from __future__ import annotations
2
2
 
3
+ import contextlib
3
4
  import logging
4
- from pathlib import Path
5
5
  from collections import defaultdict
6
- import contextlib
7
- from typing import Any, List, Optional, Text, Dict, Tuple, Union, Type
6
+ from pathlib import Path
7
+ from typing import Any, Dict, List, Optional, Text, Tuple, Type, Union
8
8
 
9
9
  import numpy as np
10
10
  import tensorflow as tf
11
11
 
12
- from rasa.engine.recipes.default_recipe import DefaultV1Recipe
12
+ import rasa.core.actions.action
13
+ import rasa.shared.utils.io
14
+ import rasa.utils.io
15
+ from rasa.core.constants import (
16
+ DEFAULT_MAX_HISTORY,
17
+ DEFAULT_POLICY_PRIORITY,
18
+ DIALOGUE,
19
+ POLICY_MAX_HISTORY,
20
+ POLICY_PRIORITY,
21
+ )
22
+ from rasa.core.featurizers.precomputation import MessageContainerForCoreFeaturization
23
+ from rasa.core.featurizers.tracker_featurizers import (
24
+ MaxHistoryTrackerFeaturizer,
25
+ TrackerFeaturizer,
26
+ )
27
+ from rasa.core.policies.policy import Policy, PolicyPrediction, SupportedData
13
28
  from rasa.engine.graph import ExecutionContext
29
+ from rasa.engine.recipes.default_recipe import DefaultV1Recipe
14
30
  from rasa.engine.storage.resource import Resource
15
31
  from rasa.engine.storage.storage import ModelStorage
16
32
  from rasa.exceptions import ModelNotFound
17
33
  from rasa.nlu.constants import TOKENS_NAMES
18
- from rasa.nlu.extractors.extractor import EntityTagSpec, EntityExtractorMixin
19
- import rasa.core.actions.action
20
- from rasa.core.featurizers.precomputation import MessageContainerForCoreFeaturization
21
- from rasa.core.featurizers.tracker_featurizers import TrackerFeaturizer
22
- from rasa.core.featurizers.tracker_featurizers import MaxHistoryTrackerFeaturizer
34
+ from rasa.nlu.extractors.extractor import EntityExtractorMixin, EntityTagSpec
35
+ from rasa.shared.constants import DIAGNOSTIC_DATA
36
+ from rasa.shared.core.constants import ACTION_LISTEN_NAME, ACTIVE_LOOP, SLOTS
37
+ from rasa.shared.core.domain import Domain
38
+ from rasa.shared.core.events import EntitiesAdded, Event
39
+ from rasa.shared.core.generator import TrackerWithCachedStates
40
+ from rasa.shared.core.trackers import DialogueStateTracker
23
41
  from rasa.shared.exceptions import RasaException
24
42
  from rasa.shared.nlu.constants import (
25
- ACTION_TEXT,
26
43
  ACTION_NAME,
27
- INTENT,
28
- TEXT,
44
+ ACTION_TEXT,
29
45
  ENTITIES,
30
- FEATURE_TYPE_SENTENCE,
31
46
  ENTITY_ATTRIBUTE_TYPE,
32
47
  ENTITY_TAGS,
33
48
  EXTRACTOR,
49
+ FEATURE_TYPE_SENTENCE,
50
+ INTENT,
34
51
  SPLIT_ENTITIES_BY_COMMA,
35
52
  SPLIT_ENTITIES_BY_COMMA_DEFAULT_VALUE,
53
+ TEXT,
36
54
  )
37
- from rasa.core.policies.policy import PolicyPrediction, Policy, SupportedData
38
- from rasa.core.constants import (
39
- DIALOGUE,
40
- POLICY_MAX_HISTORY,
41
- DEFAULT_MAX_HISTORY,
42
- DEFAULT_POLICY_PRIORITY,
43
- POLICY_PRIORITY,
44
- )
45
- from rasa.shared.constants import DIAGNOSTIC_DATA
46
- from rasa.shared.core.constants import ACTIVE_LOOP, SLOTS, ACTION_LISTEN_NAME
47
- from rasa.shared.core.trackers import DialogueStateTracker
48
- from rasa.shared.core.generator import TrackerWithCachedStates
49
- from rasa.shared.core.events import EntitiesAdded, Event
50
- from rasa.shared.core.domain import Domain
51
- from rasa.shared.nlu.training_data.message import Message
52
55
  from rasa.shared.nlu.training_data.features import (
53
56
  Features,
54
- save_features,
55
57
  load_features,
58
+ save_features,
56
59
  )
57
- import rasa.shared.utils.io
58
- import rasa.utils.io
60
+ from rasa.shared.nlu.training_data.message import Message
59
61
  from rasa.utils import train_utils
60
- from rasa.utils.tensorflow.feature_array import (
61
- FeatureArray,
62
- serialize_nested_feature_arrays,
63
- deserialize_nested_feature_arrays,
64
- )
65
- from rasa.utils.tensorflow.models import RasaModel, TransformerRasaModel
66
62
  from rasa.utils.tensorflow import rasa_layers
67
- from rasa.utils.tensorflow.model_data import RasaModelData, FeatureSignature, Data
68
- from rasa.utils.tensorflow.model_data_utils import convert_to_data_format
69
63
  from rasa.utils.tensorflow.constants import (
70
- LABEL,
71
- IDS,
72
- TRANSFORMER_SIZE,
73
- NUM_TRANSFORMER_LAYERS,
74
- NUM_HEADS,
64
+ AUTO,
65
+ BALANCED,
75
66
  BATCH_SIZES,
76
67
  BATCH_STRATEGY,
68
+ BILOU_FLAG,
69
+ CHECKPOINT_MODEL,
70
+ CONCAT_DIMENSION,
71
+ CONNECTION_DENSITY,
72
+ CONSTRAIN_SIMILARITIES,
73
+ CROSS_ENTROPY,
74
+ DENSE_DIMENSION,
75
+ DENSE_INPUT_DROPOUT,
76
+ DROP_RATE,
77
+ DROP_RATE_ATTENTION,
78
+ DROP_RATE_DIALOGUE,
79
+ DROP_RATE_LABEL,
80
+ EMBEDDING_DIMENSION,
81
+ ENCODING_DIMENSION,
82
+ ENTITY_RECOGNITION,
83
+ EPOCH_OVERRIDE,
77
84
  EPOCHS,
78
- RANDOM_SEED,
85
+ EVAL_NUM_EPOCHS,
86
+ EVAL_NUM_EXAMPLES,
87
+ FEATURIZERS,
88
+ HIDDEN_LAYERS_SIZES,
89
+ IDS,
90
+ KEY_RELATIVE_ATTENTION,
91
+ LABEL,
79
92
  LEARNING_RATE,
80
- RANKING_LENGTH,
81
- RENORMALIZE_CONFIDENCES,
82
93
  LOSS_TYPE,
83
- SIMILARITY_TYPE,
84
- NUM_NEG,
85
- EVAL_NUM_EXAMPLES,
86
- EVAL_NUM_EPOCHS,
87
- NEGATIVE_MARGIN_SCALE,
88
- REGULARIZATION_CONSTANT,
89
- SCALE_LOSS,
90
- USE_MAX_NEG_SIM,
94
+ MASK,
95
+ MASKED_LM,
91
96
  MAX_NEG_SIM,
92
97
  MAX_POS_SIM,
93
- EMBEDDING_DIMENSION,
94
- DROP_RATE_DIALOGUE,
95
- DROP_RATE_LABEL,
96
- DROP_RATE,
97
- DROP_RATE_ATTENTION,
98
- CONNECTION_DENSITY,
99
- KEY_RELATIVE_ATTENTION,
100
- VALUE_RELATIVE_ATTENTION,
101
98
  MAX_RELATIVE_POSITION,
102
- CROSS_ENTROPY,
103
- AUTO,
104
- BALANCED,
105
- TENSORBOARD_LOG_DIR,
106
- TENSORBOARD_LOG_LEVEL,
107
- CHECKPOINT_MODEL,
108
- ENCODING_DIMENSION,
109
- UNIDIRECTIONAL_ENCODER,
110
- SEQUENCE,
99
+ MODEL_CONFIDENCE,
100
+ NEGATIVE_MARGIN_SCALE,
101
+ NUM_HEADS,
102
+ NUM_NEG,
103
+ NUM_TRANSFORMER_LAYERS,
104
+ RANDOM_SEED,
105
+ RANKING_LENGTH,
106
+ REGULARIZATION_CONSTANT,
107
+ RENORMALIZE_CONFIDENCES,
108
+ SCALE_LOSS,
111
109
  SENTENCE,
110
+ SEQUENCE,
112
111
  SEQUENCE_LENGTH,
113
- DENSE_DIMENSION,
114
- CONCAT_DIMENSION,
115
- SPARSE_INPUT_DROPOUT,
116
- DENSE_INPUT_DROPOUT,
117
- MASKED_LM,
118
- MASK,
119
- HIDDEN_LAYERS_SIZES,
120
- FEATURIZERS,
121
- ENTITY_RECOGNITION,
122
- CONSTRAIN_SIMILARITIES,
123
- MODEL_CONFIDENCE,
112
+ SIMILARITY_TYPE,
124
113
  SOFTMAX,
125
- BILOU_FLAG,
126
- EPOCH_OVERRIDE,
114
+ SPARSE_INPUT_DROPOUT,
115
+ TENSORBOARD_LOG_DIR,
116
+ TENSORBOARD_LOG_LEVEL,
117
+ TRANSFORMER_SIZE,
118
+ UNIDIRECTIONAL_ENCODER,
127
119
  USE_GPU,
120
+ USE_MAX_NEG_SIM,
121
+ VALUE_RELATIVE_ATTENTION,
128
122
  )
123
+ from rasa.utils.tensorflow.feature_array import (
124
+ FeatureArray,
125
+ deserialize_nested_feature_arrays,
126
+ serialize_nested_feature_arrays,
127
+ )
128
+ from rasa.utils.tensorflow.model_data import Data, FeatureSignature, RasaModelData
129
+ from rasa.utils.tensorflow.model_data_utils import convert_to_data_format
130
+ from rasa.utils.tensorflow.models import RasaModel, TransformerRasaModel
129
131
 
130
132
  logger = logging.getLogger(__name__)
131
133
 
@@ -1,112 +1,114 @@
1
1
  import dataclasses
2
2
  import logging
3
3
  from pathlib import Path
4
- from typing import Any, List, Optional, Text, Dict, Type, Union
4
+ from typing import Any, Dict, List, Optional, Text, Type, Union
5
5
 
6
6
  import numpy as np
7
7
  import tensorflow as tf
8
8
 
9
- import rasa.utils.common
10
- from rasa.engine.graph import ExecutionContext
11
- from rasa.engine.recipes.default_recipe import DefaultV1Recipe
12
- from rasa.engine.storage.resource import Resource
13
- from rasa.engine.storage.storage import ModelStorage
14
- from rasa.nlu.classifiers import LABEL_RANKING_LENGTH
15
- from rasa.shared.nlu.training_data.features import Features
16
- from rasa.shared.core.domain import Domain
17
- from rasa.shared.core.trackers import DialogueStateTracker
18
- from rasa.shared.core.constants import SLOTS, ACTIVE_LOOP, ACTION_UNLIKELY_INTENT_NAME
19
- from rasa.shared.core.events import UserUttered, ActionExecuted
20
9
  import rasa.shared.utils.io
21
- from rasa.shared.nlu.constants import (
22
- INTENT,
23
- TEXT,
24
- ENTITIES,
25
- ACTION_NAME,
26
- SPLIT_ENTITIES_BY_COMMA,
27
- SPLIT_ENTITIES_BY_COMMA_DEFAULT_VALUE,
28
- )
29
- from rasa.nlu.extractors.extractor import EntityTagSpec
30
- from rasa.core.featurizers.precomputation import MessageContainerForCoreFeaturization
31
- from rasa.core.featurizers.tracker_featurizers import TrackerFeaturizer
32
- from rasa.core.featurizers.tracker_featurizers import IntentMaxHistoryTrackerFeaturizer
33
- from rasa.core.featurizers.single_state_featurizer import (
34
- IntentTokenizerSingleStateFeaturizer,
35
- )
36
- from rasa.shared.core.generator import TrackerWithCachedStates
10
+ import rasa.utils.common
37
11
  from rasa.core.constants import (
38
12
  DIALOGUE,
39
13
  POLICY_MAX_HISTORY,
40
14
  POLICY_PRIORITY,
41
15
  UNLIKELY_INTENT_POLICY_PRIORITY,
42
16
  )
17
+ from rasa.core.exceptions import RasaCoreException
18
+ from rasa.core.featurizers.precomputation import MessageContainerForCoreFeaturization
19
+ from rasa.core.featurizers.single_state_featurizer import (
20
+ IntentTokenizerSingleStateFeaturizer,
21
+ )
22
+ from rasa.core.featurizers.tracker_featurizers import (
23
+ IntentMaxHistoryTrackerFeaturizer,
24
+ TrackerFeaturizer,
25
+ )
43
26
  from rasa.core.policies.policy import PolicyPrediction
44
27
  from rasa.core.policies.ted_policy import (
45
28
  LABEL_KEY,
46
29
  LABEL_SUB_KEY,
47
- TEDPolicy,
48
- TED,
49
- SEQUENCE_LENGTH,
50
- SEQUENCE,
51
30
  PREDICTION_FEATURES,
31
+ SEQUENCE,
32
+ SEQUENCE_LENGTH,
33
+ TED,
34
+ TEDPolicy,
52
35
  )
36
+ from rasa.engine.graph import ExecutionContext
37
+ from rasa.engine.recipes.default_recipe import DefaultV1Recipe
38
+ from rasa.engine.storage.resource import Resource
39
+ from rasa.engine.storage.storage import ModelStorage
40
+ from rasa.nlu.classifiers import LABEL_RANKING_LENGTH
41
+ from rasa.nlu.extractors.extractor import EntityTagSpec
42
+ from rasa.shared.core.constants import ACTION_UNLIKELY_INTENT_NAME, ACTIVE_LOOP, SLOTS
43
+ from rasa.shared.core.domain import Domain
44
+ from rasa.shared.core.events import ActionExecuted, UserUttered
45
+ from rasa.shared.core.generator import TrackerWithCachedStates
46
+ from rasa.shared.core.trackers import DialogueStateTracker
47
+ from rasa.shared.nlu.constants import (
48
+ ACTION_NAME,
49
+ ENTITIES,
50
+ INTENT,
51
+ SPLIT_ENTITIES_BY_COMMA,
52
+ SPLIT_ENTITIES_BY_COMMA_DEFAULT_VALUE,
53
+ TEXT,
54
+ )
55
+ from rasa.shared.nlu.training_data.features import Features
56
+ from rasa.shared.utils import common
53
57
  from rasa.utils import train_utils
54
- from rasa.utils.tensorflow.models import RasaModel
58
+ from rasa.utils.tensorflow import layers
55
59
  from rasa.utils.tensorflow.constants import (
56
- LABEL,
57
- DENSE_DIMENSION,
58
- ENCODING_DIMENSION,
59
- UNIDIRECTIONAL_ENCODER,
60
- TRANSFORMER_SIZE,
61
- NUM_TRANSFORMER_LAYERS,
62
- NUM_HEADS,
60
+ BALANCED,
63
61
  BATCH_SIZES,
64
62
  BATCH_STRATEGY,
63
+ BILOU_FLAG,
64
+ CHECKPOINT_MODEL,
65
+ CONCAT_DIMENSION,
66
+ CONNECTION_DENSITY,
67
+ CROSS_ENTROPY,
68
+ DENSE_DIMENSION,
69
+ DENSE_INPUT_DROPOUT,
70
+ DROP_RATE,
71
+ DROP_RATE_ATTENTION,
72
+ DROP_RATE_DIALOGUE,
73
+ DROP_RATE_LABEL,
74
+ EMBEDDING_DIMENSION,
75
+ ENCODING_DIMENSION,
76
+ ENTITY_RECOGNITION,
65
77
  EPOCHS,
66
- RANDOM_SEED,
67
- RANKING_LENGTH,
78
+ EVAL_NUM_EPOCHS,
79
+ EVAL_NUM_EXAMPLES,
80
+ FEATURIZERS,
81
+ HIDDEN_LAYERS_SIZES,
82
+ IGNORE_INTENTS_LIST,
83
+ INNER,
84
+ KEY_RELATIVE_ATTENTION,
85
+ LABEL,
86
+ LABEL_PAD_ID,
87
+ LEARNING_RATE,
68
88
  LOSS_TYPE,
69
- SIMILARITY_TYPE,
89
+ MASKED_LM,
90
+ MAX_RELATIVE_POSITION,
91
+ NEGATIVE_SCORES_KEY,
92
+ NUM_HEADS,
70
93
  NUM_NEG,
71
- EVAL_NUM_EXAMPLES,
72
- EVAL_NUM_EPOCHS,
94
+ NUM_TRANSFORMER_LAYERS,
95
+ POSITIVE_SCORES_KEY,
96
+ RANDOM_SEED,
97
+ RANKING_LENGTH,
73
98
  REGULARIZATION_CONSTANT,
74
99
  SCALE_LOSS,
75
- EMBEDDING_DIMENSION,
76
- DROP_RATE_DIALOGUE,
77
- DROP_RATE_LABEL,
78
- DROP_RATE,
79
- DROP_RATE_ATTENTION,
80
- CONNECTION_DENSITY,
81
- KEY_RELATIVE_ATTENTION,
82
- VALUE_RELATIVE_ATTENTION,
83
- MAX_RELATIVE_POSITION,
84
- INNER,
85
- BALANCED,
100
+ SIMILARITY_TYPE,
101
+ SPARSE_INPUT_DROPOUT,
86
102
  TENSORBOARD_LOG_DIR,
87
103
  TENSORBOARD_LOG_LEVEL,
88
- CHECKPOINT_MODEL,
89
- FEATURIZERS,
90
- ENTITY_RECOGNITION,
91
- IGNORE_INTENTS_LIST,
92
- BILOU_FLAG,
93
- LEARNING_RATE,
94
- CROSS_ENTROPY,
95
- SPARSE_INPUT_DROPOUT,
96
- DENSE_INPUT_DROPOUT,
97
- MASKED_LM,
98
- HIDDEN_LAYERS_SIZES,
99
- CONCAT_DIMENSION,
100
104
  TOLERANCE,
101
- LABEL_PAD_ID,
102
- POSITIVE_SCORES_KEY,
103
- NEGATIVE_SCORES_KEY,
105
+ TRANSFORMER_SIZE,
106
+ UNIDIRECTIONAL_ENCODER,
104
107
  USE_GPU,
108
+ VALUE_RELATIVE_ATTENTION,
105
109
  )
106
- from rasa.utils.tensorflow import layers
107
- from rasa.utils.tensorflow.model_data import RasaModelData, FeatureArray, Data
108
- from rasa.core.exceptions import RasaCoreException
109
- from rasa.shared.utils import common
110
+ from rasa.utils.tensorflow.model_data import Data, FeatureArray, RasaModelData
111
+ from rasa.utils.tensorflow.models import RasaModel
110
112
 
111
113
 
112
114
  @dataclasses.dataclass