rasa-pro 3.11.5__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 (559) 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 +135 -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/{arc-f0f8bd46.js → arc-9f1365dc.js} +1 -1
  70. rasa/core/channels/inspector/dist/assets/{blockDiagram-38ab4fdb-7162c77d.js → blockDiagram-38ab4fdb-e0f81b12.js} +1 -1
  71. rasa/core/channels/inspector/dist/assets/{c4Diagram-3d4e48cf-b1d0d098.js → c4Diagram-3d4e48cf-9deaee1c.js} +1 -1
  72. rasa/core/channels/inspector/dist/assets/channel-44956714.js +1 -0
  73. rasa/core/channels/inspector/dist/assets/{classDiagram-70f12bd4-807a1b27.js → classDiagram-70f12bd4-20450a96.js} +1 -1
  74. rasa/core/channels/inspector/dist/assets/{classDiagram-v2-f2320105-5238dcdb.js → classDiagram-v2-f2320105-749d2abf.js} +1 -1
  75. rasa/core/channels/inspector/dist/assets/clone-a9475142.js +1 -0
  76. rasa/core/channels/inspector/dist/assets/{createText-2e5e7dd3-75dfaa67.js → createText-2e5e7dd3-bef0b38c.js} +1 -1
  77. rasa/core/channels/inspector/dist/assets/{edges-e0da2a9e-df20501d.js → edges-e0da2a9e-943801a7.js} +1 -1
  78. rasa/core/channels/inspector/dist/assets/{erDiagram-9861fffd-13cf4797.js → erDiagram-9861fffd-d523a948.js} +1 -1
  79. rasa/core/channels/inspector/dist/assets/{flowDb-956e92f1-a4991264.js → flowDb-956e92f1-54e4cf19.js} +1 -1
  80. rasa/core/channels/inspector/dist/assets/{flowDiagram-66a62f08-ccecf773.js → flowDiagram-66a62f08-48bfbbe8.js} +1 -1
  81. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-43fa749a.js +1 -0
  82. rasa/core/channels/inspector/dist/assets/{flowchart-elk-definition-4a651766-b5801783.js → flowchart-elk-definition-4a651766-17c30827.js} +1 -1
  83. rasa/core/channels/inspector/dist/assets/{ganttDiagram-c361ad54-161e079a.js → ganttDiagram-c361ad54-43086f2d.js} +1 -1
  84. rasa/core/channels/inspector/dist/assets/{gitGraphDiagram-72cf32ee-f38e86a4.js → gitGraphDiagram-72cf32ee-5c8b693e.js} +1 -1
  85. rasa/core/channels/inspector/dist/assets/{graph-be6ef5d8.js → graph-41a90d26.js} +1 -1
  86. rasa/core/channels/inspector/dist/assets/{index-3862675e-d9ce8994.js → index-3862675e-b43eeae9.js} +1 -1
  87. rasa/core/channels/inspector/dist/assets/{index-7794b245.js → index-e8affe45.js} +155 -155
  88. rasa/core/channels/inspector/dist/assets/{infoDiagram-f8f76790-5000a3dc.js → infoDiagram-f8f76790-0b20676b.js} +1 -1
  89. rasa/core/channels/inspector/dist/assets/{journeyDiagram-49397b02-8ef0a17a.js → journeyDiagram-49397b02-39bce7b5.js} +1 -1
  90. rasa/core/channels/inspector/dist/assets/{layout-d649bc98.js → layout-dc8eeea4.js} +1 -1
  91. rasa/core/channels/inspector/dist/assets/{line-95add810.js → line-c4d2e756.js} +1 -1
  92. rasa/core/channels/inspector/dist/assets/{linear-f6025094.js → linear-86f6f2d9.js} +1 -1
  93. rasa/core/channels/inspector/dist/assets/{mindmap-definition-fc14e90a-2e8531c4.js → mindmap-definition-fc14e90a-4216f771.js} +1 -1
  94. rasa/core/channels/inspector/dist/assets/{pieDiagram-8a3498a8-918adfdb.js → pieDiagram-8a3498a8-1a0cfa96.js} +1 -1
  95. rasa/core/channels/inspector/dist/assets/{quadrantDiagram-120e2f19-cbd01797.js → quadrantDiagram-120e2f19-f91e67cf.js} +1 -1
  96. rasa/core/channels/inspector/dist/assets/{requirementDiagram-deff3bca-6a8b877b.js → requirementDiagram-deff3bca-d4046bed.js} +1 -1
  97. rasa/core/channels/inspector/dist/assets/{sankeyDiagram-04a897e0-c377c3fe.js → sankeyDiagram-04a897e0-2cf6d1d7.js} +1 -1
  98. rasa/core/channels/inspector/dist/assets/{sequenceDiagram-704730f1-ab9e9b7f.js → sequenceDiagram-704730f1-751ac4f5.js} +1 -1
  99. rasa/core/channels/inspector/dist/assets/{stateDiagram-587899a1-5e6ae67d.js → stateDiagram-587899a1-f734f4d4.js} +1 -1
  100. rasa/core/channels/inspector/dist/assets/{stateDiagram-v2-d93cdb3a-40643476.js → stateDiagram-v2-d93cdb3a-91c65710.js} +1 -1
  101. rasa/core/channels/inspector/dist/assets/{styles-6aaf32cf-afb8d108.js → styles-6aaf32cf-e0cff7be.js} +1 -1
  102. rasa/core/channels/inspector/dist/assets/{styles-9a916d00-7edc9423.js → styles-9a916d00-c8029e5d.js} +1 -1
  103. rasa/core/channels/inspector/dist/assets/{styles-c10674c1-c1d8f7e9.js → styles-c10674c1-114f312a.js} +1 -1
  104. rasa/core/channels/inspector/dist/assets/{svgDrawCommon-08f97a94-f494b2ef.js → svgDrawCommon-08f97a94-b7b9dc00.js} +1 -1
  105. rasa/core/channels/inspector/dist/assets/{timeline-definition-85554ec2-11c7cdd0.js → timeline-definition-85554ec2-9536d189.js} +1 -1
  106. rasa/core/channels/inspector/dist/assets/{xychartDiagram-e933f94c-3f191ec1.js → xychartDiagram-e933f94c-bf3b0f36.js} +1 -1
  107. rasa/core/channels/inspector/dist/index.html +1 -1
  108. rasa/core/channels/inspector/package.json +1 -0
  109. rasa/core/channels/inspector/src/App.tsx +15 -2
  110. rasa/core/channels/inspector/src/components/RasaLogo.tsx +31 -0
  111. rasa/core/channels/inspector/src/components/RecruitmentPanel.tsx +68 -0
  112. rasa/core/channels/inspector/src/components/Welcome.tsx +19 -13
  113. rasa/core/channels/inspector/yarn.lock +5 -0
  114. rasa/core/channels/mattermost.py +4 -4
  115. rasa/core/channels/rasa_chat.py +4 -4
  116. rasa/core/channels/rest.py +11 -12
  117. rasa/core/channels/rocketchat.py +4 -3
  118. rasa/core/channels/slack.py +6 -5
  119. rasa/core/channels/socketio.py +8 -28
  120. rasa/core/channels/studio_chat.py +212 -0
  121. rasa/core/channels/telegram.py +105 -55
  122. rasa/core/channels/twilio.py +3 -3
  123. rasa/core/channels/vier_cvg.py +2 -2
  124. rasa/core/channels/voice_ready/audiocodes.py +9 -9
  125. rasa/core/channels/voice_ready/jambonz.py +5 -5
  126. rasa/core/channels/voice_ready/jambonz_protocol.py +3 -4
  127. rasa/core/channels/voice_ready/twilio_voice.py +9 -8
  128. rasa/core/channels/voice_ready/utils.py +2 -2
  129. rasa/core/channels/voice_stream/asr/asr_engine.py +12 -6
  130. rasa/core/channels/voice_stream/asr/asr_event.py +5 -0
  131. rasa/core/channels/voice_stream/asr/azure.py +16 -3
  132. rasa/core/channels/voice_stream/asr/deepgram.py +76 -19
  133. rasa/core/channels/voice_stream/audiocodes.py +292 -0
  134. rasa/core/channels/voice_stream/browser_audio.py +14 -7
  135. rasa/core/channels/voice_stream/call_state.py +6 -2
  136. rasa/core/channels/voice_stream/genesys.py +320 -0
  137. rasa/core/channels/voice_stream/tts/azure.py +13 -5
  138. rasa/core/channels/voice_stream/tts/cartesia.py +34 -14
  139. rasa/core/channels/voice_stream/tts/tts_cache.py +3 -2
  140. rasa/core/channels/voice_stream/tts/tts_engine.py +1 -1
  141. rasa/core/channels/voice_stream/twilio_media_streams.py +12 -8
  142. rasa/core/channels/voice_stream/util.py +1 -1
  143. rasa/core/channels/voice_stream/voice_channel.py +100 -56
  144. rasa/core/channels/webexteams.py +3 -4
  145. rasa/core/constants.py +2 -0
  146. rasa/core/evaluation/marker.py +7 -6
  147. rasa/core/evaluation/marker_base.py +15 -16
  148. rasa/core/evaluation/marker_stats.py +3 -4
  149. rasa/core/evaluation/marker_tracker_loader.py +5 -4
  150. rasa/core/exporter.py +4 -4
  151. rasa/core/featurizers/precomputation.py +8 -8
  152. rasa/core/featurizers/single_state_featurizer.py +7 -7
  153. rasa/core/featurizers/tracker_featurizers.py +13 -13
  154. rasa/core/http_interpreter.py +3 -4
  155. rasa/core/information_retrieval/__init__.py +1 -1
  156. rasa/core/information_retrieval/faiss.py +4 -4
  157. rasa/core/information_retrieval/information_retrieval.py +2 -2
  158. rasa/core/information_retrieval/milvus.py +3 -3
  159. rasa/core/information_retrieval/qdrant.py +3 -3
  160. rasa/core/jobs.py +1 -0
  161. rasa/core/lock.py +2 -3
  162. rasa/core/lock_store.py +3 -3
  163. rasa/core/migrate.py +12 -9
  164. rasa/core/nlg/__init__.py +1 -1
  165. rasa/core/nlg/callback.py +2 -3
  166. rasa/core/nlg/contextual_response_rephraser.py +82 -14
  167. rasa/core/nlg/generator.py +85 -17
  168. rasa/core/nlg/interpolator.py +4 -3
  169. rasa/core/nlg/response.py +9 -7
  170. rasa/core/nlg/summarize.py +1 -0
  171. rasa/core/nlg/translate.py +55 -0
  172. rasa/core/persistor.py +3 -3
  173. rasa/core/policies/ensemble.py +10 -9
  174. rasa/core/policies/enterprise_search_policy.py +87 -21
  175. rasa/core/policies/enterprise_search_prompt_with_citation_template.jinja2 +1 -1
  176. rasa/core/policies/flow_policy.py +13 -14
  177. rasa/core/policies/flows/flow_executor.py +85 -55
  178. rasa/core/policies/intentless_policy.py +6 -7
  179. rasa/core/policies/memoization.py +22 -20
  180. rasa/core/policies/policy.py +24 -22
  181. rasa/core/policies/rule_policy.py +37 -36
  182. rasa/core/policies/ted_policy.py +87 -85
  183. rasa/core/policies/unexpected_intent_policy.py +77 -75
  184. rasa/core/processor.py +167 -74
  185. rasa/core/run.py +5 -4
  186. rasa/core/secrets_manager/endpoints.py +2 -3
  187. rasa/core/secrets_manager/factory.py +2 -3
  188. rasa/core/secrets_manager/secret_manager.py +2 -3
  189. rasa/core/secrets_manager/vault.py +2 -2
  190. rasa/core/test.py +30 -30
  191. rasa/core/tracker_store.py +138 -49
  192. rasa/core/train.py +1 -1
  193. rasa/core/training/__init__.py +2 -2
  194. rasa/core/training/converters/responses_prefix_converter.py +1 -2
  195. rasa/core/training/interactive.py +13 -13
  196. rasa/core/training/story_conflict.py +4 -5
  197. rasa/core/training/training.py +3 -5
  198. rasa/core/utils.py +5 -5
  199. rasa/core/visualize.py +1 -1
  200. rasa/dialogue_understanding/coexistence/intent_based_router.py +2 -2
  201. rasa/dialogue_understanding/coexistence/llm_based_router.py +5 -5
  202. rasa/dialogue_understanding/commands/__init__.py +22 -22
  203. rasa/dialogue_understanding/commands/can_not_handle_command.py +38 -1
  204. rasa/dialogue_understanding/commands/cancel_flow_command.py +96 -9
  205. rasa/dialogue_understanding/commands/change_flow_command.py +36 -2
  206. rasa/dialogue_understanding/commands/chit_chat_answer_command.py +36 -4
  207. rasa/dialogue_understanding/commands/clarify_command.py +46 -4
  208. rasa/dialogue_understanding/commands/command.py +3 -2
  209. rasa/dialogue_understanding/commands/command_syntax_manager.py +55 -0
  210. rasa/dialogue_understanding/commands/correct_slots_command.py +14 -5
  211. rasa/dialogue_understanding/commands/error_command.py +1 -1
  212. rasa/dialogue_understanding/commands/free_form_answer_command.py +2 -1
  213. rasa/dialogue_understanding/commands/handle_code_change_command.py +2 -2
  214. rasa/dialogue_understanding/commands/handle_digressions_command.py +144 -0
  215. rasa/dialogue_understanding/commands/human_handoff_command.py +34 -4
  216. rasa/dialogue_understanding/commands/knowledge_answer_command.py +36 -4
  217. rasa/dialogue_understanding/commands/noop_command.py +2 -1
  218. rasa/dialogue_understanding/commands/prompt_command.py +94 -0
  219. rasa/dialogue_understanding/commands/repeat_bot_messages_command.py +34 -4
  220. rasa/dialogue_understanding/commands/restart_command.py +2 -5
  221. rasa/dialogue_understanding/commands/session_end_command.py +3 -5
  222. rasa/dialogue_understanding/commands/session_start_command.py +3 -5
  223. rasa/dialogue_understanding/commands/set_slot_command.py +55 -16
  224. rasa/dialogue_understanding/commands/skip_question_command.py +34 -4
  225. rasa/dialogue_understanding/commands/start_flow_command.py +78 -2
  226. rasa/dialogue_understanding/commands/user_silence_command.py +3 -5
  227. rasa/dialogue_understanding/commands/utils.py +126 -43
  228. rasa/dialogue_understanding/constants.py +2 -0
  229. rasa/dialogue_understanding/generator/__init__.py +2 -0
  230. rasa/dialogue_understanding/generator/command_generator.py +120 -79
  231. rasa/dialogue_understanding/generator/command_parser.py +245 -0
  232. rasa/dialogue_understanding/generator/constants.py +12 -4
  233. rasa/dialogue_understanding/generator/flow_retrieval.py +7 -7
  234. rasa/dialogue_understanding/generator/llm_based_command_generator.py +187 -59
  235. rasa/dialogue_understanding/generator/llm_command_generator.py +6 -3
  236. rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py +106 -110
  237. rasa/dialogue_understanding/generator/nlu_command_adapter.py +53 -11
  238. rasa/dialogue_understanding/generator/prompt_templates/__init__.py +0 -0
  239. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v2_claude_3_5_sonnet_20240620_template.jinja2 +58 -0
  240. rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v2_gpt_4o_2024_11_20_template.jinja2 +57 -0
  241. rasa/dialogue_understanding/generator/single_step/compact_llm_command_generator.py +574 -0
  242. rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py +41 -386
  243. rasa/dialogue_understanding/generator/utils.py +76 -0
  244. rasa/dialogue_understanding/patterns/cancel.py +2 -1
  245. rasa/dialogue_understanding/patterns/cannot_handle.py +1 -0
  246. rasa/dialogue_understanding/patterns/chitchat.py +1 -1
  247. rasa/dialogue_understanding/patterns/clarify.py +2 -1
  248. rasa/dialogue_understanding/patterns/code_change.py +2 -0
  249. rasa/dialogue_understanding/patterns/collect_information.py +7 -4
  250. rasa/dialogue_understanding/patterns/completed.py +1 -1
  251. rasa/dialogue_understanding/patterns/continue_interrupted.py +1 -1
  252. rasa/dialogue_understanding/patterns/correction.py +17 -3
  253. rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml +78 -2
  254. rasa/dialogue_understanding/patterns/handle_digressions.py +81 -0
  255. rasa/dialogue_understanding/patterns/human_handoff.py +1 -1
  256. rasa/dialogue_understanding/patterns/internal_error.py +1 -0
  257. rasa/dialogue_understanding/patterns/search.py +1 -1
  258. rasa/dialogue_understanding/patterns/session_start.py +1 -1
  259. rasa/dialogue_understanding/patterns/skip_question.py +1 -0
  260. rasa/dialogue_understanding/patterns/user_silence.py +1 -1
  261. rasa/dialogue_understanding/patterns/validate_slot.py +65 -0
  262. rasa/dialogue_understanding/processor/command_processor.py +193 -43
  263. rasa/dialogue_understanding/processor/command_processor_component.py +1 -1
  264. rasa/dialogue_understanding/stack/dialogue_stack.py +4 -3
  265. rasa/dialogue_understanding/stack/frames/__init__.py +2 -2
  266. rasa/dialogue_understanding/stack/frames/chit_chat_frame.py +4 -1
  267. rasa/dialogue_understanding/stack/frames/dialogue_stack_frame.py +2 -3
  268. rasa/dialogue_understanding/stack/frames/flow_stack_frame.py +5 -2
  269. rasa/dialogue_understanding/stack/frames/search_frame.py +4 -1
  270. rasa/dialogue_understanding/stack/utils.py +56 -10
  271. rasa/dialogue_understanding/utils.py +164 -0
  272. rasa/dialogue_understanding_test/README.md +429 -0
  273. rasa/dialogue_understanding_test/__init__.py +0 -0
  274. rasa/dialogue_understanding_test/command_comparison.py +60 -0
  275. rasa/dialogue_understanding_test/command_metric_calculation.py +122 -0
  276. rasa/dialogue_understanding_test/constants.py +22 -0
  277. rasa/dialogue_understanding_test/du_test_case.py +448 -0
  278. rasa/dialogue_understanding_test/du_test_result.py +390 -0
  279. rasa/dialogue_understanding_test/du_test_runner.py +322 -0
  280. rasa/dialogue_understanding_test/du_test_schema.yml +161 -0
  281. rasa/dialogue_understanding_test/io.py +443 -0
  282. rasa/dialogue_understanding_test/test_case_simulation/__init__.py +0 -0
  283. rasa/dialogue_understanding_test/test_case_simulation/exception.py +28 -0
  284. rasa/dialogue_understanding_test/test_case_simulation/test_case_tracker_simulator.py +336 -0
  285. rasa/dialogue_understanding_test/utils.py +70 -0
  286. rasa/dialogue_understanding_test/validation.py +77 -0
  287. rasa/e2e_test/aggregate_test_stats_calculator.py +1 -1
  288. rasa/e2e_test/assertions.py +202 -175
  289. rasa/e2e_test/assertions_schema.yml +6 -0
  290. rasa/e2e_test/constants.py +16 -1
  291. rasa/e2e_test/e2e_config.py +102 -41
  292. rasa/e2e_test/e2e_config_schema.yml +28 -10
  293. rasa/e2e_test/e2e_test_case.py +5 -5
  294. rasa/e2e_test/e2e_test_converter.py +2 -3
  295. rasa/e2e_test/e2e_test_coverage_report.py +6 -6
  296. rasa/e2e_test/e2e_test_result.py +1 -1
  297. rasa/e2e_test/e2e_test_runner.py +143 -38
  298. rasa/e2e_test/llm_judge_prompts/answer_relevance_prompt_template.jinja2 +93 -0
  299. rasa/e2e_test/llm_judge_prompts/groundedness_prompt_template.jinja2 +169 -0
  300. rasa/e2e_test/stub_custom_action.py +1 -1
  301. rasa/e2e_test/utils/generative_assertions.py +243 -0
  302. rasa/e2e_test/utils/io.py +123 -93
  303. rasa/e2e_test/utils/validation.py +101 -3
  304. rasa/engine/caching.py +5 -7
  305. rasa/engine/constants.py +1 -1
  306. rasa/engine/graph.py +3 -2
  307. rasa/engine/language.py +182 -0
  308. rasa/engine/recipes/config_files/default_config.yml +4 -0
  309. rasa/engine/recipes/default_components.py +13 -15
  310. rasa/engine/recipes/default_recipe.py +65 -49
  311. rasa/engine/recipes/graph_recipe.py +10 -7
  312. rasa/engine/recipes/recipe.py +2 -2
  313. rasa/engine/runner/dask.py +2 -2
  314. rasa/engine/runner/interface.py +1 -0
  315. rasa/engine/storage/local_model_storage.py +6 -4
  316. rasa/engine/storage/resource.py +2 -1
  317. rasa/engine/storage/storage.py +8 -3
  318. rasa/engine/training/components.py +2 -1
  319. rasa/engine/training/fingerprinting.py +4 -2
  320. rasa/engine/training/graph_trainer.py +4 -4
  321. rasa/engine/training/hooks.py +2 -2
  322. rasa/engine/validation.py +36 -33
  323. rasa/exceptions.py +3 -2
  324. rasa/graph_components/converters/nlu_message_converter.py +3 -3
  325. rasa/graph_components/providers/domain_for_core_training_provider.py +3 -3
  326. rasa/graph_components/providers/domain_provider.py +3 -2
  327. rasa/graph_components/providers/flows_provider.py +2 -3
  328. rasa/graph_components/providers/forms_provider.py +4 -4
  329. rasa/graph_components/providers/nlu_training_data_provider.py +5 -3
  330. rasa/graph_components/providers/responses_provider.py +4 -4
  331. rasa/graph_components/providers/rule_only_provider.py +3 -2
  332. rasa/graph_components/providers/story_graph_provider.py +8 -8
  333. rasa/graph_components/providers/training_tracker_provider.py +3 -2
  334. rasa/graph_components/validators/default_recipe_validator.py +16 -16
  335. rasa/graph_components/validators/finetuning_validator.py +10 -8
  336. rasa/hooks.py +19 -14
  337. rasa/jupyter.py +2 -2
  338. rasa/llm_fine_tuning/annotation_module.py +4 -4
  339. rasa/llm_fine_tuning/conversations.py +5 -33
  340. rasa/llm_fine_tuning/llm_data_preparation_module.py +6 -4
  341. rasa/llm_fine_tuning/paraphrasing/conversation_rephraser.py +4 -4
  342. rasa/llm_fine_tuning/paraphrasing/rephrase_validator.py +18 -13
  343. rasa/llm_fine_tuning/paraphrasing_module.py +6 -2
  344. rasa/llm_fine_tuning/storage.py +3 -3
  345. rasa/llm_fine_tuning/train_test_split_module.py +27 -27
  346. rasa/llm_fine_tuning/utils.py +7 -0
  347. rasa/markers/marker.py +2 -3
  348. rasa/markers/marker_base.py +1 -2
  349. rasa/markers/upload.py +2 -2
  350. rasa/markers/validate.py +2 -3
  351. rasa/model.py +3 -5
  352. rasa/model_manager/config.py +1 -1
  353. rasa/model_manager/model_api.py +5 -4
  354. rasa/model_manager/runner_service.py +13 -10
  355. rasa/model_manager/socket_bridge.py +15 -9
  356. rasa/model_manager/studio_jwt_auth.py +1 -0
  357. rasa/model_manager/trainer_service.py +9 -7
  358. rasa/model_manager/utils.py +1 -1
  359. rasa/model_manager/warm_rasa_process.py +14 -9
  360. rasa/model_service.py +5 -6
  361. rasa/model_testing.py +13 -15
  362. rasa/model_training.py +29 -29
  363. rasa/nlu/classifiers/diet_classifier.py +72 -73
  364. rasa/nlu/classifiers/fallback_classifier.py +9 -8
  365. rasa/nlu/classifiers/keyword_intent_classifier.py +7 -6
  366. rasa/nlu/classifiers/logistic_regression_classifier.py +3 -3
  367. rasa/nlu/classifiers/mitie_intent_classifier.py +5 -4
  368. rasa/nlu/classifiers/regex_message_handler.py +3 -2
  369. rasa/nlu/classifiers/sklearn_intent_classifier.py +2 -2
  370. rasa/nlu/convert.py +2 -2
  371. rasa/nlu/emulators/dialogflow.py +3 -3
  372. rasa/nlu/emulators/luis.py +5 -5
  373. rasa/nlu/emulators/no_emulator.py +1 -0
  374. rasa/nlu/emulators/wit.py +4 -4
  375. rasa/nlu/extractors/crf_entity_extractor.py +11 -11
  376. rasa/nlu/extractors/duckling_entity_extractor.py +7 -6
  377. rasa/nlu/extractors/entity_synonyms.py +10 -9
  378. rasa/nlu/extractors/extractor.py +16 -16
  379. rasa/nlu/extractors/mitie_entity_extractor.py +10 -9
  380. rasa/nlu/extractors/regex_entity_extractor.py +11 -10
  381. rasa/nlu/extractors/spacy_entity_extractor.py +2 -2
  382. rasa/nlu/featurizers/dense_featurizer/convert_featurizer.py +15 -14
  383. rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py +2 -1
  384. rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py +10 -9
  385. rasa/nlu/featurizers/dense_featurizer/mitie_featurizer.py +9 -7
  386. rasa/nlu/featurizers/dense_featurizer/spacy_featurizer.py +13 -12
  387. rasa/nlu/featurizers/featurizer.py +5 -4
  388. rasa/nlu/featurizers/sparse_featurizer/count_vectors_featurizer.py +6 -6
  389. rasa/nlu/featurizers/sparse_featurizer/lexical_syntactic_featurizer.py +4 -4
  390. rasa/nlu/featurizers/sparse_featurizer/regex_featurizer.py +4 -4
  391. rasa/nlu/featurizers/sparse_featurizer/sparse_featurizer.py +2 -0
  392. rasa/nlu/model.py +0 -1
  393. rasa/nlu/selectors/response_selector.py +67 -68
  394. rasa/nlu/test.py +38 -38
  395. rasa/nlu/tokenizers/jieba_tokenizer.py +1 -2
  396. rasa/nlu/tokenizers/mitie_tokenizer.py +2 -2
  397. rasa/nlu/tokenizers/spacy_tokenizer.py +3 -3
  398. rasa/nlu/tokenizers/tokenizer.py +6 -7
  399. rasa/nlu/tokenizers/whitespace_tokenizer.py +1 -1
  400. rasa/nlu/utils/bilou_utils.py +7 -7
  401. rasa/nlu/utils/hugging_face/registry.py +22 -22
  402. rasa/nlu/utils/hugging_face/transformers_pre_post_processors.py +2 -1
  403. rasa/nlu/utils/mitie_utils.py +2 -1
  404. rasa/nlu/utils/pattern_utils.py +1 -1
  405. rasa/nlu/utils/spacy_utils.py +3 -3
  406. rasa/plugin.py +12 -1
  407. rasa/server.py +3 -2
  408. rasa/shared/constants.py +45 -18
  409. rasa/shared/core/command_payload_reader.py +15 -7
  410. rasa/shared/core/constants.py +34 -4
  411. rasa/shared/core/conversation.py +1 -2
  412. rasa/shared/core/domain.py +19 -20
  413. rasa/shared/core/events.py +60 -39
  414. rasa/shared/core/flows/__init__.py +0 -1
  415. rasa/shared/core/flows/constants.py +11 -0
  416. rasa/shared/core/flows/flow.py +107 -26
  417. rasa/shared/core/flows/flow_step.py +4 -3
  418. rasa/shared/core/flows/flow_step_links.py +1 -2
  419. rasa/shared/core/flows/flow_step_sequence.py +1 -1
  420. rasa/shared/core/flows/flows_list.py +3 -3
  421. rasa/shared/core/flows/flows_yaml_schema.json +69 -3
  422. rasa/shared/core/flows/nlu_trigger.py +1 -1
  423. rasa/shared/core/flows/steps/__init__.py +2 -2
  424. rasa/shared/core/flows/steps/action.py +1 -1
  425. rasa/shared/core/flows/steps/call.py +1 -1
  426. rasa/shared/core/flows/steps/collect.py +22 -40
  427. rasa/shared/core/flows/steps/internal.py +1 -1
  428. rasa/shared/core/flows/steps/link.py +1 -1
  429. rasa/shared/core/flows/steps/no_operation.py +2 -2
  430. rasa/shared/core/flows/steps/set_slots.py +1 -1
  431. rasa/shared/core/flows/utils.py +44 -4
  432. rasa/shared/core/flows/validation.py +4 -6
  433. rasa/shared/core/generator.py +20 -21
  434. rasa/shared/core/slot_mappings.py +360 -121
  435. rasa/shared/core/slots.py +163 -6
  436. rasa/shared/core/trackers.py +108 -33
  437. rasa/shared/core/training_data/loading.py +1 -1
  438. rasa/shared/core/training_data/story_reader/story_reader.py +3 -3
  439. rasa/shared/core/training_data/story_reader/story_step_builder.py +4 -4
  440. rasa/shared/core/training_data/story_reader/yaml_story_reader.py +29 -31
  441. rasa/shared/core/training_data/story_writer/yaml_story_writer.py +22 -24
  442. rasa/shared/core/training_data/structures.py +11 -12
  443. rasa/shared/core/training_data/visualization.py +10 -10
  444. rasa/shared/data.py +6 -6
  445. rasa/shared/engine/caching.py +0 -1
  446. rasa/shared/exceptions.py +2 -2
  447. rasa/shared/importers/importer.py +58 -2
  448. rasa/shared/importers/rasa.py +5 -6
  449. rasa/shared/importers/utils.py +1 -1
  450. rasa/shared/nlu/constants.py +9 -0
  451. rasa/shared/nlu/training_data/entities_parser.py +6 -6
  452. rasa/shared/nlu/training_data/features.py +3 -3
  453. rasa/shared/nlu/training_data/formats/__init__.py +1 -1
  454. rasa/shared/nlu/training_data/formats/dialogflow.py +4 -5
  455. rasa/shared/nlu/training_data/formats/luis.py +7 -8
  456. rasa/shared/nlu/training_data/formats/rasa.py +4 -5
  457. rasa/shared/nlu/training_data/formats/rasa_yaml.py +17 -16
  458. rasa/shared/nlu/training_data/formats/readerwriter.py +8 -11
  459. rasa/shared/nlu/training_data/formats/wit.py +3 -4
  460. rasa/shared/nlu/training_data/loading.py +4 -4
  461. rasa/shared/nlu/training_data/lookup_tables_parser.py +1 -1
  462. rasa/shared/nlu/training_data/message.py +13 -14
  463. rasa/shared/nlu/training_data/schemas/data_schema.py +1 -1
  464. rasa/shared/nlu/training_data/schemas/responses.yml +19 -11
  465. rasa/shared/nlu/training_data/synonyms_parser.py +3 -3
  466. rasa/shared/nlu/training_data/training_data.py +12 -13
  467. rasa/shared/nlu/training_data/util.py +11 -10
  468. rasa/shared/providers/_configs/azure_entra_id_config.py +541 -0
  469. rasa/shared/providers/_configs/azure_openai_client_config.py +150 -15
  470. rasa/shared/providers/_configs/client_config.py +3 -1
  471. rasa/shared/providers/_configs/default_litellm_client_config.py +9 -7
  472. rasa/shared/providers/_configs/huggingface_local_embedding_client_config.py +13 -11
  473. rasa/shared/providers/_configs/litellm_router_client_config.py +12 -10
  474. rasa/shared/providers/_configs/model_group_config.py +8 -5
  475. rasa/shared/providers/_configs/oauth_config.py +33 -0
  476. rasa/shared/providers/_configs/openai_client_config.py +14 -12
  477. rasa/shared/providers/_configs/rasa_llm_client_config.py +5 -3
  478. rasa/shared/providers/_configs/self_hosted_llm_client_config.py +12 -11
  479. rasa/shared/providers/_configs/utils.py +1 -0
  480. rasa/shared/providers/_ssl_verification_utils.py +5 -6
  481. rasa/shared/providers/_utils.py +5 -5
  482. rasa/shared/providers/constants.py +6 -0
  483. rasa/shared/providers/embedding/_base_litellm_embedding_client.py +1 -1
  484. rasa/shared/providers/embedding/azure_openai_embedding_client.py +32 -7
  485. rasa/shared/providers/embedding/embedding_client.py +1 -1
  486. rasa/shared/providers/embedding/litellm_router_embedding_client.py +5 -2
  487. rasa/shared/providers/llm/_base_litellm_client.py +43 -18
  488. rasa/shared/providers/llm/azure_openai_llm_client.py +90 -34
  489. rasa/shared/providers/llm/default_litellm_llm_client.py +4 -2
  490. rasa/shared/providers/llm/litellm_router_llm_client.py +32 -9
  491. rasa/shared/providers/llm/llm_client.py +24 -8
  492. rasa/shared/providers/llm/llm_response.py +61 -2
  493. rasa/shared/providers/llm/openai_llm_client.py +11 -5
  494. rasa/shared/providers/llm/rasa_llm_client.py +17 -14
  495. rasa/shared/providers/llm/self_hosted_llm_client.py +35 -15
  496. rasa/shared/providers/mappings.py +18 -19
  497. rasa/shared/providers/router/_base_litellm_router_client.py +48 -15
  498. rasa/shared/providers/router/router_client.py +3 -1
  499. rasa/shared/utils/cli.py +1 -1
  500. rasa/shared/utils/common.py +15 -1
  501. rasa/shared/utils/constants.py +3 -0
  502. rasa/shared/utils/health_check/embeddings_health_check_mixin.py +1 -1
  503. rasa/shared/utils/health_check/health_check.py +3 -3
  504. rasa/shared/utils/health_check/llm_health_check_mixin.py +1 -1
  505. rasa/shared/utils/io.py +1 -1
  506. rasa/shared/utils/llm.py +100 -18
  507. rasa/shared/utils/pykwalify_extensions.py +25 -1
  508. rasa/shared/utils/schemas/domain.yml +26 -1
  509. rasa/shared/utils/schemas/events.py +1 -1
  510. rasa/shared/utils/yaml.py +24 -20
  511. rasa/studio/auth.py +3 -3
  512. rasa/studio/config.py +1 -2
  513. rasa/studio/data_handler.py +3 -3
  514. rasa/studio/download.py +1 -1
  515. rasa/studio/results_logger.py +3 -3
  516. rasa/studio/upload.py +21 -5
  517. rasa/telemetry.py +127 -48
  518. rasa/tracing/config.py +5 -3
  519. rasa/tracing/constants.py +12 -0
  520. rasa/tracing/instrumentation/attribute_extractors.py +92 -14
  521. rasa/tracing/instrumentation/instrumentation.py +61 -5
  522. rasa/tracing/instrumentation/intentless_policy_instrumentation.py +1 -1
  523. rasa/tracing/instrumentation/metrics.py +52 -11
  524. rasa/tracing/metric_instrument_provider.py +54 -14
  525. rasa/utils/common.py +12 -24
  526. rasa/utils/endpoints.py +1 -1
  527. rasa/utils/io.py +7 -7
  528. rasa/utils/licensing.py +3 -4
  529. rasa/utils/log_utils.py +7 -6
  530. rasa/utils/ml_utils.py +1 -0
  531. rasa/utils/plotting.py +3 -3
  532. rasa/utils/sanic_error_handler.py +1 -1
  533. rasa/utils/tensorflow/callback.py +2 -2
  534. rasa/utils/tensorflow/crf.py +2 -2
  535. rasa/utils/tensorflow/data_generator.py +5 -5
  536. rasa/utils/tensorflow/environment.py +3 -3
  537. rasa/utils/tensorflow/feature_array.py +2 -3
  538. rasa/utils/tensorflow/layers.py +18 -12
  539. rasa/utils/tensorflow/layers_utils.py +2 -1
  540. rasa/utils/tensorflow/metrics.py +2 -2
  541. rasa/utils/tensorflow/model_data.py +7 -7
  542. rasa/utils/tensorflow/model_data_utils.py +10 -9
  543. rasa/utils/tensorflow/models.py +31 -32
  544. rasa/utils/tensorflow/rasa_layers.py +20 -19
  545. rasa/utils/tensorflow/types.py +2 -1
  546. rasa/utils/train_utils.py +23 -21
  547. rasa/utils/url_tools.py +1 -1
  548. rasa/validator.py +594 -115
  549. rasa/version.py +1 -1
  550. {rasa_pro-3.11.5.dist-info → rasa_pro-3.12.0.dist-info}/METADATA +23 -26
  551. rasa_pro-3.12.0.dist-info/RECORD +829 -0
  552. rasa/core/channels/inspector/dist/assets/channel-e265ea59.js +0 -1
  553. rasa/core/channels/inspector/dist/assets/clone-21f8a43d.js +0 -1
  554. rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-5c8ce12d.js +0 -1
  555. rasa_pro-3.11.5.dist-info/RECORD +0 -785
  556. /rasa/dialogue_understanding/generator/{single_step → prompt_templates}/command_prompt_template.jinja2 +0 -0
  557. {rasa_pro-3.11.5.dist-info → rasa_pro-3.12.0.dist-info}/NOTICE +0 -0
  558. {rasa_pro-3.11.5.dist-info → rasa_pro-3.12.0.dist-info}/WHEEL +0 -0
  559. {rasa_pro-3.11.5.dist-info → rasa_pro-3.12.0.dist-info}/entry_points.txt +0 -0
@@ -1,20 +1,21 @@
1
1
  from __future__ import annotations
2
+
3
+ import logging
2
4
  import os
3
5
  from typing import Any, Dict, List, Optional, Text
4
- import logging
5
6
 
6
- from rasa.engine.graph import GraphComponent, ExecutionContext
7
+ import rasa.shared.utils.io
8
+ import rasa.utils.io
9
+ from rasa.engine.graph import ExecutionContext, GraphComponent
7
10
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
11
+ from rasa.engine.storage.resource import Resource
12
+ from rasa.engine.storage.storage import ModelStorage
13
+ from rasa.nlu.extractors.extractor import EntityExtractorMixin
14
+ from rasa.nlu.utils import write_json_to_file
8
15
  from rasa.shared.constants import DOCS_URL_TRAINING_DATA
9
16
  from rasa.shared.nlu.constants import ENTITIES, TEXT
10
- from rasa.shared.nlu.training_data.training_data import TrainingData
11
17
  from rasa.shared.nlu.training_data.message import Message
12
- from rasa.nlu.utils import write_json_to_file
13
- from rasa.nlu.extractors.extractor import EntityExtractorMixin
14
- import rasa.utils.io
15
- import rasa.shared.utils.io
16
- from rasa.engine.storage.resource import Resource
17
- from rasa.engine.storage.storage import ModelStorage
18
+ from rasa.shared.nlu.training_data.training_data import TrainingData
18
19
 
19
20
  logger = logging.getLogger(__name__)
20
21
 
@@ -1,33 +1,33 @@
1
1
  import abc
2
- from typing import Any, Dict, List, NamedTuple, Text, Tuple, Optional
2
+ from typing import Any, Dict, List, NamedTuple, Optional, Text, Tuple
3
3
 
4
4
  import rasa.shared.utils.io
5
- from rasa.shared.constants import DOCS_URL_TRAINING_DATA_NLU
6
- from rasa.shared.nlu.training_data.training_data import TrainingData
7
- from rasa.shared.nlu.training_data.message import Message
8
- from rasa.nlu.tokenizers.tokenizer import Token
5
+ import rasa.utils.train_utils
9
6
  from rasa.nlu.constants import (
10
- TOKENS_NAMES,
11
- ENTITY_ATTRIBUTE_CONFIDENCE_TYPE,
12
- ENTITY_ATTRIBUTE_CONFIDENCE_ROLE,
13
7
  ENTITY_ATTRIBUTE_CONFIDENCE_GROUP,
8
+ ENTITY_ATTRIBUTE_CONFIDENCE_ROLE,
9
+ ENTITY_ATTRIBUTE_CONFIDENCE_TYPE,
10
+ TOKENS_NAMES,
14
11
  )
12
+ from rasa.nlu.tokenizers.tokenizer import Token
13
+ from rasa.shared.constants import DOCS_URL_TRAINING_DATA_NLU
15
14
  from rasa.shared.nlu.constants import (
16
- TEXT,
17
- INTENT,
18
15
  ENTITIES,
19
- ENTITY_ATTRIBUTE_VALUE,
20
- ENTITY_ATTRIBUTE_START,
21
16
  ENTITY_ATTRIBUTE_END,
22
- EXTRACTOR,
23
- ENTITY_ATTRIBUTE_TYPE,
24
17
  ENTITY_ATTRIBUTE_GROUP,
25
18
  ENTITY_ATTRIBUTE_ROLE,
19
+ ENTITY_ATTRIBUTE_START,
20
+ ENTITY_ATTRIBUTE_TYPE,
21
+ ENTITY_ATTRIBUTE_VALUE,
22
+ EXTRACTOR,
23
+ INTENT,
26
24
  NO_ENTITY_TAG,
27
- SPLIT_ENTITIES_BY_COMMA,
28
25
  SINGLE_ENTITY_ALLOWED_INTERLEAVING_CHARSET,
26
+ SPLIT_ENTITIES_BY_COMMA,
27
+ TEXT,
29
28
  )
30
- import rasa.utils.train_utils
29
+ from rasa.shared.nlu.training_data.message import Message
30
+ from rasa.shared.nlu.training_data.training_data import TrainingData
31
31
 
32
32
 
33
33
  class EntityTagSpec(NamedTuple):
@@ -1,29 +1,30 @@
1
1
  from __future__ import annotations
2
+
2
3
  import logging
3
- from rasa.nlu.tokenizers.tokenizer import Tokenizer
4
4
  import typing
5
5
  from typing import Any, Dict, List, Optional, Text, Type
6
6
 
7
- from rasa.engine.graph import GraphComponent, ExecutionContext
7
+ import rasa.shared.utils.io
8
+ from rasa.engine.graph import ExecutionContext, GraphComponent
8
9
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
9
10
  from rasa.engine.storage.resource import Resource
10
11
  from rasa.engine.storage.storage import ModelStorage
11
12
  from rasa.nlu.constants import TOKENS_NAMES
13
+ from rasa.nlu.extractors.extractor import EntityExtractorMixin
14
+ from rasa.nlu.tokenizers.tokenizer import Tokenizer
15
+ from rasa.nlu.utils.mitie_utils import MitieModel, MitieNLP
16
+ from rasa.shared.exceptions import InvalidConfigException
12
17
  from rasa.shared.nlu.constants import (
18
+ ENTITIES,
13
19
  ENTITY_ATTRIBUTE_CONFIDENCE,
14
- ENTITY_ATTRIBUTE_START,
15
20
  ENTITY_ATTRIBUTE_END,
21
+ ENTITY_ATTRIBUTE_START,
16
22
  ENTITY_ATTRIBUTE_TYPE,
17
23
  ENTITY_ATTRIBUTE_VALUE,
18
24
  TEXT,
19
- ENTITIES,
20
25
  )
21
- from rasa.nlu.utils.mitie_utils import MitieModel, MitieNLP
22
- from rasa.nlu.extractors.extractor import EntityExtractorMixin
23
- from rasa.shared.nlu.training_data.training_data import TrainingData
24
26
  from rasa.shared.nlu.training_data.message import Message
25
- import rasa.shared.utils.io
26
- from rasa.shared.exceptions import InvalidConfigException
27
+ from rasa.shared.nlu.training_data.training_data import TrainingData
27
28
 
28
29
  logger = logging.getLogger(__name__)
29
30
 
@@ -1,25 +1,26 @@
1
1
  from __future__ import annotations
2
+
2
3
  import logging
3
4
  import re
4
5
  from typing import Any, Dict, List, Optional, Text
5
6
 
6
- from rasa.engine.graph import GraphComponent, ExecutionContext
7
+ import rasa.nlu.utils.pattern_utils as pattern_utils
8
+ import rasa.shared.utils.io
9
+ from rasa.engine.graph import ExecutionContext, GraphComponent
7
10
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
8
- from rasa.engine.storage.storage import ModelStorage
9
11
  from rasa.engine.storage.resource import Resource
10
- import rasa.shared.utils.io
11
- import rasa.nlu.utils.pattern_utils as pattern_utils
12
- from rasa.shared.nlu.training_data.training_data import TrainingData
13
- from rasa.shared.nlu.training_data.message import Message
12
+ from rasa.engine.storage.storage import ModelStorage
13
+ from rasa.nlu.extractors.extractor import EntityExtractorMixin
14
14
  from rasa.shared.nlu.constants import (
15
15
  ENTITIES,
16
- ENTITY_ATTRIBUTE_VALUE,
17
- ENTITY_ATTRIBUTE_START,
18
16
  ENTITY_ATTRIBUTE_END,
19
- TEXT,
17
+ ENTITY_ATTRIBUTE_START,
20
18
  ENTITY_ATTRIBUTE_TYPE,
19
+ ENTITY_ATTRIBUTE_VALUE,
20
+ TEXT,
21
21
  )
22
- from rasa.nlu.extractors.extractor import EntityExtractorMixin
22
+ from rasa.shared.nlu.training_data.message import Message
23
+ from rasa.shared.nlu.training_data.training_data import TrainingData
23
24
 
24
25
  logger = logging.getLogger(__name__)
25
26
 
@@ -5,9 +5,9 @@ from rasa.engine.graph import ExecutionContext, GraphComponent
5
5
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
6
6
  from rasa.engine.storage.resource import Resource
7
7
  from rasa.engine.storage.storage import ModelStorage
8
- from rasa.shared.nlu.constants import ENTITIES, TEXT
9
- from rasa.nlu.utils.spacy_utils import SpacyModel, SpacyNLP
10
8
  from rasa.nlu.extractors.extractor import EntityExtractorMixin
9
+ from rasa.nlu.utils.spacy_utils import SpacyModel, SpacyNLP
10
+ from rasa.shared.nlu.constants import ENTITIES, TEXT
11
11
  from rasa.shared.nlu.training_data.message import Message
12
12
 
13
13
  if typing.TYPE_CHECKING:
@@ -1,32 +1,33 @@
1
1
  from __future__ import annotations
2
+
2
3
  import logging
3
4
  import os
4
5
  from typing import Any, Dict, List, Optional, Text, Tuple, Type
5
6
 
7
+ import numpy as np
6
8
  import tensorflow as tf
7
9
  from tensorflow.python.eager.wrap_function import WrappedFunction
8
10
  from tqdm import tqdm
9
- import numpy as np
10
11
 
11
- from rasa.engine.graph import GraphComponent, ExecutionContext
12
+ import rasa.core.utils
13
+ import rasa.nlu.utils
14
+ import rasa.shared.utils.io
15
+ import rasa.utils.train_utils as train_utils
16
+ from rasa.engine.graph import ExecutionContext, GraphComponent
12
17
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
13
- from rasa.engine.storage.storage import ModelStorage
14
18
  from rasa.engine.storage.resource import Resource
15
- import rasa.shared.utils.io
16
- import rasa.core.utils
17
- from rasa.nlu.tokenizers.tokenizer import Token, Tokenizer
18
- from rasa.nlu.featurizers.dense_featurizer.dense_featurizer import DenseFeaturizer
19
- from rasa.shared.nlu.training_data.training_data import TrainingData
20
- from rasa.shared.nlu.training_data.message import Message
19
+ from rasa.engine.storage.storage import ModelStorage
20
+ from rasa.exceptions import RasaException
21
21
  from rasa.nlu.constants import (
22
22
  DENSE_FEATURIZABLE_ATTRIBUTES,
23
- TOKENS_NAMES,
24
23
  NUMBER_OF_SUB_TOKENS,
24
+ TOKENS_NAMES,
25
25
  )
26
- from rasa.shared.nlu.constants import TEXT, ACTION_TEXT
27
- from rasa.exceptions import RasaException
28
- import rasa.nlu.utils
29
- import rasa.utils.train_utils as train_utils
26
+ from rasa.nlu.featurizers.dense_featurizer.dense_featurizer import DenseFeaturizer
27
+ from rasa.nlu.tokenizers.tokenizer import Token, Tokenizer
28
+ from rasa.shared.nlu.constants import ACTION_TEXT, TEXT
29
+ from rasa.shared.nlu.training_data.message import Message
30
+ from rasa.shared.nlu.training_data.training_data import TrainingData
30
31
 
31
32
  logger = logging.getLogger(__name__)
32
33
 
@@ -1,10 +1,11 @@
1
1
  from abc import ABC
2
2
  from typing import Text
3
+
3
4
  import numpy as np
4
5
 
5
6
  from rasa.nlu.featurizers.featurizer import Featurizer
6
- from rasa.utils.tensorflow.constants import MEAN_POOLING, MAX_POOLING
7
7
  from rasa.shared.exceptions import InvalidConfigException
8
+ from rasa.utils.tensorflow.constants import MAX_POOLING, MEAN_POOLING
8
9
 
9
10
 
10
11
  class DenseFeaturizer(Featurizer[np.ndarray], ABC):
@@ -1,27 +1,28 @@
1
1
  from __future__ import annotations
2
- import numpy as np
2
+
3
3
  import logging
4
+ from typing import Any, Dict, List, Text, Tuple, Type
4
5
 
5
- from typing import Any, Text, List, Dict, Tuple, Type
6
+ import numpy as np
6
7
  import tensorflow as tf
7
8
 
8
9
  from rasa.engine.graph import ExecutionContext, GraphComponent
9
10
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
10
11
  from rasa.engine.storage.resource import Resource
11
12
  from rasa.engine.storage.storage import ModelStorage
12
- from rasa.nlu.featurizers.dense_featurizer.dense_featurizer import DenseFeaturizer
13
- from rasa.nlu.tokenizers.tokenizer import Token, Tokenizer
14
- from rasa.shared.nlu.training_data.training_data import TrainingData
15
- from rasa.shared.nlu.training_data.message import Message
16
13
  from rasa.nlu.constants import (
17
14
  DENSE_FEATURIZABLE_ATTRIBUTES,
18
- SEQUENCE_FEATURES,
19
- SENTENCE_FEATURES,
20
15
  NO_LENGTH_RESTRICTION,
21
16
  NUMBER_OF_SUB_TOKENS,
17
+ SENTENCE_FEATURES,
18
+ SEQUENCE_FEATURES,
22
19
  TOKENS_NAMES,
23
20
  )
24
- from rasa.shared.nlu.constants import TEXT, ACTION_TEXT
21
+ from rasa.nlu.featurizers.dense_featurizer.dense_featurizer import DenseFeaturizer
22
+ from rasa.nlu.tokenizers.tokenizer import Token, Tokenizer
23
+ from rasa.shared.nlu.constants import ACTION_TEXT, TEXT
24
+ from rasa.shared.nlu.training_data.message import Message
25
+ from rasa.shared.nlu.training_data.training_data import TrainingData
25
26
  from rasa.utils import train_utils
26
27
  from rasa.utils.tensorflow.model_data import ragged_array_to_ndarray
27
28
 
@@ -1,26 +1,28 @@
1
1
  from __future__ import annotations
2
- import numpy as np
2
+
3
3
  import logging
4
4
  import typing
5
- from typing import Any, List, Text, Dict, Tuple, Type
5
+ from typing import Any, Dict, List, Text, Tuple, Type
6
+
7
+ import numpy as np
6
8
 
7
- from rasa.engine.graph import GraphComponent, ExecutionContext
9
+ from rasa.engine.graph import ExecutionContext, GraphComponent
8
10
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
9
11
  from rasa.engine.storage.resource import Resource
10
12
  from rasa.engine.storage.storage import ModelStorage
11
- from rasa.nlu.featurizers.dense_featurizer.dense_featurizer import DenseFeaturizer
12
- from rasa.nlu.tokenizers.tokenizer import Token, Tokenizer
13
13
  from rasa.nlu.constants import (
14
14
  DENSE_FEATURIZABLE_ATTRIBUTES,
15
15
  FEATURIZER_CLASS_ALIAS,
16
16
  TOKENS_NAMES,
17
17
  )
18
+ from rasa.nlu.featurizers.dense_featurizer.dense_featurizer import DenseFeaturizer
19
+ from rasa.nlu.tokenizers.tokenizer import Token, Tokenizer
18
20
  from rasa.nlu.utils.mitie_utils import MitieModel, MitieNLP
19
- from rasa.utils.tensorflow.constants import MEAN_POOLING, POOLING
21
+ from rasa.shared.nlu.constants import FEATURE_TYPE_SENTENCE, FEATURE_TYPE_SEQUENCE
20
22
  from rasa.shared.nlu.training_data.features import Features
21
23
  from rasa.shared.nlu.training_data.message import Message
22
- from rasa.shared.nlu.constants import FEATURE_TYPE_SENTENCE, FEATURE_TYPE_SEQUENCE
23
24
  from rasa.shared.nlu.training_data.training_data import TrainingData
25
+ from rasa.utils.tensorflow.constants import MEAN_POOLING, POOLING
24
26
 
25
27
  if typing.TYPE_CHECKING:
26
28
  import mitie
@@ -1,24 +1,25 @@
1
- import numpy as np
2
- import typing
3
1
  import logging
4
- from typing import Any, Text, Dict, List, Type
2
+ import typing
3
+ from typing import Any, Dict, List, Text, Type
4
+
5
+ import numpy as np
5
6
 
6
- from rasa.engine.recipes.default_recipe import DefaultV1Recipe
7
7
  from rasa.engine.graph import ExecutionContext, GraphComponent
8
+ from rasa.engine.recipes.default_recipe import DefaultV1Recipe
8
9
  from rasa.engine.storage.resource import Resource
9
10
  from rasa.engine.storage.storage import ModelStorage
10
- from rasa.nlu.featurizers.dense_featurizer.dense_featurizer import DenseFeaturizer
11
- from rasa.nlu.tokenizers.spacy_tokenizer import SpacyTokenizer
12
- from rasa.shared.nlu.training_data.training_data import TrainingData
13
- from rasa.shared.nlu.training_data.features import Features
14
- from rasa.shared.nlu.training_data.message import Message
15
11
  from rasa.nlu.constants import (
16
- SPACY_DOCS,
17
12
  DENSE_FEATURIZABLE_ATTRIBUTES,
18
13
  FEATURIZER_CLASS_ALIAS,
14
+ SPACY_DOCS,
19
15
  )
20
- from rasa.shared.nlu.constants import TEXT, FEATURE_TYPE_SENTENCE, FEATURE_TYPE_SEQUENCE
21
- from rasa.utils.tensorflow.constants import POOLING, MEAN_POOLING
16
+ from rasa.nlu.featurizers.dense_featurizer.dense_featurizer import DenseFeaturizer
17
+ from rasa.nlu.tokenizers.spacy_tokenizer import SpacyTokenizer
18
+ from rasa.shared.nlu.constants import FEATURE_TYPE_SENTENCE, FEATURE_TYPE_SEQUENCE, TEXT
19
+ from rasa.shared.nlu.training_data.features import Features
20
+ from rasa.shared.nlu.training_data.message import Message
21
+ from rasa.shared.nlu.training_data.training_data import TrainingData
22
+ from rasa.utils.tensorflow.constants import MEAN_POOLING, POOLING
22
23
 
23
24
  if typing.TYPE_CHECKING:
24
25
  from spacy.tokens import Doc
@@ -1,13 +1,14 @@
1
1
  from __future__ import annotations
2
- from abc import abstractmethod, ABC
2
+
3
+ from abc import ABC, abstractmethod
3
4
  from collections import Counter
4
- from typing import Generic, Iterable, Text, Optional, Dict, Any, TypeVar
5
+ from typing import Any, Dict, Generic, Iterable, Optional, Text, TypeVar
5
6
 
6
7
  from rasa.nlu.constants import FEATURIZER_CLASS_ALIAS
7
- from rasa.shared.nlu.training_data.features import Features
8
- from rasa.shared.nlu.training_data.message import Message
9
8
  from rasa.shared.exceptions import InvalidConfigException
10
9
  from rasa.shared.nlu.constants import FEATURE_TYPE_SENTENCE, FEATURE_TYPE_SEQUENCE
10
+ from rasa.shared.nlu.training_data.features import Features
11
+ from rasa.shared.nlu.training_data.message import Message
11
12
 
12
13
  FeatureType = TypeVar("FeatureType")
13
14
 
@@ -2,7 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  import logging
4
4
  import re
5
- from typing import Any, Dict, List, Optional, Text, Tuple, Set, Type, Union
5
+ from typing import Any, Dict, List, Optional, Set, Text, Tuple, Type, Union
6
6
 
7
7
  import numpy as np
8
8
  import scipy.sparse
@@ -10,21 +10,21 @@ from sklearn.exceptions import NotFittedError
10
10
  from sklearn.feature_extraction.text import CountVectorizer
11
11
 
12
12
  import rasa.shared.utils.io
13
- from rasa.engine.graph import GraphComponent, ExecutionContext
13
+ from rasa.engine.graph import ExecutionContext, GraphComponent
14
14
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
15
15
  from rasa.engine.storage.resource import Resource
16
16
  from rasa.engine.storage.storage import ModelStorage
17
17
  from rasa.nlu.constants import (
18
- TOKENS_NAMES,
19
- MESSAGE_ATTRIBUTES,
20
18
  DENSE_FEATURIZABLE_ATTRIBUTES,
19
+ MESSAGE_ATTRIBUTES,
20
+ TOKENS_NAMES,
21
21
  )
22
22
  from rasa.nlu.featurizers.sparse_featurizer.sparse_featurizer import SparseFeaturizer
23
23
  from rasa.nlu.tokenizers.tokenizer import Tokenizer
24
24
  from rasa.nlu.utils.spacy_utils import SpacyModel
25
25
  from rasa.shared.constants import DOCS_URL_COMPONENTS
26
- from rasa.shared.exceptions import RasaException, FileIOException
27
- from rasa.shared.nlu.constants import TEXT, INTENT, INTENT_RESPONSE_KEY, ACTION_NAME
26
+ from rasa.shared.exceptions import FileIOException, RasaException
27
+ from rasa.shared.nlu.constants import ACTION_NAME, INTENT, INTENT_RESPONSE_KEY, TEXT
28
28
  from rasa.shared.nlu.training_data.message import Message
29
29
  from rasa.shared.nlu.training_data.training_data import TrainingData
30
30
 
@@ -4,13 +4,13 @@ import logging
4
4
  from collections import OrderedDict
5
5
  from typing import (
6
6
  Any,
7
+ Callable,
7
8
  Dict,
8
- Text,
9
9
  List,
10
- Tuple,
11
- Callable,
12
- Set,
13
10
  Optional,
11
+ Set,
12
+ Text,
13
+ Tuple,
14
14
  Type,
15
15
  Union,
16
16
  )
@@ -7,19 +7,19 @@ from typing import Any, Dict, List, Optional, Text, Tuple, Type
7
7
  import numpy as np
8
8
  import scipy.sparse
9
9
 
10
- from rasa.nlu.tokenizers.tokenizer import Tokenizer
10
+ import rasa.nlu.utils.pattern_utils as pattern_utils
11
11
  import rasa.shared.utils.io
12
12
  import rasa.utils.io
13
- import rasa.nlu.utils.pattern_utils as pattern_utils
14
13
  from rasa.engine.graph import ExecutionContext, GraphComponent
15
14
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
16
15
  from rasa.engine.storage.resource import Resource
17
16
  from rasa.engine.storage.storage import ModelStorage
18
17
  from rasa.nlu.constants import TOKENS_NAMES
19
18
  from rasa.nlu.featurizers.sparse_featurizer.sparse_featurizer import SparseFeaturizer
20
- from rasa.shared.nlu.constants import TEXT, RESPONSE, ACTION_TEXT
21
- from rasa.shared.nlu.training_data.training_data import TrainingData
19
+ from rasa.nlu.tokenizers.tokenizer import Tokenizer
20
+ from rasa.shared.nlu.constants import ACTION_TEXT, RESPONSE, TEXT
22
21
  from rasa.shared.nlu.training_data.message import Message
22
+ from rasa.shared.nlu.training_data.training_data import TrainingData
23
23
 
24
24
  logger = logging.getLogger(__name__)
25
25
 
@@ -1,5 +1,7 @@
1
1
  from abc import ABC
2
+
2
3
  import scipy.sparse
4
+
3
5
  from rasa.nlu.featurizers.featurizer import Featurizer
4
6
 
5
7
 
rasa/nlu/model.py CHANGED
@@ -3,7 +3,6 @@ from typing import Text
3
3
 
4
4
  from rasa.shared.exceptions import RasaException
5
5
 
6
-
7
6
  logger = logging.getLogger(__name__)
8
7
 
9
8
 
@@ -1,23 +1,17 @@
1
1
  from __future__ import annotations
2
+
2
3
  import copy
3
4
  import logging
4
- from rasa.nlu.featurizers.featurizer import Featurizer
5
+ from typing import Any, Dict, List, Optional, Text, Tuple, Type, Union
5
6
 
6
7
  import numpy as np
7
8
  import tensorflow as tf
8
9
 
9
- from typing import Any, Dict, Optional, Text, Tuple, Union, List, Type
10
-
10
+ import rasa.shared.utils.io
11
11
  from rasa.engine.graph import ExecutionContext
12
12
  from rasa.engine.recipes.default_recipe import DefaultV1Recipe
13
13
  from rasa.engine.storage.resource import Resource
14
14
  from rasa.engine.storage.storage import ModelStorage
15
- from rasa.shared.constants import DIAGNOSTIC_DATA
16
- from rasa.shared.nlu.training_data import util
17
- import rasa.shared.utils.io
18
- from rasa.shared.exceptions import InvalidConfigException
19
- from rasa.shared.nlu.training_data.training_data import TrainingData
20
- from rasa.shared.nlu.training_data.message import Message
21
15
  from rasa.nlu.classifiers.diet_classifier import (
22
16
  DIET,
23
17
  LABEL_KEY,
@@ -26,81 +20,86 @@ from rasa.nlu.classifiers.diet_classifier import (
26
20
  SEQUENCE,
27
21
  DIETClassifier,
28
22
  )
23
+ from rasa.nlu.constants import (
24
+ DEFAULT_TRANSFORMER_SIZE,
25
+ RESPONSE_SELECTOR_DEFAULT_INTENT,
26
+ RESPONSE_SELECTOR_PREDICTION_KEY,
27
+ RESPONSE_SELECTOR_PROPERTY_NAME,
28
+ RESPONSE_SELECTOR_RANKING_KEY,
29
+ RESPONSE_SELECTOR_RESPONSES_KEY,
30
+ RESPONSE_SELECTOR_RETRIEVAL_INTENTS,
31
+ RESPONSE_SELECTOR_UTTER_ACTION_KEY,
32
+ )
29
33
  from rasa.nlu.extractors.extractor import EntityTagSpec
34
+ from rasa.nlu.featurizers.featurizer import Featurizer
35
+ from rasa.shared.constants import DIAGNOSTIC_DATA
36
+ from rasa.shared.exceptions import InvalidConfigException
37
+ from rasa.shared.nlu.constants import (
38
+ INTENT,
39
+ INTENT_NAME_KEY,
40
+ INTENT_RESPONSE_KEY,
41
+ PREDICTED_CONFIDENCE_KEY,
42
+ RESPONSE,
43
+ TEXT,
44
+ )
45
+ from rasa.shared.nlu.training_data import util
46
+ from rasa.shared.nlu.training_data.message import Message
47
+ from rasa.shared.nlu.training_data.training_data import TrainingData
30
48
  from rasa.utils.tensorflow import rasa_layers
31
49
  from rasa.utils.tensorflow.constants import (
32
- LABEL,
33
- HIDDEN_LAYERS_SIZES,
34
- SHARE_HIDDEN_LAYERS,
35
- TRANSFORMER_SIZE,
36
- NUM_TRANSFORMER_LAYERS,
37
- NUM_HEADS,
50
+ AUTO,
51
+ BALANCED,
38
52
  BATCH_SIZES,
39
53
  BATCH_STRATEGY,
54
+ BILOU_FLAG,
55
+ CHECKPOINT_MODEL,
56
+ CONCAT_DIMENSION,
57
+ CONNECTION_DENSITY,
58
+ CONSTRAIN_SIMILARITIES,
59
+ CROSS_ENTROPY,
60
+ DENSE_DIMENSION,
61
+ DENSE_INPUT_DROPOUT,
62
+ DROP_RATE,
63
+ DROP_RATE_ATTENTION,
64
+ EMBEDDING_DIMENSION,
65
+ ENTITY_RECOGNITION,
40
66
  EPOCHS,
41
- RANDOM_SEED,
67
+ EVAL_NUM_EPOCHS,
68
+ EVAL_NUM_EXAMPLES,
69
+ FEATURIZERS,
70
+ HIDDEN_LAYERS_SIZES,
71
+ INTENT_CLASSIFICATION,
72
+ KEY_RELATIVE_ATTENTION,
73
+ LABEL,
42
74
  LEARNING_RATE,
43
- RANKING_LENGTH,
44
- RENORMALIZE_CONFIDENCES,
45
75
  LOSS_TYPE,
46
- SIMILARITY_TYPE,
47
- NUM_NEG,
48
- SPARSE_INPUT_DROPOUT,
49
- DENSE_INPUT_DROPOUT,
50
76
  MASKED_LM,
51
- ENTITY_RECOGNITION,
52
- INTENT_CLASSIFICATION,
53
- EVAL_NUM_EXAMPLES,
54
- EVAL_NUM_EPOCHS,
55
- UNIDIRECTIONAL_ENCODER,
56
- DROP_RATE,
57
- DROP_RATE_ATTENTION,
58
- CONNECTION_DENSITY,
59
- NEGATIVE_MARGIN_SCALE,
60
- REGULARIZATION_CONSTANT,
61
- SCALE_LOSS,
62
- USE_MAX_NEG_SIM,
63
77
  MAX_NEG_SIM,
64
78
  MAX_POS_SIM,
65
- EMBEDDING_DIMENSION,
66
- BILOU_FLAG,
67
- KEY_RELATIVE_ATTENTION,
68
- VALUE_RELATIVE_ATTENTION,
69
79
  MAX_RELATIVE_POSITION,
80
+ MODEL_CONFIDENCE,
81
+ NEGATIVE_MARGIN_SCALE,
82
+ NUM_HEADS,
83
+ NUM_NEG,
84
+ NUM_TRANSFORMER_LAYERS,
85
+ RANDOM_SEED,
86
+ RANKING_LENGTH,
87
+ REGULARIZATION_CONSTANT,
88
+ RENORMALIZE_CONFIDENCES,
70
89
  RETRIEVAL_INTENT,
71
- USE_TEXT_AS_LABEL,
72
- CROSS_ENTROPY,
73
- AUTO,
74
- BALANCED,
90
+ SCALE_LOSS,
91
+ SHARE_HIDDEN_LAYERS,
92
+ SIMILARITY_TYPE,
93
+ SOFTMAX,
94
+ SPARSE_INPUT_DROPOUT,
75
95
  TENSORBOARD_LOG_DIR,
76
96
  TENSORBOARD_LOG_LEVEL,
77
- CONCAT_DIMENSION,
78
- FEATURIZERS,
79
- CHECKPOINT_MODEL,
80
- DENSE_DIMENSION,
81
- CONSTRAIN_SIMILARITIES,
82
- MODEL_CONFIDENCE,
83
- SOFTMAX,
84
- )
85
- from rasa.nlu.constants import (
86
- RESPONSE_SELECTOR_PROPERTY_NAME,
87
- RESPONSE_SELECTOR_RETRIEVAL_INTENTS,
88
- RESPONSE_SELECTOR_RESPONSES_KEY,
89
- RESPONSE_SELECTOR_PREDICTION_KEY,
90
- RESPONSE_SELECTOR_RANKING_KEY,
91
- RESPONSE_SELECTOR_UTTER_ACTION_KEY,
92
- RESPONSE_SELECTOR_DEFAULT_INTENT,
93
- DEFAULT_TRANSFORMER_SIZE,
94
- )
95
- from rasa.shared.nlu.constants import (
96
- TEXT,
97
- INTENT,
98
- RESPONSE,
99
- INTENT_RESPONSE_KEY,
100
- INTENT_NAME_KEY,
101
- PREDICTED_CONFIDENCE_KEY,
97
+ TRANSFORMER_SIZE,
98
+ UNIDIRECTIONAL_ENCODER,
99
+ USE_MAX_NEG_SIM,
100
+ USE_TEXT_AS_LABEL,
101
+ VALUE_RELATIVE_ATTENTION,
102
102
  )
103
-
104
103
  from rasa.utils.tensorflow.model_data import RasaModelData
105
104
  from rasa.utils.tensorflow.models import RasaModel
106
105