rasa-pro 3.12.0.dev10__py3-none-any.whl → 3.12.0.dev12__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.
- rasa/core/actions/action.py +3 -17
- rasa/core/actions/forms.py +2 -4
- rasa/core/channels/voice_ready/audiocodes.py +23 -42
- rasa/core/channels/voice_stream/tts/azure.py +1 -2
- rasa/core/migrate.py +2 -2
- rasa/core/policies/flows/flow_executor.py +1 -33
- rasa/dialogue_understanding/commands/can_not_handle_command.py +2 -2
- rasa/dialogue_understanding/commands/cancel_flow_command.py +4 -62
- rasa/dialogue_understanding/commands/change_flow_command.py +2 -2
- rasa/dialogue_understanding/commands/chit_chat_answer_command.py +2 -2
- rasa/dialogue_understanding/commands/clarify_command.py +2 -2
- rasa/dialogue_understanding/commands/correct_slots_command.py +2 -11
- rasa/dialogue_understanding/commands/human_handoff_command.py +2 -2
- rasa/dialogue_understanding/commands/knowledge_answer_command.py +2 -2
- rasa/dialogue_understanding/commands/repeat_bot_messages_command.py +2 -2
- rasa/dialogue_understanding/commands/set_slot_command.py +15 -7
- rasa/dialogue_understanding/commands/skip_question_command.py +2 -2
- rasa/dialogue_understanding/commands/start_flow_command.py +2 -43
- rasa/dialogue_understanding/commands/utils.py +1 -1
- rasa/dialogue_understanding/constants.py +0 -1
- rasa/dialogue_understanding/generator/command_generator.py +76 -10
- rasa/dialogue_understanding/generator/command_parser.py +1 -1
- rasa/dialogue_understanding/generator/llm_based_command_generator.py +2 -126
- rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py +2 -10
- rasa/dialogue_understanding/generator/nlu_command_adapter.py +2 -4
- rasa/dialogue_understanding/generator/single_step/command_prompt_template.jinja2 +79 -53
- rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py +19 -11
- rasa/dialogue_understanding/patterns/correction.py +1 -13
- rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml +2 -62
- rasa/dialogue_understanding/processor/command_processor.py +28 -117
- rasa/dialogue_understanding/utils.py +0 -31
- rasa/dialogue_understanding_test/test_case_simulation/test_case_tracker_simulator.py +2 -2
- rasa/shared/core/constants.py +1 -22
- rasa/shared/core/domain.py +4 -6
- rasa/shared/core/events.py +2 -13
- rasa/shared/core/flows/flow.py +0 -17
- rasa/shared/core/flows/flows_yaml_schema.json +0 -38
- rasa/shared/core/flows/steps/collect.py +1 -18
- rasa/shared/core/flows/utils.py +1 -16
- rasa/shared/core/slot_mappings.py +6 -6
- rasa/shared/core/slots.py +0 -19
- rasa/shared/core/trackers.py +1 -3
- rasa/shared/nlu/constants.py +0 -1
- rasa/shared/utils/llm.py +1 -1
- rasa/shared/utils/schemas/domain.yml +1 -0
- rasa/validator.py +22 -172
- rasa/version.py +1 -1
- {rasa_pro-3.12.0.dev10.dist-info → rasa_pro-3.12.0.dev12.dist-info}/METADATA +1 -1
- {rasa_pro-3.12.0.dev10.dist-info → rasa_pro-3.12.0.dev12.dist-info}/RECORD +52 -55
- rasa/core/actions/action_handle_digressions.py +0 -142
- rasa/dialogue_understanding/commands/handle_digressions_command.py +0 -150
- rasa/dialogue_understanding/patterns/handle_digressions.py +0 -81
- {rasa_pro-3.12.0.dev10.dist-info → rasa_pro-3.12.0.dev12.dist-info}/NOTICE +0 -0
- {rasa_pro-3.12.0.dev10.dist-info → rasa_pro-3.12.0.dev12.dist-info}/WHEEL +0 -0
- {rasa_pro-3.12.0.dev10.dist-info → rasa_pro-3.12.0.dev12.dist-info}/entry_points.txt +0 -0
|
@@ -93,10 +93,9 @@ rasa/cli/x.py,sha256=C7dLtYXAkD-uj7hNj7Pz5YbOupp2yRcMjQbsEVqXUJ8,6825
|
|
|
93
93
|
rasa/constants.py,sha256=m6If7alC5obaHU-JQWXEBo4mooVwIMzNRTjyTzzZSVg,1306
|
|
94
94
|
rasa/core/__init__.py,sha256=wTSmsFlgK0Ylvuyq20q9APwpT5xyVJYZfzhs4rrkciM,456
|
|
95
95
|
rasa/core/actions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
96
|
-
rasa/core/actions/action.py,sha256=
|
|
96
|
+
rasa/core/actions/action.py,sha256=ErRA3hH7KElhLaGyIFVkAbCR1OAZawZmhbb3nohvy28,46353
|
|
97
97
|
rasa/core/actions/action_clean_stack.py,sha256=xUP-2ipPsPAnAiwP17c-ezmHPSrV4JSUZr-eSgPQwIs,2279
|
|
98
98
|
rasa/core/actions/action_exceptions.py,sha256=hghzXYN6VeHC-O_O7WiPesCNV86ZTkHgG90ZnQcbai8,724
|
|
99
|
-
rasa/core/actions/action_handle_digressions.py,sha256=u1woxFGmDbsoRyEB9yFDJonojRUeYosbm1_afzfecWo,4442
|
|
100
99
|
rasa/core/actions/action_hangup.py,sha256=o5iklHG-F9IcRgWis5C6AumVXznxzAV3o9zdduhozEM,994
|
|
101
100
|
rasa/core/actions/action_repeat_bot_messages.py,sha256=2DZFHPS7SKslz_Pm3Tyn0154xTws3E7lMYKl2ktQPTQ,3522
|
|
102
101
|
rasa/core/actions/action_run_slot_rejections.py,sha256=Bmt3-nt6wmts40B5bqq1Pv5EA5PYQ7mv6wDLPoGbi2s,6872
|
|
@@ -107,7 +106,7 @@ rasa/core/actions/constants.py,sha256=gfgdWmj-OJ5xTcTAS1OcXQ3dgcTiHO98NC-SGyKlTj
|
|
|
107
106
|
rasa/core/actions/custom_action_executor.py,sha256=qafASBdM3-hByDqbkNxgXfx5yMSsJh_nB3B7x9ye0TY,6176
|
|
108
107
|
rasa/core/actions/direct_custom_actions_executor.py,sha256=IzxRnPF92zs3WX-p9DoFq51Vf0QwfE6prB_AlyEEllc,3746
|
|
109
108
|
rasa/core/actions/e2e_stub_custom_action_executor.py,sha256=D-kECC1QjVLv4owNxstW2xJPPsXTGfGepvquMeWB_ec,2282
|
|
110
|
-
rasa/core/actions/forms.py,sha256=
|
|
109
|
+
rasa/core/actions/forms.py,sha256=osY9IVfMNY0ger36tQCiDumMykivQHyaLPDp4SFDe18,26820
|
|
111
110
|
rasa/core/actions/grpc_custom_action_executor.py,sha256=EDxdSIDA4H4Mu-QZk-pPGV2N41ZsbY8W9laV6l1WlDQ,9103
|
|
112
111
|
rasa/core/actions/http_custom_action_executor.py,sha256=oC5OM-p11wHOXXVl7vrTUjhwI6JZh5qCaQpWtl0I0WE,5434
|
|
113
112
|
rasa/core/actions/loops.py,sha256=3-kt_Sn_Y05PLYoYMsnuIn9e5mxYp31DJIx2omqy0dU,3531
|
|
@@ -268,7 +267,7 @@ rasa/core/channels/telegram.py,sha256=-rDxVpW_HS8ARQm4d1VZNd2vovKt-Hs3dbCRdKmEZo
|
|
|
268
267
|
rasa/core/channels/twilio.py,sha256=2BTQpyx0b0yPpc0A2BHYfxLPgodrLGLs8nq6i3lVGAM,5906
|
|
269
268
|
rasa/core/channels/vier_cvg.py,sha256=GkrWKu7NRMFtLMyYp-kQ2taWAc_keAwhYrkVPW56iaU,13544
|
|
270
269
|
rasa/core/channels/voice_ready/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
271
|
-
rasa/core/channels/voice_ready/audiocodes.py,sha256=
|
|
270
|
+
rasa/core/channels/voice_ready/audiocodes.py,sha256=xc6vJIUWdJgMRjg5Oxc42KtJHNxwmu1rJeW6AuEKvBo,18742
|
|
272
271
|
rasa/core/channels/voice_ready/jambonz.py,sha256=r7O8k_X934lQe0fzY7R0z_hMeX5qMN663bTugQ1-8eQ,4154
|
|
273
272
|
rasa/core/channels/voice_ready/jambonz_protocol.py,sha256=idWArI4SRr4fjyZx3VIUoua_cbLwpvw4e5VeHyQjE8E,12975
|
|
274
273
|
rasa/core/channels/voice_ready/twilio_voice.py,sha256=5N5dQ2l_u8CC9J16USgufl6MB1bJziCky7VT58MPt68,14520
|
|
@@ -283,7 +282,7 @@ rasa/core/channels/voice_stream/audio_bytes.py,sha256=3V0QQplPD-kVfebaaeVcKgV7pw
|
|
|
283
282
|
rasa/core/channels/voice_stream/browser_audio.py,sha256=P_0Dq6QHuClfu2yNyypJth9JR6gqzjFOqcPrS8f9syw,3784
|
|
284
283
|
rasa/core/channels/voice_stream/call_state.py,sha256=U6rSgL3ITkUnYBu8mWNfUvMQT5sqoxIfFE_ZhsVDME8,765
|
|
285
284
|
rasa/core/channels/voice_stream/tts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
286
|
-
rasa/core/channels/voice_stream/tts/azure.py,sha256=
|
|
285
|
+
rasa/core/channels/voice_stream/tts/azure.py,sha256=MtWMfqhjNmVtZcmdVvzwCIZM8ZFuCN2tdktT4uaTpXU,3911
|
|
287
286
|
rasa/core/channels/voice_stream/tts/cartesia.py,sha256=aX0T6HSlLxy6DdHyXMcIpCH_Xw22nbEp_KUrn_es6VA,4339
|
|
288
287
|
rasa/core/channels/voice_stream/tts/tts_cache.py,sha256=K4S2d8zWX2h2ylYALp7IdqFSkuTIqLvho--Yt0litb4,850
|
|
289
288
|
rasa/core/channels/voice_stream/tts/tts_engine.py,sha256=JMCWGHxT8QiqKoBeI6F4RX_-Q9EEqG3vUtkgOUnlt-w,1812
|
|
@@ -313,7 +312,7 @@ rasa/core/information_retrieval/qdrant.py,sha256=KHtU6txMs5ZrAECVjgTa2d5mb37-gHx
|
|
|
313
312
|
rasa/core/jobs.py,sha256=d0HuO161mDfAGHk4-TppWuQ3gnJCyblqggINOMEfVcI,2027
|
|
314
313
|
rasa/core/lock.py,sha256=KNrpWv_KYLFjQfwaDembrjO2i4HhoVHbllw6_BPYMrE,4718
|
|
315
314
|
rasa/core/lock_store.py,sha256=weupfBiYMz-B_N-LAONCvp-po1uPRdie9imLYn7hFDU,12504
|
|
316
|
-
rasa/core/migrate.py,sha256=
|
|
315
|
+
rasa/core/migrate.py,sha256=Wl8f76ITIJZHpWVXfmcthiKeDPgBl8WNU7sNA1-O0IA,14610
|
|
317
316
|
rasa/core/nlg/__init__.py,sha256=jZuQAhOUcxO-KqqHGqICHSY3oDeXlUiGr2trQDYfG6o,240
|
|
318
317
|
rasa/core/nlg/callback.py,sha256=0zDQsOa3uV66G3smCVQ9cUdvj-it8tFneIzqShM7NeI,5208
|
|
319
318
|
rasa/core/nlg/contextual_response_rephraser.py,sha256=2aWneYFWRrGtgFezsrriLxUYTnp_64sjPNO9rZpcGQs,12965
|
|
@@ -330,7 +329,7 @@ rasa/core/policies/enterprise_search_prompt_with_citation_template.jinja2,sha256
|
|
|
330
329
|
rasa/core/policies/flow_policy.py,sha256=597G62hrLF_CAMCvu-TPRldFnjMP2XEIkhcIaPWcQAc,7489
|
|
331
330
|
rasa/core/policies/flows/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
332
331
|
rasa/core/policies/flows/flow_exceptions.py,sha256=_FQuN-cerQDM1pivce9bz4zylh5UYkljvYS1gjDukHI,1527
|
|
333
|
-
rasa/core/policies/flows/flow_executor.py,sha256=
|
|
332
|
+
rasa/core/policies/flows/flow_executor.py,sha256=7TbHmODYpE4yt5chhR6QOutGJCgOWo9LfEVVYPYWUjw,26952
|
|
334
333
|
rasa/core/policies/flows/flow_step_result.py,sha256=agjPrD6lahGSe2ViO5peBeoMdI9ngVGRSgtytgxmJmg,1360
|
|
335
334
|
rasa/core/policies/intentless_policy.py,sha256=p9e54sSjTOGAFxLbPdF0jspQNETmtBvg-RXQNPviIbE,37898
|
|
336
335
|
rasa/core/policies/intentless_prompt_template.jinja2,sha256=KhIL3cruMmkxhrs5oVbqgSvK6ZiN_6TQ_jXrgtEB-ZY,677
|
|
@@ -365,46 +364,45 @@ rasa/dialogue_understanding/coexistence/intent_based_router.py,sha256=JlYBZdScnh
|
|
|
365
364
|
rasa/dialogue_understanding/coexistence/llm_based_router.py,sha256=UTLMZpynSRt8qnQSSV-dTgFQbBHaMEgrLIUWCMyH1BE,11354
|
|
366
365
|
rasa/dialogue_understanding/coexistence/router_template.jinja2,sha256=CHWFreN0sv1EbPh-hf5AlCt3zxy2_llX1Pdn9Q11Y18,357
|
|
367
366
|
rasa/dialogue_understanding/commands/__init__.py,sha256=F-pLETYRUjhIkjjDfXGUuPsK_ac1HcLmJkrUUP0RhME,2259
|
|
368
|
-
rasa/dialogue_understanding/commands/can_not_handle_command.py,sha256=
|
|
369
|
-
rasa/dialogue_understanding/commands/cancel_flow_command.py,sha256=
|
|
370
|
-
rasa/dialogue_understanding/commands/change_flow_command.py,sha256=
|
|
371
|
-
rasa/dialogue_understanding/commands/chit_chat_answer_command.py,sha256=
|
|
372
|
-
rasa/dialogue_understanding/commands/clarify_command.py,sha256=
|
|
367
|
+
rasa/dialogue_understanding/commands/can_not_handle_command.py,sha256=z7aGn7aBMdXTsn7lzN1RvXlYi8WN7gtFm21qcJF8Hko,2829
|
|
368
|
+
rasa/dialogue_understanding/commands/cancel_flow_command.py,sha256=qfWStJBeoCCclipqMp8Kn6M-q0njleCmDe78yLbXcJ4,4623
|
|
369
|
+
rasa/dialogue_understanding/commands/change_flow_command.py,sha256=gQyL1UqRNPdYXKVQi3hlAHOdpcCWLkhL34M3A_PzSR0,1722
|
|
370
|
+
rasa/dialogue_understanding/commands/chit_chat_answer_command.py,sha256=Pyss0FtrVy5CUkH-lK27UdZ1vwBTXkvLlW3bqlo1uJ0,2160
|
|
371
|
+
rasa/dialogue_understanding/commands/clarify_command.py,sha256=1Lbq1AavvKemJQgKNTy0lBVQGymEte8ilHlvu2poG3Q,3450
|
|
373
372
|
rasa/dialogue_understanding/commands/command.py,sha256=riYYO0Lvm7T2vydDOfFFi7IquJWdyX_jH8d7qX0PB2c,2993
|
|
374
|
-
rasa/dialogue_understanding/commands/correct_slots_command.py,sha256=
|
|
373
|
+
rasa/dialogue_understanding/commands/correct_slots_command.py,sha256=lnSfYXNdTwQflOeMRXh1rV4qn6Bgx85S1yaXHtiKKAs,10461
|
|
375
374
|
rasa/dialogue_understanding/commands/error_command.py,sha256=LTEsxkGGGZR6wEEGuTtQ4K4EK_u2UFhNK4eAKyPfyME,2436
|
|
376
375
|
rasa/dialogue_understanding/commands/free_form_answer_command.py,sha256=XlQrHXrcOemzu1LHZiDhBAluiSlnUQ2V7ET5Z-aG7gc,224
|
|
377
376
|
rasa/dialogue_understanding/commands/handle_code_change_command.py,sha256=Cp2e1iD0zacXmljJ8vDXHJu9Fp6BwB7cGx8NF748akw,2192
|
|
378
|
-
rasa/dialogue_understanding/commands/
|
|
379
|
-
rasa/dialogue_understanding/commands/
|
|
380
|
-
rasa/dialogue_understanding/commands/knowledge_answer_command.py,sha256=S2AP2_H-KFnSRUKqG3kz083dR_JTXKMWkjhzi9mEDPQ,2166
|
|
377
|
+
rasa/dialogue_understanding/commands/human_handoff_command.py,sha256=bxSTNbLz05nN_gL14TsVural4S9-Du1teVXy1JDASP8,2275
|
|
378
|
+
rasa/dialogue_understanding/commands/knowledge_answer_command.py,sha256=Lc2u5gzzBh6m6Aw5n9M96UZvRDSlUVaLDTeCJ3hj46o,2158
|
|
381
379
|
rasa/dialogue_understanding/commands/noop_command.py,sha256=aIaLBjSV84qy9X4aGlJfMIYhF57maH5CiKNWL_-giD4,1485
|
|
382
|
-
rasa/dialogue_understanding/commands/repeat_bot_messages_command.py,sha256=
|
|
380
|
+
rasa/dialogue_understanding/commands/repeat_bot_messages_command.py,sha256=6oitCpsYtLjOUBGe4cIx2OOZnw9ygi4nKwWOg66R2aA,2225
|
|
383
381
|
rasa/dialogue_understanding/commands/restart_command.py,sha256=vvmucwlVtfh6VMgdOn5hZfsP9U5HhfbDeBSG2IndX0Y,1639
|
|
384
382
|
rasa/dialogue_understanding/commands/session_end_command.py,sha256=ZecUpYZDTX_68_kV1Hv4i317bbeBeVHHyhW_A7r5yzs,1770
|
|
385
383
|
rasa/dialogue_understanding/commands/session_start_command.py,sha256=FA4yocMnFt5bn2dmXj48S4Pq_yTlEnOBxgK_mq-qAxg,1704
|
|
386
|
-
rasa/dialogue_understanding/commands/set_slot_command.py,sha256=
|
|
387
|
-
rasa/dialogue_understanding/commands/skip_question_command.py,sha256=
|
|
388
|
-
rasa/dialogue_understanding/commands/start_flow_command.py,sha256=
|
|
384
|
+
rasa/dialogue_understanding/commands/set_slot_command.py,sha256=baEfxKiSs_JxWX4SkiCeCkwk7eRvb2A7pEXCxT_fhXA,5992
|
|
385
|
+
rasa/dialogue_understanding/commands/skip_question_command.py,sha256=ZPstoD-A2jnW8AszKsZ10WtDEeAtoCh6swESwk7fpDA,2588
|
|
386
|
+
rasa/dialogue_understanding/commands/start_flow_command.py,sha256=7cX2W7lOc_mfEHutuCNCC_mGpa0rHrFMKhJMKdMZk5E,3793
|
|
389
387
|
rasa/dialogue_understanding/commands/user_silence_command.py,sha256=DQjRfZk09sV1o2emnLkmX7cZpsJwBHNeJGBDQVkejjY,1686
|
|
390
|
-
rasa/dialogue_understanding/commands/utils.py,sha256=
|
|
391
|
-
rasa/dialogue_understanding/constants.py,sha256=
|
|
388
|
+
rasa/dialogue_understanding/commands/utils.py,sha256=OV6hJjlb2WWOHCaIxtRXbbKHKSNGX2het_KZNoomrBI,1748
|
|
389
|
+
rasa/dialogue_understanding/constants.py,sha256=YcELaIss69Hnroclvn90Dl4Suk3S6e3t0UoIbUaXG2A,83
|
|
392
390
|
rasa/dialogue_understanding/generator/__init__.py,sha256=Ykeb2wQ1DuiUWAWO0hLIPSTK1_Ktiq9DZXF6D3ugN78,764
|
|
393
|
-
rasa/dialogue_understanding/generator/command_generator.py,sha256=
|
|
394
|
-
rasa/dialogue_understanding/generator/command_parser.py,sha256=
|
|
391
|
+
rasa/dialogue_understanding/generator/command_generator.py,sha256=OTyE9_CcorpjTOgdI-u0J9ryBwlDdd2foJLA3jQJ9_Y,11959
|
|
392
|
+
rasa/dialogue_understanding/generator/command_parser.py,sha256=E-P1giFoSzPwgg7FqPEx0-4XWUAKidn8HT2Bn70DzmM,6430
|
|
395
393
|
rasa/dialogue_understanding/generator/constants.py,sha256=ntP5xmTlS3b_6uVT7LKvWzxbmf5_9tWZ5eFY1RLBtqU,716
|
|
396
394
|
rasa/dialogue_understanding/generator/flow_document_template.jinja2,sha256=f4H6vVd-_nX_RtutMh1xD3ZQE_J2OyuPHAtiltfiAPY,253
|
|
397
395
|
rasa/dialogue_understanding/generator/flow_retrieval.py,sha256=wlGnMj17-X1-siQmdSvOd7K61sRzBf82MQEL2pqDQMI,17891
|
|
398
|
-
rasa/dialogue_understanding/generator/llm_based_command_generator.py,sha256=
|
|
396
|
+
rasa/dialogue_understanding/generator/llm_based_command_generator.py,sha256=uQKQFNoayY5klvhPERje7jQmsM4oULlYQNlULx7fsko,16195
|
|
399
397
|
rasa/dialogue_understanding/generator/llm_command_generator.py,sha256=QpNXhjB9ugtPV8XAHmKjbJtOiI1yE9rC2osbsI_A4ZY,2529
|
|
400
398
|
rasa/dialogue_understanding/generator/multi_step/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
401
399
|
rasa/dialogue_understanding/generator/multi_step/fill_slots_prompt.jinja2,sha256=Y0m673tAML3cFPaLM-urMXDsBYUUcXIw9YUpkAhGUuA,2933
|
|
402
400
|
rasa/dialogue_understanding/generator/multi_step/handle_flows_prompt.jinja2,sha256=8l93_QBKBYnqLICVdiTu5ejZDE8F36BU8-qwba0px44,1927
|
|
403
|
-
rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py,sha256=
|
|
404
|
-
rasa/dialogue_understanding/generator/nlu_command_adapter.py,sha256
|
|
401
|
+
rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py,sha256=U8Sj6KxQZw5v-RdkuH-5fJYEvKDfIG2SnPXfsEZuG2Y,31034
|
|
402
|
+
rasa/dialogue_understanding/generator/nlu_command_adapter.py,sha256=-DFGkeRKQwU0-0ZJpVjxvgAUGq8pK9NXavAUONT0Wo8,9383
|
|
405
403
|
rasa/dialogue_understanding/generator/single_step/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
406
|
-
rasa/dialogue_understanding/generator/single_step/command_prompt_template.jinja2,sha256=
|
|
407
|
-
rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py,sha256=
|
|
404
|
+
rasa/dialogue_understanding/generator/single_step/command_prompt_template.jinja2,sha256=QnKzywZbcO4ts8-w9Og8Hre4SeBgd98XEfj5aIgE8zM,3550
|
|
405
|
+
rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py,sha256=KznnZzf3RtvRK8sSfMw4tCaWzXMJf0Mw66S73lA22uk,15724
|
|
408
406
|
rasa/dialogue_understanding/generator/utils.py,sha256=fRACEJ2bEgEgSq90TUrQFLTrLqtJqtbb64mgAXklMQ4,1911
|
|
409
407
|
rasa/dialogue_understanding/patterns/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
410
408
|
rasa/dialogue_understanding/patterns/cancel.py,sha256=8D66Q7lPD6xcHoiTR90eU2DW6EFtRWFoItIMY9WYHig,3869
|
|
@@ -415,9 +413,8 @@ rasa/dialogue_understanding/patterns/code_change.py,sha256=B0MUxM6V5cM9wJgitzz9U
|
|
|
415
413
|
rasa/dialogue_understanding/patterns/collect_information.py,sha256=WwFfbDojpaLwACVyH0npL-1inWWBXHVgGgloWPjs0MM,3195
|
|
416
414
|
rasa/dialogue_understanding/patterns/completed.py,sha256=7qkyUj2d__2R3mpwWVmQpfwCCbJruBrjRZbmbDr3Zbo,1278
|
|
417
415
|
rasa/dialogue_understanding/patterns/continue_interrupted.py,sha256=OSTbe5l0B0ECNIYWpYB0pdzIeaqM3m3UZskNNjL5vrw,1682
|
|
418
|
-
rasa/dialogue_understanding/patterns/correction.py,sha256=
|
|
419
|
-
rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml,sha256=
|
|
420
|
-
rasa/dialogue_understanding/patterns/handle_digressions.py,sha256=_6wNNLsGsGkjvzdnzS7vUoh0C5g0Dx9AHW-mC1XHQxU,3272
|
|
416
|
+
rasa/dialogue_understanding/patterns/correction.py,sha256=MKijBsN812hvDJHmBjB-kxqbWe7gEGdO340yhpo8vaA,11003
|
|
417
|
+
rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml,sha256=FZ-GFPtJriAIFvVX3wV9BBeEI9AS-VoSLIaa9jNoWl4,9838
|
|
421
418
|
rasa/dialogue_understanding/patterns/human_handoff.py,sha256=1hkSdL6kui42rZc7zERZ9R7nLyvRHi_tHgNU7FyrhAQ,1132
|
|
422
419
|
rasa/dialogue_understanding/patterns/internal_error.py,sha256=APCKVv16M6mSQ4upu4UwG0yIaaKTyr7uB2yV8ZtpMzo,1609
|
|
423
420
|
rasa/dialogue_understanding/patterns/repeat.py,sha256=K7Ok3DGsB2mivA2AwaKfmDyagupSSySOo4oARx2eXm8,1152
|
|
@@ -427,7 +424,7 @@ rasa/dialogue_understanding/patterns/session_start.py,sha256=wKeCgrskRTxpafOASvo
|
|
|
427
424
|
rasa/dialogue_understanding/patterns/skip_question.py,sha256=fJ1MC0WEEtS-BpnGJEfJR31bg5XYIu5DFLM9DRs9PeQ,1215
|
|
428
425
|
rasa/dialogue_understanding/patterns/user_silence.py,sha256=xP-QMnd-MsybH5z4g01hBv4OLOHcw6m3rc26LQfe2zo,1140
|
|
429
426
|
rasa/dialogue_understanding/processor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
430
|
-
rasa/dialogue_understanding/processor/command_processor.py,sha256=
|
|
427
|
+
rasa/dialogue_understanding/processor/command_processor.py,sha256=pkH8j0IrJ-1qO31i_ilHwP6p1GVD3qavgBCErK2Kiq4,25665
|
|
431
428
|
rasa/dialogue_understanding/processor/command_processor_component.py,sha256=9NWJxMibKeaOBLDRT9lcylJr0ki5sQ0hJRtLlKHIlnI,1526
|
|
432
429
|
rasa/dialogue_understanding/stack/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
433
430
|
rasa/dialogue_understanding/stack/dialogue_stack.py,sha256=cYV6aQeh0EuOJHODDqK3biqXozYTX8baPgLwHhPxFqs,5244
|
|
@@ -438,7 +435,7 @@ rasa/dialogue_understanding/stack/frames/flow_stack_frame.py,sha256=827ppz6PKr1t
|
|
|
438
435
|
rasa/dialogue_understanding/stack/frames/pattern_frame.py,sha256=EVrYWv5dCP7XTvNV-HqtOOrseP-IkF0jD2_JacAvIYw,235
|
|
439
436
|
rasa/dialogue_understanding/stack/frames/search_frame.py,sha256=Eo6tSSbJpslKcs6DLu250NmtoKMe4bDHC8_ebx5sJ60,759
|
|
440
437
|
rasa/dialogue_understanding/stack/utils.py,sha256=FRdsnfHB-6ydCMGs7e6E9v-raOJSL4cy3FcenXK9GEU,7672
|
|
441
|
-
rasa/dialogue_understanding/utils.py,sha256=
|
|
438
|
+
rasa/dialogue_understanding/utils.py,sha256=_TDS_P_BxH3AW9Jm-c-LVknk_PcZyIsIPTmAGW__C3s,4469
|
|
442
439
|
rasa/dialogue_understanding_test/README.md,sha256=xLiFhoRiX5EYos4DRj4bMXHWFz3MFFJqDO6gSvh73sY,15788
|
|
443
440
|
rasa/dialogue_understanding_test/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
444
441
|
rasa/dialogue_understanding_test/command_comparison.py,sha256=LvCZGgZVFpKjWqaZE5OqPClM5xDNdFZQ4FslvNerB7s,1812
|
|
@@ -451,7 +448,7 @@ rasa/dialogue_understanding_test/du_test_schema.yml,sha256=zgIhb6PE8LnoigVmv4NbU
|
|
|
451
448
|
rasa/dialogue_understanding_test/io.py,sha256=nXmauJp14yMPvKTCHbSnIgvd1u8B_piSCXwxYpfSvWQ,14656
|
|
452
449
|
rasa/dialogue_understanding_test/test_case_simulation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
453
450
|
rasa/dialogue_understanding_test/test_case_simulation/exception.py,sha256=RJV8CfoGKmfpC3d28y7IBKfmcAZSm2Vs6p0GkiCHlcc,1034
|
|
454
|
-
rasa/dialogue_understanding_test/test_case_simulation/test_case_tracker_simulator.py,sha256=
|
|
451
|
+
rasa/dialogue_understanding_test/test_case_simulation/test_case_tracker_simulator.py,sha256=hL7NisfRWe_QuiETH1hkqN6U7IRi8fZ2ggQ4JleHnzk,12994
|
|
455
452
|
rasa/dialogue_understanding_test/utils.py,sha256=YxaYvxlrMOBeS4PcpvVy5NIuN3-Pliq1kBhyvYVnABA,2438
|
|
456
453
|
rasa/dialogue_understanding_test/validation.py,sha256=JFsDIjdB-CNPKhRjBBNKzNoNq9nfnEtRC15YhG1AUg0,2701
|
|
457
454
|
rasa/e2e_test/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -616,23 +613,23 @@ rasa/shared/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
616
613
|
rasa/shared/constants.py,sha256=laDUtbKmCU5hboMl1D8l2myg9-Kdcr-7c-Rw-dv7DsA,11778
|
|
617
614
|
rasa/shared/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
618
615
|
rasa/shared/core/command_payload_reader.py,sha256=puHYsp9xbX0YQm2L1NDBItOFmdzI7AzmfGefgcHiCc0,3871
|
|
619
|
-
rasa/shared/core/constants.py,sha256=
|
|
616
|
+
rasa/shared/core/constants.py,sha256=HFQ6RIwOUsnKNjQE3rlEH5ME5GfGz7UhMmzfy6CpSrs,5829
|
|
620
617
|
rasa/shared/core/conversation.py,sha256=0nUhcbQkPDnO3_Rig7oiinrWmPy5fsVQs_U6Fx1hG5c,1384
|
|
621
|
-
rasa/shared/core/domain.py,sha256=
|
|
622
|
-
rasa/shared/core/events.py,sha256=
|
|
618
|
+
rasa/shared/core/domain.py,sha256=SsRLbLIEZ-coPTEwr-XxU_O-X-0mR466YLvXJJOAEpc,81247
|
|
619
|
+
rasa/shared/core/events.py,sha256=WGQ0Vse3z7Bov3ErP2nYPpcOrUtmSJQE81d49P_RAa8,84040
|
|
623
620
|
rasa/shared/core/flows/__init__.py,sha256=Z4pBY0qcEbHeOwgmKsyg2Nz4dX9CF67fFCwj2KXSMpg,180
|
|
624
|
-
rasa/shared/core/flows/flow.py,sha256=
|
|
621
|
+
rasa/shared/core/flows/flow.py,sha256=ZUSR-h0dIAXqRMVdjtTtGwZP1l4aZF77oTjeOqgk3bU,21530
|
|
625
622
|
rasa/shared/core/flows/flow_path.py,sha256=xstwahZBU5cfMY46mREA4NoOGlKLBRAqeP_mJ3UZqOI,2283
|
|
626
623
|
rasa/shared/core/flows/flow_step.py,sha256=ZvjXz1Fs5FR1_BlGBitOEYRnLhzk-bBYv1CC2Oi6iWQ,4537
|
|
627
624
|
rasa/shared/core/flows/flow_step_links.py,sha256=U9c4MFASieJGp_-XMhR0hrxFQISCJAF4TQ0wEy4IjB0,10530
|
|
628
625
|
rasa/shared/core/flows/flow_step_sequence.py,sha256=Rcw82OccjJsNc2wKXi6IePOIAPFRBTylSVphCRJCuc4,2362
|
|
629
626
|
rasa/shared/core/flows/flows_list.py,sha256=fnWzY-pI0SmNb6tsEnKIhfhzxFM35rPeKz_SkMw1fjw,8728
|
|
630
|
-
rasa/shared/core/flows/flows_yaml_schema.json,sha256=
|
|
627
|
+
rasa/shared/core/flows/flows_yaml_schema.json,sha256=9LjPQ_xtU8n4zvcxmeolGRT2S0_1tIngdZsncAmVK78,11189
|
|
631
628
|
rasa/shared/core/flows/nlu_trigger.py,sha256=GG6m5h6Z0jaukA5rPAHscnULgZGDjYMXfufX9nYQtzA,3907
|
|
632
629
|
rasa/shared/core/flows/steps/__init__.py,sha256=jvJp02o9_Wx-rZeQ3SYiLVMpO6ulS1yKuiiKg0ld_nE,655
|
|
633
630
|
rasa/shared/core/flows/steps/action.py,sha256=ctePK0izZudBQE_2wTPQL83T1QAZtaVNSD8mqHtulCQ,1730
|
|
634
631
|
rasa/shared/core/flows/steps/call.py,sha256=ZbJQpRVL8qzU-nS19aW4Hu3RvxemAYRLyNslmId4oww,1856
|
|
635
|
-
rasa/shared/core/flows/steps/collect.py,sha256=
|
|
632
|
+
rasa/shared/core/flows/steps/collect.py,sha256=sxaVX2YltH89148MRebkKP3GehXDoNDVQ_JzhEZ4qwQ,3959
|
|
636
633
|
rasa/shared/core/flows/steps/constants.py,sha256=DCxrEUGbJciBknHm-_t4tmcnH19IZKP-WYxqix9gm7M,132
|
|
637
634
|
rasa/shared/core/flows/steps/continuation.py,sha256=5Rzayr80FsgS4bAajuRObVvVcLqPEh9nxGbT2te85xY,1498
|
|
638
635
|
rasa/shared/core/flows/steps/end.py,sha256=0XrPlQMVBnQKVeZs0or8P9IrVqG7i6RoSNDsVrvAeDk,749
|
|
@@ -641,13 +638,13 @@ rasa/shared/core/flows/steps/link.py,sha256=T6TE-LnfoGUrrPCmlZBLeXou2HGHmOVhu_zh
|
|
|
641
638
|
rasa/shared/core/flows/steps/no_operation.py,sha256=SKqNQ4usLZ4c-faSZOX41lpHBD8YtVe2eGDSt50H05s,1399
|
|
642
639
|
rasa/shared/core/flows/steps/set_slots.py,sha256=DudtHKXaVSNmQL_vXLvkK23_JqgTBU9RJrdQeBpC4s0,1492
|
|
643
640
|
rasa/shared/core/flows/steps/start.py,sha256=AJpKIm0S3GZYLEs3ybXW0Zrq03Pu9lvirNahiUy2I6k,1010
|
|
644
|
-
rasa/shared/core/flows/utils.py,sha256=
|
|
641
|
+
rasa/shared/core/flows/utils.py,sha256=DQM55XkZaZ_ZKHuHh1TyAHi8fslUrQyCy6f9H2NStuw,1625
|
|
645
642
|
rasa/shared/core/flows/validation.py,sha256=XfyIzrT4G-zhBvmeiCt-Ug1xQ7pWddjqTt-1gUane4Q,27431
|
|
646
643
|
rasa/shared/core/flows/yaml_flows_io.py,sha256=85ln95jpkh7ZqDl1cheFa8Q21gnadLjWrW8ADmQlrUQ,14385
|
|
647
644
|
rasa/shared/core/generator.py,sha256=UAuBPu5UjUhL9djVK-PvrWZcNhRACOEgnRsTleV7eeY,35686
|
|
648
|
-
rasa/shared/core/slot_mappings.py,sha256=
|
|
649
|
-
rasa/shared/core/slots.py,sha256=
|
|
650
|
-
rasa/shared/core/trackers.py,sha256=
|
|
645
|
+
rasa/shared/core/slot_mappings.py,sha256=Er_wIFNO2Ug1BseNSlQyUprftk6ovQZtnaPD1Kdc8rk,17854
|
|
646
|
+
rasa/shared/core/slots.py,sha256=Cd7idYK6rreJ-xMuQDh2Hp1funxyTd_9-oiRx5VRz48,23852
|
|
647
|
+
rasa/shared/core/trackers.py,sha256=1KVshh7r9ZCSphtrH18KaJ8Ubv3Ofyy14dWXE8tQEJc,42399
|
|
651
648
|
rasa/shared/core/training_data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
652
649
|
rasa/shared/core/training_data/loading.py,sha256=RCx1uTI9iDejFI_sWg3qPzhjln7-hu78f3EDAT6K0No,2894
|
|
653
650
|
rasa/shared/core/training_data/story_reader/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -671,7 +668,7 @@ rasa/shared/importers/rasa.py,sha256=04ohlwnqllfFDJPcmE32SkMNg1TMKwKnsfNlzeGJWUc
|
|
|
671
668
|
rasa/shared/importers/remote_importer.py,sha256=fKLQskaCVPpD5cCMQ9sR71cZZlSIP-SSv3J3o2kra2w,7696
|
|
672
669
|
rasa/shared/importers/utils.py,sha256=NcVgGTc_wnIXhsTjielimDXhO2zg3_qV1w_vBpyENJo,1289
|
|
673
670
|
rasa/shared/nlu/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
674
|
-
rasa/shared/nlu/constants.py,sha256=
|
|
671
|
+
rasa/shared/nlu/constants.py,sha256=EVMuFXWX_SspnB7FFi8gf-ZHDjdESxalNJI9h7sjG9g,1919
|
|
675
672
|
rasa/shared/nlu/interpreter.py,sha256=eCNJp61nQYTGVf4aJi8SCWb46jxZY6-C1M1LFxMyQTM,188
|
|
676
673
|
rasa/shared/nlu/training_data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
677
674
|
rasa/shared/nlu/training_data/entities_parser.py,sha256=YbPxz8y-o4zwkPAj7V9ohG8eJ600xxERfzckI1rc_kM,6729
|
|
@@ -740,11 +737,11 @@ rasa/shared/utils/health_check/embeddings_health_check_mixin.py,sha256=ASOzDtI3i
|
|
|
740
737
|
rasa/shared/utils/health_check/health_check.py,sha256=izixrbc9BxFSsjzwoIw9U0w0VKSX5gMwhey8bcwe1wc,9709
|
|
741
738
|
rasa/shared/utils/health_check/llm_health_check_mixin.py,sha256=ANP5Q68TRX8p4wWkRCAISsWBV1iYYeGnqWILnR1NawE,957
|
|
742
739
|
rasa/shared/utils/io.py,sha256=AhuECoXGO367NvWRCBu99utEtTQnyxWVJyKOOpLePpg,15917
|
|
743
|
-
rasa/shared/utils/llm.py,sha256=
|
|
740
|
+
rasa/shared/utils/llm.py,sha256=Z2hs_xRRE1jnY27POLgfB5Zc8X0pT-LvD0nJFFZoshY,25557
|
|
744
741
|
rasa/shared/utils/pykwalify_extensions.py,sha256=36vfuD9gSreZvMIZ_qIPpykXhYGuZu2BpoEMVX50Is4,883
|
|
745
742
|
rasa/shared/utils/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
746
743
|
rasa/shared/utils/schemas/config.yml,sha256=czxSADw9hOIZdhvFP8pVUQo810hs9_C8ZGfCPx17taM,27
|
|
747
|
-
rasa/shared/utils/schemas/domain.yml,sha256=
|
|
744
|
+
rasa/shared/utils/schemas/domain.yml,sha256=b2k4ZYSV-QL3hGjDaRg8rfoqaTh4hbhDc_hBlMB8cuI,3409
|
|
748
745
|
rasa/shared/utils/schemas/events.py,sha256=T8kSex2UpgmToqib6KyrgNYBK5WS8OwqdO4Jv-TEJ4I,6913
|
|
749
746
|
rasa/shared/utils/schemas/model_config.yml,sha256=OravyVWalSwjiXYRarRzg0tiRnUFHe1q4-5Wj1TEeFk,811
|
|
750
747
|
rasa/shared/utils/schemas/stories.yml,sha256=DV3wAFnv1leD7kV-FH-GQihF1QX5oKHc8Eb24mxjizc,4737
|
|
@@ -803,10 +800,10 @@ rasa/utils/tensorflow/types.py,sha256=PLG7VI5P_3fNZaXYdGyNIRF4dOMTnLtzfvgms67_IS
|
|
|
803
800
|
rasa/utils/train_utils.py,sha256=ClJx-6x3-h3Vt6mskacgkcCUJTMXjFPe3zAcy_DfmaU,21259
|
|
804
801
|
rasa/utils/url_tools.py,sha256=dZ1HGkVdWTJB7zYEdwoDIrEuyX9HE5WsxKKFVsXBLE0,1218
|
|
805
802
|
rasa/utils/yaml.py,sha256=KjbZq5C94ZP7Jdsw8bYYF7HASI6K4-C_kdHfrnPLpSI,2000
|
|
806
|
-
rasa/validator.py,sha256=
|
|
807
|
-
rasa/version.py,sha256=
|
|
808
|
-
rasa_pro-3.12.0.
|
|
809
|
-
rasa_pro-3.12.0.
|
|
810
|
-
rasa_pro-3.12.0.
|
|
811
|
-
rasa_pro-3.12.0.
|
|
812
|
-
rasa_pro-3.12.0.
|
|
803
|
+
rasa/validator.py,sha256=Uh5R1JDmIRl0aNprh9FfHND8UKiNJTNYBrMdBDVxEFM,67516
|
|
804
|
+
rasa/version.py,sha256=9t_F1AJgfnVfqP0-5iBFKgVo_E6l3CKIcmkdAD0etnk,123
|
|
805
|
+
rasa_pro-3.12.0.dev12.dist-info/METADATA,sha256=4q2NeOD6Xdaz8n4C_4y-dfddh0O86HQQNmwPYxKZhsE,10731
|
|
806
|
+
rasa_pro-3.12.0.dev12.dist-info/NOTICE,sha256=7HlBoMHJY9CL2GlYSfTQ-PZsVmLmVkYmMiPlTjhuCqA,218
|
|
807
|
+
rasa_pro-3.12.0.dev12.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
808
|
+
rasa_pro-3.12.0.dev12.dist-info/entry_points.txt,sha256=ckJ2SfEyTPgBqj_I6vm_tqY9dZF_LAPJZA335Xp0Q9U,43
|
|
809
|
+
rasa_pro-3.12.0.dev12.dist-info/RECORD,,
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
from typing import Any, Dict, List, Optional
|
|
4
|
-
|
|
5
|
-
import structlog
|
|
6
|
-
|
|
7
|
-
from rasa.core.actions.action import Action, create_bot_utterance
|
|
8
|
-
from rasa.core.channels import OutputChannel
|
|
9
|
-
from rasa.core.nlg import NaturalLanguageGenerator
|
|
10
|
-
from rasa.core.utils import add_bot_utterance_metadata
|
|
11
|
-
from rasa.dialogue_understanding.patterns.continue_interrupted import (
|
|
12
|
-
ContinueInterruptedPatternFlowStackFrame,
|
|
13
|
-
)
|
|
14
|
-
from rasa.dialogue_understanding.patterns.handle_digressions import (
|
|
15
|
-
HandleDigressionsPatternFlowStackFrame,
|
|
16
|
-
)
|
|
17
|
-
from rasa.dialogue_understanding.stack.frames.flow_stack_frame import (
|
|
18
|
-
FlowStackFrameType,
|
|
19
|
-
UserFlowStackFrame,
|
|
20
|
-
)
|
|
21
|
-
from rasa.shared.core.constants import (
|
|
22
|
-
ACTION_BLOCK_DIGRESSION,
|
|
23
|
-
ACTION_CONTINUE_DIGRESSION,
|
|
24
|
-
)
|
|
25
|
-
from rasa.shared.core.domain import Domain
|
|
26
|
-
from rasa.shared.core.events import Event, FlowInterrupted
|
|
27
|
-
from rasa.shared.core.trackers import DialogueStateTracker
|
|
28
|
-
|
|
29
|
-
structlogger = structlog.get_logger()
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
class ActionBlockDigressions(Action):
|
|
33
|
-
"""Action which blocks an interruption and continues the current flow."""
|
|
34
|
-
|
|
35
|
-
def name(self) -> str:
|
|
36
|
-
"""Return the action name."""
|
|
37
|
-
return ACTION_BLOCK_DIGRESSION
|
|
38
|
-
|
|
39
|
-
async def run(
|
|
40
|
-
self,
|
|
41
|
-
output_channel: OutputChannel,
|
|
42
|
-
nlg: NaturalLanguageGenerator,
|
|
43
|
-
tracker: DialogueStateTracker,
|
|
44
|
-
domain: Domain,
|
|
45
|
-
metadata: Optional[Dict[str, Any]] = None,
|
|
46
|
-
) -> List[Event]:
|
|
47
|
-
"""Update the stack."""
|
|
48
|
-
structlogger.debug("action_block_digressions.run")
|
|
49
|
-
top_frame = tracker.stack.top()
|
|
50
|
-
|
|
51
|
-
if not isinstance(top_frame, HandleDigressionsPatternFlowStackFrame):
|
|
52
|
-
return []
|
|
53
|
-
|
|
54
|
-
blocked_flow_id = top_frame.interrupting_flow_id
|
|
55
|
-
frame_type = FlowStackFrameType.REGULAR
|
|
56
|
-
|
|
57
|
-
stack = tracker.stack
|
|
58
|
-
stack.push(
|
|
59
|
-
UserFlowStackFrame(flow_id=blocked_flow_id, frame_type=frame_type), 0
|
|
60
|
-
)
|
|
61
|
-
stack.push(
|
|
62
|
-
ContinueInterruptedPatternFlowStackFrame(
|
|
63
|
-
previous_flow_name=blocked_flow_id
|
|
64
|
-
),
|
|
65
|
-
1,
|
|
66
|
-
)
|
|
67
|
-
events = tracker.create_stack_updated_events(stack)
|
|
68
|
-
|
|
69
|
-
utterance = "utter_block_digressions"
|
|
70
|
-
message = await nlg.generate(
|
|
71
|
-
utterance,
|
|
72
|
-
tracker,
|
|
73
|
-
output_channel.name(),
|
|
74
|
-
)
|
|
75
|
-
|
|
76
|
-
if message is None:
|
|
77
|
-
structlogger.error(
|
|
78
|
-
"action_block_digressions.run.failed.finding.utter",
|
|
79
|
-
utterance=utterance,
|
|
80
|
-
)
|
|
81
|
-
else:
|
|
82
|
-
message = add_bot_utterance_metadata(
|
|
83
|
-
message, utterance, nlg, domain, tracker
|
|
84
|
-
)
|
|
85
|
-
events.append(create_bot_utterance(message))
|
|
86
|
-
|
|
87
|
-
return events
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
class ActionContinueDigression(Action):
|
|
91
|
-
"""Action which continues with an interruption."""
|
|
92
|
-
|
|
93
|
-
def name(self) -> str:
|
|
94
|
-
"""Return the action name."""
|
|
95
|
-
return ACTION_CONTINUE_DIGRESSION
|
|
96
|
-
|
|
97
|
-
async def run(
|
|
98
|
-
self,
|
|
99
|
-
output_channel: OutputChannel,
|
|
100
|
-
nlg: NaturalLanguageGenerator,
|
|
101
|
-
tracker: DialogueStateTracker,
|
|
102
|
-
domain: Domain,
|
|
103
|
-
metadata: Optional[Dict[str, Any]] = None,
|
|
104
|
-
) -> List[Event]:
|
|
105
|
-
"""Update the stack."""
|
|
106
|
-
structlogger.debug("action_continue_digression.run")
|
|
107
|
-
top_frame = tracker.stack.top()
|
|
108
|
-
|
|
109
|
-
if not isinstance(top_frame, HandleDigressionsPatternFlowStackFrame):
|
|
110
|
-
return []
|
|
111
|
-
|
|
112
|
-
blocked_flow_id = top_frame.interrupting_flow_id
|
|
113
|
-
frame_type = FlowStackFrameType.INTERRUPT
|
|
114
|
-
stack = tracker.stack
|
|
115
|
-
stack.push(UserFlowStackFrame(flow_id=blocked_flow_id, frame_type=frame_type))
|
|
116
|
-
|
|
117
|
-
events = [
|
|
118
|
-
FlowInterrupted(
|
|
119
|
-
flow_id=top_frame.interrupted_flow_id,
|
|
120
|
-
step_id=top_frame.interrupted_step_id,
|
|
121
|
-
)
|
|
122
|
-
] + tracker.create_stack_updated_events(stack)
|
|
123
|
-
|
|
124
|
-
utterance = "utter_continue_interruption"
|
|
125
|
-
message = await nlg.generate(
|
|
126
|
-
utterance,
|
|
127
|
-
tracker,
|
|
128
|
-
output_channel.name(),
|
|
129
|
-
)
|
|
130
|
-
|
|
131
|
-
if message is None:
|
|
132
|
-
structlogger.error(
|
|
133
|
-
"action_continue_digression.run.failed.finding.utter",
|
|
134
|
-
utterance=utterance,
|
|
135
|
-
)
|
|
136
|
-
else:
|
|
137
|
-
message = add_bot_utterance_metadata(
|
|
138
|
-
message, utterance, nlg, domain, tracker
|
|
139
|
-
)
|
|
140
|
-
events.append(create_bot_utterance(message))
|
|
141
|
-
|
|
142
|
-
return events
|
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
from dataclasses import dataclass
|
|
4
|
-
from typing import Any, Dict, List
|
|
5
|
-
|
|
6
|
-
import structlog
|
|
7
|
-
|
|
8
|
-
from rasa.dialogue_understanding.commands.command import Command
|
|
9
|
-
from rasa.dialogue_understanding.patterns.cannot_handle import (
|
|
10
|
-
CannotHandlePatternFlowStackFrame,
|
|
11
|
-
)
|
|
12
|
-
from rasa.dialogue_understanding.patterns.handle_digressions import (
|
|
13
|
-
HandleDigressionsPatternFlowStackFrame,
|
|
14
|
-
)
|
|
15
|
-
from rasa.dialogue_understanding.stack.utils import (
|
|
16
|
-
top_flow_frame,
|
|
17
|
-
user_flows_on_the_stack,
|
|
18
|
-
)
|
|
19
|
-
from rasa.shared.core.events import Event
|
|
20
|
-
from rasa.shared.core.flows import FlowsList
|
|
21
|
-
from rasa.shared.core.flows.steps import CollectInformationFlowStep
|
|
22
|
-
from rasa.shared.core.flows.utils import ALL_LABEL
|
|
23
|
-
from rasa.shared.core.trackers import DialogueStateTracker
|
|
24
|
-
from rasa.shared.nlu.constants import HANDLE_DIGRESSIONS_COMMAND
|
|
25
|
-
|
|
26
|
-
structlogger = structlog.get_logger()
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
@dataclass
|
|
30
|
-
class HandleDigressionsCommand(Command):
|
|
31
|
-
"""A command to handle digressions during an active flow."""
|
|
32
|
-
|
|
33
|
-
flow: str
|
|
34
|
-
"""The interrupting flow."""
|
|
35
|
-
|
|
36
|
-
@classmethod
|
|
37
|
-
def command(cls) -> str:
|
|
38
|
-
"""Returns the command type."""
|
|
39
|
-
return HANDLE_DIGRESSIONS_COMMAND
|
|
40
|
-
|
|
41
|
-
@classmethod
|
|
42
|
-
def from_dict(cls, data: Dict[str, Any]) -> HandleDigressionsCommand:
|
|
43
|
-
"""Converts the dictionary to a command.
|
|
44
|
-
|
|
45
|
-
Returns:
|
|
46
|
-
The converted dictionary.
|
|
47
|
-
"""
|
|
48
|
-
try:
|
|
49
|
-
return HandleDigressionsCommand(flow=data["flow"])
|
|
50
|
-
except KeyError as e:
|
|
51
|
-
raise ValueError(
|
|
52
|
-
f"Missing parameter '{e}' while parsing HandleDigressionsCommand."
|
|
53
|
-
) from e
|
|
54
|
-
|
|
55
|
-
def run_command_on_tracker(
|
|
56
|
-
self,
|
|
57
|
-
tracker: DialogueStateTracker,
|
|
58
|
-
all_flows: FlowsList,
|
|
59
|
-
original_tracker: DialogueStateTracker,
|
|
60
|
-
) -> List[Event]:
|
|
61
|
-
"""Runs the command on the tracker.
|
|
62
|
-
|
|
63
|
-
Args:
|
|
64
|
-
tracker: The tracker to run the command on.
|
|
65
|
-
all_flows: All flows in the assistant.
|
|
66
|
-
original_tracker: The tracker before any command was executed.
|
|
67
|
-
|
|
68
|
-
Returns:
|
|
69
|
-
The events to apply to the tracker.
|
|
70
|
-
"""
|
|
71
|
-
stack = tracker.stack
|
|
72
|
-
original_stack = original_tracker.stack
|
|
73
|
-
|
|
74
|
-
if self.flow in user_flows_on_the_stack(stack):
|
|
75
|
-
structlogger.debug(
|
|
76
|
-
"command_executor.skip_command.already_started_flow", command=self
|
|
77
|
-
)
|
|
78
|
-
return []
|
|
79
|
-
elif self.flow not in all_flows.flow_ids:
|
|
80
|
-
structlogger.debug(
|
|
81
|
-
"command_executor.push_cannot_handle.start_invalid_flow_id",
|
|
82
|
-
command=self,
|
|
83
|
-
)
|
|
84
|
-
stack.push(CannotHandlePatternFlowStackFrame())
|
|
85
|
-
return tracker.create_stack_updated_events(stack)
|
|
86
|
-
|
|
87
|
-
# this allows to include called user flows in the stack search
|
|
88
|
-
latest_user_frame = top_flow_frame(original_stack, ignore_call_frames=False)
|
|
89
|
-
|
|
90
|
-
if latest_user_frame is None:
|
|
91
|
-
structlogger.debug(
|
|
92
|
-
"command_executor.skip_command.no_top_flow", command=self
|
|
93
|
-
)
|
|
94
|
-
return []
|
|
95
|
-
|
|
96
|
-
original_top_flow = latest_user_frame.flow(all_flows)
|
|
97
|
-
current_step = original_top_flow.step_by_id(latest_user_frame.step_id)
|
|
98
|
-
if not isinstance(current_step, CollectInformationFlowStep):
|
|
99
|
-
structlogger.debug(
|
|
100
|
-
"command_executor.skip_command.not_at_a_collect_step", command=self
|
|
101
|
-
)
|
|
102
|
-
return []
|
|
103
|
-
|
|
104
|
-
ask_confirm_digressions = set(
|
|
105
|
-
current_step.ask_confirm_digressions
|
|
106
|
-
+ original_top_flow.ask_confirm_digressions
|
|
107
|
-
)
|
|
108
|
-
|
|
109
|
-
block_digressions = set(
|
|
110
|
-
current_step.block_digressions + original_top_flow.block_digressions
|
|
111
|
-
)
|
|
112
|
-
|
|
113
|
-
if block_digressions:
|
|
114
|
-
if ALL_LABEL in block_digressions:
|
|
115
|
-
block_digressions.remove(ALL_LABEL)
|
|
116
|
-
block_digressions.add(self.flow)
|
|
117
|
-
|
|
118
|
-
if ask_confirm_digressions:
|
|
119
|
-
if ALL_LABEL in ask_confirm_digressions:
|
|
120
|
-
ask_confirm_digressions.remove(ALL_LABEL)
|
|
121
|
-
ask_confirm_digressions.add(self.flow)
|
|
122
|
-
|
|
123
|
-
structlogger.debug(
|
|
124
|
-
"command_executor.push_handle_digressions",
|
|
125
|
-
interrupting_flow_id=self.flow,
|
|
126
|
-
interrupted_flow_id=original_top_flow.id,
|
|
127
|
-
interrupted_step_id=current_step.id,
|
|
128
|
-
ask_confirm_digressions=ask_confirm_digressions,
|
|
129
|
-
block_digressions=block_digressions,
|
|
130
|
-
)
|
|
131
|
-
stack.push(
|
|
132
|
-
HandleDigressionsPatternFlowStackFrame(
|
|
133
|
-
interrupting_flow_id=self.flow,
|
|
134
|
-
interrupted_flow_id=original_top_flow.id,
|
|
135
|
-
interrupted_step_id=current_step.id,
|
|
136
|
-
ask_confirm_digressions=ask_confirm_digressions,
|
|
137
|
-
block_digressions=block_digressions,
|
|
138
|
-
)
|
|
139
|
-
)
|
|
140
|
-
|
|
141
|
-
return tracker.create_stack_updated_events(stack)
|
|
142
|
-
|
|
143
|
-
def __hash__(self) -> int:
|
|
144
|
-
return hash(self.flow)
|
|
145
|
-
|
|
146
|
-
def __eq__(self, other: object) -> bool:
|
|
147
|
-
if not isinstance(other, HandleDigressionsCommand):
|
|
148
|
-
return False
|
|
149
|
-
|
|
150
|
-
return other.flow == self.flow
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
from dataclasses import dataclass, field
|
|
4
|
-
from typing import Any, Dict, Set
|
|
5
|
-
|
|
6
|
-
from rasa.dialogue_understanding.stack.frames import PatternFlowStackFrame
|
|
7
|
-
from rasa.shared.constants import RASA_DEFAULT_FLOW_PATTERN_PREFIX
|
|
8
|
-
from rasa.shared.core.constants import (
|
|
9
|
-
KEY_ASK_CONFIRM_DIGRESSIONS,
|
|
10
|
-
KEY_BLOCK_DIGRESSIONS,
|
|
11
|
-
)
|
|
12
|
-
|
|
13
|
-
FLOW_PATTERN_HANDLE_DIGRESSIONS = (
|
|
14
|
-
RASA_DEFAULT_FLOW_PATTERN_PREFIX + "handle_digressions"
|
|
15
|
-
)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
@dataclass
|
|
19
|
-
class HandleDigressionsPatternFlowStackFrame(PatternFlowStackFrame):
|
|
20
|
-
"""A pattern flow stack frame that gets added if an interruption is completed."""
|
|
21
|
-
|
|
22
|
-
flow_id: str = FLOW_PATTERN_HANDLE_DIGRESSIONS
|
|
23
|
-
"""The ID of the flow."""
|
|
24
|
-
interrupting_flow_id: str = ""
|
|
25
|
-
"""The ID of the flow that interrupted the active flow."""
|
|
26
|
-
interrupted_flow_id: str = ""
|
|
27
|
-
"""The name of the active flow that was interrupted."""
|
|
28
|
-
interrupted_step_id: str = ""
|
|
29
|
-
"""The ID of the step that was interrupted."""
|
|
30
|
-
ask_confirm_digressions: Set[str] = field(default_factory=set)
|
|
31
|
-
"""The set of interrupting flow names to confirm."""
|
|
32
|
-
block_digressions: Set[str] = field(default_factory=set)
|
|
33
|
-
"""The set of interrupting flow names to block."""
|
|
34
|
-
|
|
35
|
-
@classmethod
|
|
36
|
-
def type(cls) -> str:
|
|
37
|
-
"""Returns the type of the frame."""
|
|
38
|
-
return FLOW_PATTERN_HANDLE_DIGRESSIONS
|
|
39
|
-
|
|
40
|
-
@staticmethod
|
|
41
|
-
def from_dict(data: Dict[str, Any]) -> HandleDigressionsPatternFlowStackFrame:
|
|
42
|
-
"""Creates a `DialogueStackFrame` from a dictionary.
|
|
43
|
-
|
|
44
|
-
Args:
|
|
45
|
-
data: The dictionary to create the `DialogueStackFrame` from.
|
|
46
|
-
|
|
47
|
-
Returns:
|
|
48
|
-
The created `DialogueStackFrame`.
|
|
49
|
-
"""
|
|
50
|
-
return HandleDigressionsPatternFlowStackFrame(
|
|
51
|
-
frame_id=data["frame_id"],
|
|
52
|
-
step_id=data["step_id"],
|
|
53
|
-
interrupted_step_id=data["interrupted_step_id"],
|
|
54
|
-
interrupted_flow_id=data["interrupted_flow_id"],
|
|
55
|
-
interrupting_flow_id=data["interrupting_flow_id"],
|
|
56
|
-
ask_confirm_digressions=set(data.get(KEY_ASK_CONFIRM_DIGRESSIONS, [])),
|
|
57
|
-
# This attribute must be converted to a set to enable usage
|
|
58
|
-
# of subset `contains` pypred operator in the default pattern
|
|
59
|
-
# conditional branching
|
|
60
|
-
block_digressions=set(data.get(KEY_BLOCK_DIGRESSIONS, [])),
|
|
61
|
-
)
|
|
62
|
-
|
|
63
|
-
def __eq__(self, other: Any) -> bool:
|
|
64
|
-
if not isinstance(other, HandleDigressionsPatternFlowStackFrame):
|
|
65
|
-
return False
|
|
66
|
-
return (
|
|
67
|
-
self.flow_id == other.flow_id
|
|
68
|
-
and self.interrupted_step_id == other.interrupted_step_id
|
|
69
|
-
and self.interrupted_flow_id == other.interrupted_flow_id
|
|
70
|
-
and self.interrupting_flow_id == other.interrupting_flow_id
|
|
71
|
-
and self.ask_confirm_digressions == other.ask_confirm_digressions
|
|
72
|
-
and self.block_digressions == other.block_digressions
|
|
73
|
-
)
|
|
74
|
-
|
|
75
|
-
def as_dict(self) -> Dict[str, Any]:
|
|
76
|
-
"""Returns the frame as a dictionary."""
|
|
77
|
-
data = super().as_dict()
|
|
78
|
-
# converting back to list to avoid serialization issues
|
|
79
|
-
data[KEY_ASK_CONFIRM_DIGRESSIONS] = list(self.ask_confirm_digressions)
|
|
80
|
-
data[KEY_BLOCK_DIGRESSIONS] = list(self.block_digressions)
|
|
81
|
-
return data
|
|
File without changes
|
|
File without changes
|
|
File without changes
|