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.
- README.md +10 -13
- rasa/__main__.py +7 -7
- rasa/anonymization/anonymisation_rule_yaml_reader.py +1 -1
- rasa/anonymization/anonymization_pipeline.py +3 -3
- rasa/anonymization/anonymization_rule_executor.py +17 -11
- rasa/anonymization/anonymization_rule_orchestrator.py +2 -3
- rasa/cli/arguments/data.py +2 -2
- rasa/cli/arguments/default_arguments.py +1 -1
- rasa/cli/arguments/evaluate.py +2 -1
- rasa/cli/arguments/interactive.py +1 -1
- rasa/cli/arguments/run.py +1 -1
- rasa/cli/arguments/test.py +7 -5
- rasa/cli/arguments/train.py +3 -3
- rasa/cli/arguments/visualize.py +2 -2
- rasa/cli/arguments/x.py +1 -0
- rasa/cli/data.py +20 -3
- rasa/cli/dialogue_understanding_test.py +386 -0
- rasa/cli/evaluate.py +1 -1
- rasa/cli/export.py +6 -6
- rasa/cli/inspect.py +20 -1
- rasa/cli/interactive.py +4 -5
- rasa/cli/llm_fine_tuning.py +51 -16
- rasa/cli/markers.py +1 -2
- rasa/cli/project_templates/calm/actions/add_contact.py +1 -1
- rasa/cli/project_templates/calm/config.yml +2 -2
- rasa/cli/project_templates/calm/domain/list_contacts.yml +1 -2
- rasa/cli/project_templates/calm/domain/remove_contact.yml +1 -2
- rasa/cli/project_templates/calm/domain/shared.yml +1 -4
- rasa/cli/project_templates/calm/endpoints.yml +2 -2
- rasa/cli/project_templates/tutorial/actions/actions.py +3 -2
- rasa/cli/shell.py +5 -6
- rasa/cli/studio/download.py +1 -2
- rasa/cli/studio/studio.py +2 -3
- rasa/cli/studio/train.py +0 -1
- rasa/cli/telemetry.py +2 -2
- rasa/cli/test.py +11 -11
- rasa/cli/train.py +3 -0
- rasa/cli/utils.py +25 -5
- rasa/constants.py +0 -1
- rasa/core/__init__.py +0 -1
- rasa/core/actions/action.py +135 -208
- rasa/core/actions/action_handle_digressions.py +164 -0
- rasa/core/actions/action_hangup.py +1 -1
- rasa/core/actions/action_repeat_bot_messages.py +2 -2
- rasa/core/actions/action_run_slot_rejections.py +18 -6
- rasa/core/actions/action_trigger_chitchat.py +1 -1
- rasa/core/actions/action_trigger_flow.py +5 -5
- rasa/core/actions/action_trigger_search.py +1 -1
- rasa/core/actions/custom_action_executor.py +1 -1
- rasa/core/actions/direct_custom_actions_executor.py +1 -0
- rasa/core/actions/forms.py +22 -15
- rasa/core/actions/http_custom_action_executor.py +8 -1
- rasa/core/actions/loops.py +3 -3
- rasa/core/actions/two_stage_fallback.py +13 -13
- rasa/core/auth_retry_tracker_store.py +1 -2
- rasa/core/brokers/broker.py +2 -1
- rasa/core/brokers/file.py +1 -1
- rasa/core/brokers/kafka.py +8 -8
- rasa/core/brokers/pika.py +8 -9
- rasa/core/brokers/sql.py +4 -3
- rasa/core/channels/__init__.py +7 -0
- rasa/core/channels/botframework.py +2 -2
- rasa/core/channels/callback.py +4 -4
- rasa/core/channels/channel.py +11 -11
- rasa/core/channels/console.py +0 -1
- rasa/core/channels/development_inspector.py +80 -24
- rasa/core/channels/facebook.py +5 -5
- rasa/core/channels/hangouts.py +7 -8
- rasa/core/channels/inspector/dist/assets/{arc-f0f8bd46.js → arc-9f1365dc.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{blockDiagram-38ab4fdb-7162c77d.js → blockDiagram-38ab4fdb-e0f81b12.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{c4Diagram-3d4e48cf-b1d0d098.js → c4Diagram-3d4e48cf-9deaee1c.js} +1 -1
- rasa/core/channels/inspector/dist/assets/channel-44956714.js +1 -0
- rasa/core/channels/inspector/dist/assets/{classDiagram-70f12bd4-807a1b27.js → classDiagram-70f12bd4-20450a96.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{classDiagram-v2-f2320105-5238dcdb.js → classDiagram-v2-f2320105-749d2abf.js} +1 -1
- rasa/core/channels/inspector/dist/assets/clone-a9475142.js +1 -0
- rasa/core/channels/inspector/dist/assets/{createText-2e5e7dd3-75dfaa67.js → createText-2e5e7dd3-bef0b38c.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{edges-e0da2a9e-df20501d.js → edges-e0da2a9e-943801a7.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{erDiagram-9861fffd-13cf4797.js → erDiagram-9861fffd-d523a948.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{flowDb-956e92f1-a4991264.js → flowDb-956e92f1-54e4cf19.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{flowDiagram-66a62f08-ccecf773.js → flowDiagram-66a62f08-48bfbbe8.js} +1 -1
- rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-43fa749a.js +1 -0
- rasa/core/channels/inspector/dist/assets/{flowchart-elk-definition-4a651766-b5801783.js → flowchart-elk-definition-4a651766-17c30827.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{ganttDiagram-c361ad54-161e079a.js → ganttDiagram-c361ad54-43086f2d.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{gitGraphDiagram-72cf32ee-f38e86a4.js → gitGraphDiagram-72cf32ee-5c8b693e.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{graph-be6ef5d8.js → graph-41a90d26.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{index-3862675e-d9ce8994.js → index-3862675e-b43eeae9.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{index-7794b245.js → index-e8affe45.js} +155 -155
- rasa/core/channels/inspector/dist/assets/{infoDiagram-f8f76790-5000a3dc.js → infoDiagram-f8f76790-0b20676b.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{journeyDiagram-49397b02-8ef0a17a.js → journeyDiagram-49397b02-39bce7b5.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{layout-d649bc98.js → layout-dc8eeea4.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{line-95add810.js → line-c4d2e756.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{linear-f6025094.js → linear-86f6f2d9.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{mindmap-definition-fc14e90a-2e8531c4.js → mindmap-definition-fc14e90a-4216f771.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{pieDiagram-8a3498a8-918adfdb.js → pieDiagram-8a3498a8-1a0cfa96.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{quadrantDiagram-120e2f19-cbd01797.js → quadrantDiagram-120e2f19-f91e67cf.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{requirementDiagram-deff3bca-6a8b877b.js → requirementDiagram-deff3bca-d4046bed.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{sankeyDiagram-04a897e0-c377c3fe.js → sankeyDiagram-04a897e0-2cf6d1d7.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{sequenceDiagram-704730f1-ab9e9b7f.js → sequenceDiagram-704730f1-751ac4f5.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{stateDiagram-587899a1-5e6ae67d.js → stateDiagram-587899a1-f734f4d4.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{stateDiagram-v2-d93cdb3a-40643476.js → stateDiagram-v2-d93cdb3a-91c65710.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{styles-6aaf32cf-afb8d108.js → styles-6aaf32cf-e0cff7be.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{styles-9a916d00-7edc9423.js → styles-9a916d00-c8029e5d.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{styles-c10674c1-c1d8f7e9.js → styles-c10674c1-114f312a.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{svgDrawCommon-08f97a94-f494b2ef.js → svgDrawCommon-08f97a94-b7b9dc00.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{timeline-definition-85554ec2-11c7cdd0.js → timeline-definition-85554ec2-9536d189.js} +1 -1
- rasa/core/channels/inspector/dist/assets/{xychartDiagram-e933f94c-3f191ec1.js → xychartDiagram-e933f94c-bf3b0f36.js} +1 -1
- rasa/core/channels/inspector/dist/index.html +1 -1
- rasa/core/channels/inspector/package.json +1 -0
- rasa/core/channels/inspector/src/App.tsx +15 -2
- rasa/core/channels/inspector/src/components/RasaLogo.tsx +31 -0
- rasa/core/channels/inspector/src/components/RecruitmentPanel.tsx +68 -0
- rasa/core/channels/inspector/src/components/Welcome.tsx +19 -13
- rasa/core/channels/inspector/yarn.lock +5 -0
- rasa/core/channels/mattermost.py +4 -4
- rasa/core/channels/rasa_chat.py +4 -4
- rasa/core/channels/rest.py +11 -12
- rasa/core/channels/rocketchat.py +4 -3
- rasa/core/channels/slack.py +6 -5
- rasa/core/channels/socketio.py +8 -28
- rasa/core/channels/studio_chat.py +212 -0
- rasa/core/channels/telegram.py +105 -55
- rasa/core/channels/twilio.py +3 -3
- rasa/core/channels/vier_cvg.py +2 -2
- rasa/core/channels/voice_ready/audiocodes.py +9 -9
- rasa/core/channels/voice_ready/jambonz.py +5 -5
- rasa/core/channels/voice_ready/jambonz_protocol.py +3 -4
- rasa/core/channels/voice_ready/twilio_voice.py +9 -8
- rasa/core/channels/voice_ready/utils.py +2 -2
- rasa/core/channels/voice_stream/asr/asr_engine.py +12 -6
- rasa/core/channels/voice_stream/asr/asr_event.py +5 -0
- rasa/core/channels/voice_stream/asr/azure.py +16 -3
- rasa/core/channels/voice_stream/asr/deepgram.py +76 -19
- rasa/core/channels/voice_stream/audiocodes.py +292 -0
- rasa/core/channels/voice_stream/browser_audio.py +14 -7
- rasa/core/channels/voice_stream/call_state.py +6 -2
- rasa/core/channels/voice_stream/genesys.py +320 -0
- rasa/core/channels/voice_stream/tts/azure.py +13 -5
- rasa/core/channels/voice_stream/tts/cartesia.py +34 -14
- rasa/core/channels/voice_stream/tts/tts_cache.py +3 -2
- rasa/core/channels/voice_stream/tts/tts_engine.py +1 -1
- rasa/core/channels/voice_stream/twilio_media_streams.py +12 -8
- rasa/core/channels/voice_stream/util.py +1 -1
- rasa/core/channels/voice_stream/voice_channel.py +100 -56
- rasa/core/channels/webexteams.py +3 -4
- rasa/core/constants.py +2 -0
- rasa/core/evaluation/marker.py +7 -6
- rasa/core/evaluation/marker_base.py +15 -16
- rasa/core/evaluation/marker_stats.py +3 -4
- rasa/core/evaluation/marker_tracker_loader.py +5 -4
- rasa/core/exporter.py +4 -4
- rasa/core/featurizers/precomputation.py +8 -8
- rasa/core/featurizers/single_state_featurizer.py +7 -7
- rasa/core/featurizers/tracker_featurizers.py +13 -13
- rasa/core/http_interpreter.py +3 -4
- rasa/core/information_retrieval/__init__.py +1 -1
- rasa/core/information_retrieval/faiss.py +4 -4
- rasa/core/information_retrieval/information_retrieval.py +2 -2
- rasa/core/information_retrieval/milvus.py +3 -3
- rasa/core/information_retrieval/qdrant.py +3 -3
- rasa/core/jobs.py +1 -0
- rasa/core/lock.py +2 -3
- rasa/core/lock_store.py +3 -3
- rasa/core/migrate.py +12 -9
- rasa/core/nlg/__init__.py +1 -1
- rasa/core/nlg/callback.py +2 -3
- rasa/core/nlg/contextual_response_rephraser.py +82 -14
- rasa/core/nlg/generator.py +85 -17
- rasa/core/nlg/interpolator.py +4 -3
- rasa/core/nlg/response.py +9 -7
- rasa/core/nlg/summarize.py +1 -0
- rasa/core/nlg/translate.py +55 -0
- rasa/core/persistor.py +3 -3
- rasa/core/policies/ensemble.py +10 -9
- rasa/core/policies/enterprise_search_policy.py +87 -21
- rasa/core/policies/enterprise_search_prompt_with_citation_template.jinja2 +1 -1
- rasa/core/policies/flow_policy.py +13 -14
- rasa/core/policies/flows/flow_executor.py +85 -55
- rasa/core/policies/intentless_policy.py +6 -7
- rasa/core/policies/memoization.py +22 -20
- rasa/core/policies/policy.py +24 -22
- rasa/core/policies/rule_policy.py +37 -36
- rasa/core/policies/ted_policy.py +87 -85
- rasa/core/policies/unexpected_intent_policy.py +77 -75
- rasa/core/processor.py +167 -74
- rasa/core/run.py +5 -4
- rasa/core/secrets_manager/endpoints.py +2 -3
- rasa/core/secrets_manager/factory.py +2 -3
- rasa/core/secrets_manager/secret_manager.py +2 -3
- rasa/core/secrets_manager/vault.py +2 -2
- rasa/core/test.py +30 -30
- rasa/core/tracker_store.py +138 -49
- rasa/core/train.py +1 -1
- rasa/core/training/__init__.py +2 -2
- rasa/core/training/converters/responses_prefix_converter.py +1 -2
- rasa/core/training/interactive.py +13 -13
- rasa/core/training/story_conflict.py +4 -5
- rasa/core/training/training.py +3 -5
- rasa/core/utils.py +5 -5
- rasa/core/visualize.py +1 -1
- rasa/dialogue_understanding/coexistence/intent_based_router.py +2 -2
- rasa/dialogue_understanding/coexistence/llm_based_router.py +5 -5
- rasa/dialogue_understanding/commands/__init__.py +22 -22
- rasa/dialogue_understanding/commands/can_not_handle_command.py +38 -1
- rasa/dialogue_understanding/commands/cancel_flow_command.py +96 -9
- rasa/dialogue_understanding/commands/change_flow_command.py +36 -2
- rasa/dialogue_understanding/commands/chit_chat_answer_command.py +36 -4
- rasa/dialogue_understanding/commands/clarify_command.py +46 -4
- rasa/dialogue_understanding/commands/command.py +3 -2
- rasa/dialogue_understanding/commands/command_syntax_manager.py +55 -0
- rasa/dialogue_understanding/commands/correct_slots_command.py +14 -5
- rasa/dialogue_understanding/commands/error_command.py +1 -1
- rasa/dialogue_understanding/commands/free_form_answer_command.py +2 -1
- rasa/dialogue_understanding/commands/handle_code_change_command.py +2 -2
- rasa/dialogue_understanding/commands/handle_digressions_command.py +144 -0
- rasa/dialogue_understanding/commands/human_handoff_command.py +34 -4
- rasa/dialogue_understanding/commands/knowledge_answer_command.py +36 -4
- rasa/dialogue_understanding/commands/noop_command.py +2 -1
- rasa/dialogue_understanding/commands/prompt_command.py +94 -0
- rasa/dialogue_understanding/commands/repeat_bot_messages_command.py +34 -4
- rasa/dialogue_understanding/commands/restart_command.py +2 -5
- rasa/dialogue_understanding/commands/session_end_command.py +3 -5
- rasa/dialogue_understanding/commands/session_start_command.py +3 -5
- rasa/dialogue_understanding/commands/set_slot_command.py +55 -16
- rasa/dialogue_understanding/commands/skip_question_command.py +34 -4
- rasa/dialogue_understanding/commands/start_flow_command.py +78 -2
- rasa/dialogue_understanding/commands/user_silence_command.py +3 -5
- rasa/dialogue_understanding/commands/utils.py +126 -43
- rasa/dialogue_understanding/constants.py +2 -0
- rasa/dialogue_understanding/generator/__init__.py +2 -0
- rasa/dialogue_understanding/generator/command_generator.py +120 -79
- rasa/dialogue_understanding/generator/command_parser.py +245 -0
- rasa/dialogue_understanding/generator/constants.py +12 -4
- rasa/dialogue_understanding/generator/flow_retrieval.py +7 -7
- rasa/dialogue_understanding/generator/llm_based_command_generator.py +187 -59
- rasa/dialogue_understanding/generator/llm_command_generator.py +6 -3
- rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py +106 -110
- rasa/dialogue_understanding/generator/nlu_command_adapter.py +53 -11
- rasa/dialogue_understanding/generator/prompt_templates/__init__.py +0 -0
- rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v2_claude_3_5_sonnet_20240620_template.jinja2 +58 -0
- rasa/dialogue_understanding/generator/prompt_templates/command_prompt_v2_gpt_4o_2024_11_20_template.jinja2 +57 -0
- rasa/dialogue_understanding/generator/single_step/compact_llm_command_generator.py +574 -0
- rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py +41 -386
- rasa/dialogue_understanding/generator/utils.py +76 -0
- rasa/dialogue_understanding/patterns/cancel.py +2 -1
- rasa/dialogue_understanding/patterns/cannot_handle.py +1 -0
- rasa/dialogue_understanding/patterns/chitchat.py +1 -1
- rasa/dialogue_understanding/patterns/clarify.py +2 -1
- rasa/dialogue_understanding/patterns/code_change.py +2 -0
- rasa/dialogue_understanding/patterns/collect_information.py +7 -4
- rasa/dialogue_understanding/patterns/completed.py +1 -1
- rasa/dialogue_understanding/patterns/continue_interrupted.py +1 -1
- rasa/dialogue_understanding/patterns/correction.py +17 -3
- rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml +78 -2
- rasa/dialogue_understanding/patterns/handle_digressions.py +81 -0
- rasa/dialogue_understanding/patterns/human_handoff.py +1 -1
- rasa/dialogue_understanding/patterns/internal_error.py +1 -0
- rasa/dialogue_understanding/patterns/search.py +1 -1
- rasa/dialogue_understanding/patterns/session_start.py +1 -1
- rasa/dialogue_understanding/patterns/skip_question.py +1 -0
- rasa/dialogue_understanding/patterns/user_silence.py +1 -1
- rasa/dialogue_understanding/patterns/validate_slot.py +65 -0
- rasa/dialogue_understanding/processor/command_processor.py +193 -43
- rasa/dialogue_understanding/processor/command_processor_component.py +1 -1
- rasa/dialogue_understanding/stack/dialogue_stack.py +4 -3
- rasa/dialogue_understanding/stack/frames/__init__.py +2 -2
- rasa/dialogue_understanding/stack/frames/chit_chat_frame.py +4 -1
- rasa/dialogue_understanding/stack/frames/dialogue_stack_frame.py +2 -3
- rasa/dialogue_understanding/stack/frames/flow_stack_frame.py +5 -2
- rasa/dialogue_understanding/stack/frames/search_frame.py +4 -1
- rasa/dialogue_understanding/stack/utils.py +56 -10
- rasa/dialogue_understanding/utils.py +164 -0
- rasa/dialogue_understanding_test/README.md +429 -0
- rasa/dialogue_understanding_test/__init__.py +0 -0
- rasa/dialogue_understanding_test/command_comparison.py +60 -0
- rasa/dialogue_understanding_test/command_metric_calculation.py +122 -0
- rasa/dialogue_understanding_test/constants.py +22 -0
- rasa/dialogue_understanding_test/du_test_case.py +448 -0
- rasa/dialogue_understanding_test/du_test_result.py +390 -0
- rasa/dialogue_understanding_test/du_test_runner.py +322 -0
- rasa/dialogue_understanding_test/du_test_schema.yml +161 -0
- rasa/dialogue_understanding_test/io.py +443 -0
- rasa/dialogue_understanding_test/test_case_simulation/__init__.py +0 -0
- rasa/dialogue_understanding_test/test_case_simulation/exception.py +28 -0
- rasa/dialogue_understanding_test/test_case_simulation/test_case_tracker_simulator.py +336 -0
- rasa/dialogue_understanding_test/utils.py +70 -0
- rasa/dialogue_understanding_test/validation.py +77 -0
- rasa/e2e_test/aggregate_test_stats_calculator.py +1 -1
- rasa/e2e_test/assertions.py +202 -175
- rasa/e2e_test/assertions_schema.yml +6 -0
- rasa/e2e_test/constants.py +16 -1
- rasa/e2e_test/e2e_config.py +102 -41
- rasa/e2e_test/e2e_config_schema.yml +28 -10
- rasa/e2e_test/e2e_test_case.py +5 -5
- rasa/e2e_test/e2e_test_converter.py +2 -3
- rasa/e2e_test/e2e_test_coverage_report.py +6 -6
- rasa/e2e_test/e2e_test_result.py +1 -1
- rasa/e2e_test/e2e_test_runner.py +143 -38
- rasa/e2e_test/llm_judge_prompts/answer_relevance_prompt_template.jinja2 +93 -0
- rasa/e2e_test/llm_judge_prompts/groundedness_prompt_template.jinja2 +169 -0
- rasa/e2e_test/stub_custom_action.py +1 -1
- rasa/e2e_test/utils/generative_assertions.py +243 -0
- rasa/e2e_test/utils/io.py +123 -93
- rasa/e2e_test/utils/validation.py +101 -3
- rasa/engine/caching.py +5 -7
- rasa/engine/constants.py +1 -1
- rasa/engine/graph.py +3 -2
- rasa/engine/language.py +182 -0
- rasa/engine/recipes/config_files/default_config.yml +4 -0
- rasa/engine/recipes/default_components.py +13 -15
- rasa/engine/recipes/default_recipe.py +65 -49
- rasa/engine/recipes/graph_recipe.py +10 -7
- rasa/engine/recipes/recipe.py +2 -2
- rasa/engine/runner/dask.py +2 -2
- rasa/engine/runner/interface.py +1 -0
- rasa/engine/storage/local_model_storage.py +6 -4
- rasa/engine/storage/resource.py +2 -1
- rasa/engine/storage/storage.py +8 -3
- rasa/engine/training/components.py +2 -1
- rasa/engine/training/fingerprinting.py +4 -2
- rasa/engine/training/graph_trainer.py +4 -4
- rasa/engine/training/hooks.py +2 -2
- rasa/engine/validation.py +36 -33
- rasa/exceptions.py +3 -2
- rasa/graph_components/converters/nlu_message_converter.py +3 -3
- rasa/graph_components/providers/domain_for_core_training_provider.py +3 -3
- rasa/graph_components/providers/domain_provider.py +3 -2
- rasa/graph_components/providers/flows_provider.py +2 -3
- rasa/graph_components/providers/forms_provider.py +4 -4
- rasa/graph_components/providers/nlu_training_data_provider.py +5 -3
- rasa/graph_components/providers/responses_provider.py +4 -4
- rasa/graph_components/providers/rule_only_provider.py +3 -2
- rasa/graph_components/providers/story_graph_provider.py +8 -8
- rasa/graph_components/providers/training_tracker_provider.py +3 -2
- rasa/graph_components/validators/default_recipe_validator.py +16 -16
- rasa/graph_components/validators/finetuning_validator.py +10 -8
- rasa/hooks.py +19 -14
- rasa/jupyter.py +2 -2
- rasa/llm_fine_tuning/annotation_module.py +4 -4
- rasa/llm_fine_tuning/conversations.py +5 -33
- rasa/llm_fine_tuning/llm_data_preparation_module.py +6 -4
- rasa/llm_fine_tuning/paraphrasing/conversation_rephraser.py +4 -4
- rasa/llm_fine_tuning/paraphrasing/rephrase_validator.py +18 -13
- rasa/llm_fine_tuning/paraphrasing_module.py +6 -2
- rasa/llm_fine_tuning/storage.py +3 -3
- rasa/llm_fine_tuning/train_test_split_module.py +27 -27
- rasa/llm_fine_tuning/utils.py +7 -0
- rasa/markers/marker.py +2 -3
- rasa/markers/marker_base.py +1 -2
- rasa/markers/upload.py +2 -2
- rasa/markers/validate.py +2 -3
- rasa/model.py +3 -5
- rasa/model_manager/config.py +1 -1
- rasa/model_manager/model_api.py +5 -4
- rasa/model_manager/runner_service.py +13 -10
- rasa/model_manager/socket_bridge.py +15 -9
- rasa/model_manager/studio_jwt_auth.py +1 -0
- rasa/model_manager/trainer_service.py +9 -7
- rasa/model_manager/utils.py +1 -1
- rasa/model_manager/warm_rasa_process.py +14 -9
- rasa/model_service.py +5 -6
- rasa/model_testing.py +13 -15
- rasa/model_training.py +29 -29
- rasa/nlu/classifiers/diet_classifier.py +72 -73
- rasa/nlu/classifiers/fallback_classifier.py +9 -8
- rasa/nlu/classifiers/keyword_intent_classifier.py +7 -6
- rasa/nlu/classifiers/logistic_regression_classifier.py +3 -3
- rasa/nlu/classifiers/mitie_intent_classifier.py +5 -4
- rasa/nlu/classifiers/regex_message_handler.py +3 -2
- rasa/nlu/classifiers/sklearn_intent_classifier.py +2 -2
- rasa/nlu/convert.py +2 -2
- rasa/nlu/emulators/dialogflow.py +3 -3
- rasa/nlu/emulators/luis.py +5 -5
- rasa/nlu/emulators/no_emulator.py +1 -0
- rasa/nlu/emulators/wit.py +4 -4
- rasa/nlu/extractors/crf_entity_extractor.py +11 -11
- rasa/nlu/extractors/duckling_entity_extractor.py +7 -6
- rasa/nlu/extractors/entity_synonyms.py +10 -9
- rasa/nlu/extractors/extractor.py +16 -16
- rasa/nlu/extractors/mitie_entity_extractor.py +10 -9
- rasa/nlu/extractors/regex_entity_extractor.py +11 -10
- rasa/nlu/extractors/spacy_entity_extractor.py +2 -2
- rasa/nlu/featurizers/dense_featurizer/convert_featurizer.py +15 -14
- rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py +2 -1
- rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py +10 -9
- rasa/nlu/featurizers/dense_featurizer/mitie_featurizer.py +9 -7
- rasa/nlu/featurizers/dense_featurizer/spacy_featurizer.py +13 -12
- rasa/nlu/featurizers/featurizer.py +5 -4
- rasa/nlu/featurizers/sparse_featurizer/count_vectors_featurizer.py +6 -6
- rasa/nlu/featurizers/sparse_featurizer/lexical_syntactic_featurizer.py +4 -4
- rasa/nlu/featurizers/sparse_featurizer/regex_featurizer.py +4 -4
- rasa/nlu/featurizers/sparse_featurizer/sparse_featurizer.py +2 -0
- rasa/nlu/model.py +0 -1
- rasa/nlu/selectors/response_selector.py +67 -68
- rasa/nlu/test.py +38 -38
- rasa/nlu/tokenizers/jieba_tokenizer.py +1 -2
- rasa/nlu/tokenizers/mitie_tokenizer.py +2 -2
- rasa/nlu/tokenizers/spacy_tokenizer.py +3 -3
- rasa/nlu/tokenizers/tokenizer.py +6 -7
- rasa/nlu/tokenizers/whitespace_tokenizer.py +1 -1
- rasa/nlu/utils/bilou_utils.py +7 -7
- rasa/nlu/utils/hugging_face/registry.py +22 -22
- rasa/nlu/utils/hugging_face/transformers_pre_post_processors.py +2 -1
- rasa/nlu/utils/mitie_utils.py +2 -1
- rasa/nlu/utils/pattern_utils.py +1 -1
- rasa/nlu/utils/spacy_utils.py +3 -3
- rasa/plugin.py +12 -1
- rasa/server.py +3 -2
- rasa/shared/constants.py +45 -18
- rasa/shared/core/command_payload_reader.py +15 -7
- rasa/shared/core/constants.py +34 -4
- rasa/shared/core/conversation.py +1 -2
- rasa/shared/core/domain.py +19 -20
- rasa/shared/core/events.py +60 -39
- rasa/shared/core/flows/__init__.py +0 -1
- rasa/shared/core/flows/constants.py +11 -0
- rasa/shared/core/flows/flow.py +107 -26
- rasa/shared/core/flows/flow_step.py +4 -3
- rasa/shared/core/flows/flow_step_links.py +1 -2
- rasa/shared/core/flows/flow_step_sequence.py +1 -1
- rasa/shared/core/flows/flows_list.py +3 -3
- rasa/shared/core/flows/flows_yaml_schema.json +69 -3
- rasa/shared/core/flows/nlu_trigger.py +1 -1
- rasa/shared/core/flows/steps/__init__.py +2 -2
- rasa/shared/core/flows/steps/action.py +1 -1
- rasa/shared/core/flows/steps/call.py +1 -1
- rasa/shared/core/flows/steps/collect.py +22 -40
- rasa/shared/core/flows/steps/internal.py +1 -1
- rasa/shared/core/flows/steps/link.py +1 -1
- rasa/shared/core/flows/steps/no_operation.py +2 -2
- rasa/shared/core/flows/steps/set_slots.py +1 -1
- rasa/shared/core/flows/utils.py +44 -4
- rasa/shared/core/flows/validation.py +4 -6
- rasa/shared/core/generator.py +20 -21
- rasa/shared/core/slot_mappings.py +360 -121
- rasa/shared/core/slots.py +163 -6
- rasa/shared/core/trackers.py +108 -33
- rasa/shared/core/training_data/loading.py +1 -1
- rasa/shared/core/training_data/story_reader/story_reader.py +3 -3
- rasa/shared/core/training_data/story_reader/story_step_builder.py +4 -4
- rasa/shared/core/training_data/story_reader/yaml_story_reader.py +29 -31
- rasa/shared/core/training_data/story_writer/yaml_story_writer.py +22 -24
- rasa/shared/core/training_data/structures.py +11 -12
- rasa/shared/core/training_data/visualization.py +10 -10
- rasa/shared/data.py +6 -6
- rasa/shared/engine/caching.py +0 -1
- rasa/shared/exceptions.py +2 -2
- rasa/shared/importers/importer.py +58 -2
- rasa/shared/importers/rasa.py +5 -6
- rasa/shared/importers/utils.py +1 -1
- rasa/shared/nlu/constants.py +9 -0
- rasa/shared/nlu/training_data/entities_parser.py +6 -6
- rasa/shared/nlu/training_data/features.py +3 -3
- rasa/shared/nlu/training_data/formats/__init__.py +1 -1
- rasa/shared/nlu/training_data/formats/dialogflow.py +4 -5
- rasa/shared/nlu/training_data/formats/luis.py +7 -8
- rasa/shared/nlu/training_data/formats/rasa.py +4 -5
- rasa/shared/nlu/training_data/formats/rasa_yaml.py +17 -16
- rasa/shared/nlu/training_data/formats/readerwriter.py +8 -11
- rasa/shared/nlu/training_data/formats/wit.py +3 -4
- rasa/shared/nlu/training_data/loading.py +4 -4
- rasa/shared/nlu/training_data/lookup_tables_parser.py +1 -1
- rasa/shared/nlu/training_data/message.py +13 -14
- rasa/shared/nlu/training_data/schemas/data_schema.py +1 -1
- rasa/shared/nlu/training_data/schemas/responses.yml +19 -11
- rasa/shared/nlu/training_data/synonyms_parser.py +3 -3
- rasa/shared/nlu/training_data/training_data.py +12 -13
- rasa/shared/nlu/training_data/util.py +11 -10
- rasa/shared/providers/_configs/azure_entra_id_config.py +541 -0
- rasa/shared/providers/_configs/azure_openai_client_config.py +150 -15
- rasa/shared/providers/_configs/client_config.py +3 -1
- rasa/shared/providers/_configs/default_litellm_client_config.py +9 -7
- rasa/shared/providers/_configs/huggingface_local_embedding_client_config.py +13 -11
- rasa/shared/providers/_configs/litellm_router_client_config.py +12 -10
- rasa/shared/providers/_configs/model_group_config.py +8 -5
- rasa/shared/providers/_configs/oauth_config.py +33 -0
- rasa/shared/providers/_configs/openai_client_config.py +14 -12
- rasa/shared/providers/_configs/rasa_llm_client_config.py +5 -3
- rasa/shared/providers/_configs/self_hosted_llm_client_config.py +12 -11
- rasa/shared/providers/_configs/utils.py +1 -0
- rasa/shared/providers/_ssl_verification_utils.py +5 -6
- rasa/shared/providers/_utils.py +5 -5
- rasa/shared/providers/constants.py +6 -0
- rasa/shared/providers/embedding/_base_litellm_embedding_client.py +1 -1
- rasa/shared/providers/embedding/azure_openai_embedding_client.py +32 -7
- rasa/shared/providers/embedding/embedding_client.py +1 -1
- rasa/shared/providers/embedding/litellm_router_embedding_client.py +5 -2
- rasa/shared/providers/llm/_base_litellm_client.py +43 -18
- rasa/shared/providers/llm/azure_openai_llm_client.py +90 -34
- rasa/shared/providers/llm/default_litellm_llm_client.py +4 -2
- rasa/shared/providers/llm/litellm_router_llm_client.py +32 -9
- rasa/shared/providers/llm/llm_client.py +24 -8
- rasa/shared/providers/llm/llm_response.py +61 -2
- rasa/shared/providers/llm/openai_llm_client.py +11 -5
- rasa/shared/providers/llm/rasa_llm_client.py +17 -14
- rasa/shared/providers/llm/self_hosted_llm_client.py +35 -15
- rasa/shared/providers/mappings.py +18 -19
- rasa/shared/providers/router/_base_litellm_router_client.py +48 -15
- rasa/shared/providers/router/router_client.py +3 -1
- rasa/shared/utils/cli.py +1 -1
- rasa/shared/utils/common.py +15 -1
- rasa/shared/utils/constants.py +3 -0
- rasa/shared/utils/health_check/embeddings_health_check_mixin.py +1 -1
- rasa/shared/utils/health_check/health_check.py +3 -3
- rasa/shared/utils/health_check/llm_health_check_mixin.py +1 -1
- rasa/shared/utils/io.py +1 -1
- rasa/shared/utils/llm.py +100 -18
- rasa/shared/utils/pykwalify_extensions.py +25 -1
- rasa/shared/utils/schemas/domain.yml +26 -1
- rasa/shared/utils/schemas/events.py +1 -1
- rasa/shared/utils/yaml.py +24 -20
- rasa/studio/auth.py +3 -3
- rasa/studio/config.py +1 -2
- rasa/studio/data_handler.py +3 -3
- rasa/studio/download.py +1 -1
- rasa/studio/results_logger.py +3 -3
- rasa/studio/upload.py +21 -5
- rasa/telemetry.py +127 -48
- rasa/tracing/config.py +5 -3
- rasa/tracing/constants.py +12 -0
- rasa/tracing/instrumentation/attribute_extractors.py +92 -14
- rasa/tracing/instrumentation/instrumentation.py +61 -5
- rasa/tracing/instrumentation/intentless_policy_instrumentation.py +1 -1
- rasa/tracing/instrumentation/metrics.py +52 -11
- rasa/tracing/metric_instrument_provider.py +54 -14
- rasa/utils/common.py +12 -24
- rasa/utils/endpoints.py +1 -1
- rasa/utils/io.py +7 -7
- rasa/utils/licensing.py +3 -4
- rasa/utils/log_utils.py +7 -6
- rasa/utils/ml_utils.py +1 -0
- rasa/utils/plotting.py +3 -3
- rasa/utils/sanic_error_handler.py +1 -1
- rasa/utils/tensorflow/callback.py +2 -2
- rasa/utils/tensorflow/crf.py +2 -2
- rasa/utils/tensorflow/data_generator.py +5 -5
- rasa/utils/tensorflow/environment.py +3 -3
- rasa/utils/tensorflow/feature_array.py +2 -3
- rasa/utils/tensorflow/layers.py +18 -12
- rasa/utils/tensorflow/layers_utils.py +2 -1
- rasa/utils/tensorflow/metrics.py +2 -2
- rasa/utils/tensorflow/model_data.py +7 -7
- rasa/utils/tensorflow/model_data_utils.py +10 -9
- rasa/utils/tensorflow/models.py +31 -32
- rasa/utils/tensorflow/rasa_layers.py +20 -19
- rasa/utils/tensorflow/types.py +2 -1
- rasa/utils/train_utils.py +23 -21
- rasa/utils/url_tools.py +1 -1
- rasa/validator.py +594 -115
- rasa/version.py +1 -1
- {rasa_pro-3.11.5.dist-info → rasa_pro-3.12.0.dist-info}/METADATA +23 -26
- rasa_pro-3.12.0.dist-info/RECORD +829 -0
- rasa/core/channels/inspector/dist/assets/channel-e265ea59.js +0 -1
- rasa/core/channels/inspector/dist/assets/clone-21f8a43d.js +0 -1
- rasa/core/channels/inspector/dist/assets/flowDiagram-v2-96b9c2cf-5c8ce12d.js +0 -1
- rasa_pro-3.11.5.dist-info/RECORD +0 -785
- /rasa/dialogue_understanding/generator/{single_step → prompt_templates}/command_prompt_template.jinja2 +0 -0
- {rasa_pro-3.11.5.dist-info → rasa_pro-3.12.0.dist-info}/NOTICE +0 -0
- {rasa_pro-3.11.5.dist-info → rasa_pro-3.12.0.dist-info}/WHEEL +0 -0
- {rasa_pro-3.11.5.dist-info → rasa_pro-3.12.0.dist-info}/entry_points.txt +0 -0
rasa/utils/tensorflow/layers.py
CHANGED
|
@@ -1,29 +1,35 @@
|
|
|
1
1
|
import logging
|
|
2
|
-
from typing import List, Optional, Text, Tuple,
|
|
2
|
+
from typing import Any, Callable, List, Optional, Text, Tuple, Union
|
|
3
|
+
|
|
3
4
|
import tensorflow as tf
|
|
5
|
+
import tensorflow.keras.backend as K
|
|
4
6
|
|
|
5
7
|
# TODO: The following is not (yet) available via tf.keras
|
|
6
8
|
from keras.src.utils.control_flow_util import smart_cond
|
|
7
|
-
import tensorflow.keras.backend as K
|
|
8
9
|
|
|
9
10
|
import rasa.utils.tensorflow.crf
|
|
11
|
+
import rasa.utils.tensorflow.layers_utils as layers_utils
|
|
12
|
+
from rasa.core.constants import DIALOGUE
|
|
13
|
+
from rasa.shared.nlu.constants import (
|
|
14
|
+
ACTION_NAME,
|
|
15
|
+
ACTION_TEXT,
|
|
16
|
+
FEATURE_TYPE_SENTENCE,
|
|
17
|
+
FEATURE_TYPE_SEQUENCE,
|
|
18
|
+
INTENT,
|
|
19
|
+
TEXT,
|
|
20
|
+
)
|
|
10
21
|
from rasa.utils.tensorflow.constants import (
|
|
11
|
-
SOFTMAX,
|
|
12
|
-
MARGIN,
|
|
13
22
|
COSINE,
|
|
14
|
-
INNER,
|
|
15
23
|
CROSS_ENTROPY,
|
|
24
|
+
INNER,
|
|
16
25
|
LABEL,
|
|
17
26
|
LABEL_PAD_ID,
|
|
27
|
+
MARGIN,
|
|
28
|
+
SOFTMAX,
|
|
18
29
|
)
|
|
19
|
-
from rasa.core.constants import DIALOGUE
|
|
20
|
-
from rasa.shared.nlu.constants import FEATURE_TYPE_SENTENCE, FEATURE_TYPE_SEQUENCE
|
|
21
|
-
from rasa.shared.nlu.constants import TEXT, INTENT, ACTION_NAME, ACTION_TEXT
|
|
22
|
-
|
|
23
|
-
from rasa.utils.tensorflow.metrics import F1Score
|
|
24
|
-
from rasa.utils.tensorflow.exceptions import TFLayerConfigException
|
|
25
|
-
import rasa.utils.tensorflow.layers_utils as layers_utils
|
|
26
30
|
from rasa.utils.tensorflow.crf import crf_log_likelihood
|
|
31
|
+
from rasa.utils.tensorflow.exceptions import TFLayerConfigException
|
|
32
|
+
from rasa.utils.tensorflow.metrics import F1Score
|
|
27
33
|
|
|
28
34
|
logger = logging.getLogger(__name__)
|
|
29
35
|
|
rasa/utils/tensorflow/metrics.py
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
from typing import Any, Dict, Optional
|
|
2
|
+
|
|
1
3
|
import tensorflow as tf
|
|
2
4
|
from tensorflow.keras import backend as K
|
|
3
5
|
from tensorflow.types.experimental import TensorLike
|
|
4
|
-
from typing import Any, Dict, Optional
|
|
5
|
-
|
|
6
6
|
|
|
7
7
|
# original code taken from
|
|
8
8
|
# https://github.com/tensorflow/addons/blob/f30df4322b5580b3e5946530a60f7126035dd73b/tensorflow_addons/metrics/f_scores.py
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import logging
|
|
2
|
+
from collections import OrderedDict, defaultdict
|
|
2
3
|
from typing import (
|
|
3
|
-
|
|
4
|
+
Any,
|
|
4
5
|
DefaultDict,
|
|
5
6
|
Dict,
|
|
7
|
+
ItemsView,
|
|
6
8
|
Iterable,
|
|
7
|
-
Text,
|
|
8
9
|
List,
|
|
10
|
+
NamedTuple,
|
|
11
|
+
Optional,
|
|
12
|
+
Text,
|
|
9
13
|
Tuple,
|
|
10
|
-
Any,
|
|
11
14
|
Union,
|
|
12
|
-
NamedTuple,
|
|
13
|
-
ItemsView,
|
|
14
|
-
overload,
|
|
15
15
|
cast,
|
|
16
|
+
overload,
|
|
16
17
|
)
|
|
17
|
-
from collections import defaultdict, OrderedDict
|
|
18
18
|
|
|
19
19
|
import numpy as np
|
|
20
20
|
import scipy.sparse
|
|
@@ -1,25 +1,26 @@
|
|
|
1
|
-
import typing
|
|
2
1
|
import copy
|
|
2
|
+
import typing
|
|
3
|
+
from collections import OrderedDict, defaultdict
|
|
4
|
+
from typing import Any, DefaultDict, Dict, List, Optional, Text, Tuple, Union, cast
|
|
5
|
+
|
|
3
6
|
import numpy as np
|
|
4
7
|
import scipy.sparse
|
|
5
|
-
from collections import defaultdict, OrderedDict
|
|
6
|
-
from typing import List, Optional, Text, Dict, Tuple, Union, Any, DefaultDict, cast
|
|
7
8
|
|
|
8
9
|
from rasa.nlu.constants import TOKENS_NAMES
|
|
9
|
-
from rasa.utils.tensorflow.model_data import Data, FeatureArray, ragged_array_to_ndarray
|
|
10
|
-
from rasa.utils.tensorflow.constants import MASK, IDS
|
|
11
|
-
from rasa.shared.nlu.training_data.message import Message
|
|
12
10
|
from rasa.shared.nlu.constants import (
|
|
13
|
-
TEXT,
|
|
14
11
|
ENTITIES,
|
|
15
|
-
ENTITY_ATTRIBUTE_TYPE,
|
|
16
12
|
ENTITY_ATTRIBUTE_GROUP,
|
|
17
13
|
ENTITY_ATTRIBUTE_ROLE,
|
|
14
|
+
ENTITY_ATTRIBUTE_TYPE,
|
|
15
|
+
TEXT,
|
|
18
16
|
)
|
|
17
|
+
from rasa.shared.nlu.training_data.message import Message
|
|
18
|
+
from rasa.utils.tensorflow.constants import IDS, MASK
|
|
19
|
+
from rasa.utils.tensorflow.model_data import Data, FeatureArray, ragged_array_to_ndarray
|
|
19
20
|
|
|
20
21
|
if typing.TYPE_CHECKING:
|
|
21
|
-
from rasa.shared.nlu.training_data.features import Features
|
|
22
22
|
from rasa.nlu.extractors.extractor import EntityTagSpec
|
|
23
|
+
from rasa.shared.nlu.training_data.features import Features
|
|
23
24
|
|
|
24
25
|
TAG_ID_ORIGIN = "tag_id_origin"
|
|
25
26
|
|
rasa/utils/tensorflow/models.py
CHANGED
|
@@ -1,53 +1,52 @@
|
|
|
1
|
-
import time
|
|
2
|
-
import random
|
|
3
|
-
import tensorflow as tf
|
|
4
|
-
import numpy as np
|
|
5
1
|
import logging
|
|
6
2
|
import os
|
|
3
|
+
import random
|
|
4
|
+
import time
|
|
7
5
|
from collections import defaultdict
|
|
8
|
-
from typing import
|
|
6
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Optional, Text, Tuple, Union
|
|
9
7
|
|
|
10
|
-
|
|
8
|
+
import numpy as np
|
|
9
|
+
import tensorflow as tf
|
|
11
10
|
from keras import Model
|
|
11
|
+
from keras.src.utils import tf_utils
|
|
12
12
|
|
|
13
|
+
import rasa.utils.train_utils
|
|
13
14
|
from rasa.shared.constants import DIAGNOSTIC_DATA
|
|
15
|
+
from rasa.shared.exceptions import RasaException
|
|
16
|
+
from rasa.shared.nlu.constants import TEXT
|
|
17
|
+
from rasa.utils.tensorflow import layers, rasa_layers
|
|
14
18
|
from rasa.utils.tensorflow.constants import (
|
|
15
|
-
|
|
19
|
+
CONNECTION_DENSITY,
|
|
20
|
+
CONSTRAIN_SIMILARITIES,
|
|
21
|
+
EMBEDDING_DIMENSION,
|
|
16
22
|
IDS,
|
|
17
23
|
INTENT_CLASSIFICATION,
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
RANDOM_SEED,
|
|
21
|
-
EMBEDDING_DIMENSION,
|
|
22
|
-
REGULARIZATION_CONSTANT,
|
|
23
|
-
SIMILARITY_TYPE,
|
|
24
|
-
CONNECTION_DENSITY,
|
|
25
|
-
NUM_NEG,
|
|
24
|
+
LABEL,
|
|
25
|
+
LEARNING_RATE,
|
|
26
26
|
LOSS_TYPE,
|
|
27
|
-
MAX_POS_SIM,
|
|
28
27
|
MAX_NEG_SIM,
|
|
29
|
-
|
|
30
|
-
NEGATIVE_MARGIN_SCALE,
|
|
31
|
-
SCALE_LOSS,
|
|
32
|
-
LEARNING_RATE,
|
|
33
|
-
CONSTRAIN_SIMILARITIES,
|
|
28
|
+
MAX_POS_SIM,
|
|
34
29
|
MODEL_CONFIDENCE,
|
|
30
|
+
NEGATIVE_MARGIN_SCALE,
|
|
31
|
+
NUM_NEG,
|
|
32
|
+
RANDOM_SEED,
|
|
33
|
+
REGULARIZATION_CONSTANT,
|
|
35
34
|
RUN_EAGERLY,
|
|
35
|
+
SCALE_LOSS,
|
|
36
|
+
SENTENCE,
|
|
37
|
+
SEQUENCE_LENGTH,
|
|
38
|
+
SIMILARITY_TYPE,
|
|
39
|
+
USE_MAX_NEG_SIM,
|
|
36
40
|
)
|
|
37
|
-
from rasa.utils.tensorflow.model_data import (
|
|
38
|
-
RasaModelData,
|
|
39
|
-
FeatureSignature,
|
|
40
|
-
FeatureArray,
|
|
41
|
-
)
|
|
42
|
-
import rasa.utils.train_utils
|
|
43
|
-
from rasa.utils.tensorflow import layers
|
|
44
|
-
from rasa.utils.tensorflow import rasa_layers
|
|
45
41
|
from rasa.utils.tensorflow.data_generator import (
|
|
46
|
-
RasaDataGenerator,
|
|
47
42
|
RasaBatchDataGenerator,
|
|
43
|
+
RasaDataGenerator,
|
|
44
|
+
)
|
|
45
|
+
from rasa.utils.tensorflow.model_data import (
|
|
46
|
+
FeatureArray,
|
|
47
|
+
FeatureSignature,
|
|
48
|
+
RasaModelData,
|
|
48
49
|
)
|
|
49
|
-
from rasa.shared.nlu.constants import TEXT
|
|
50
|
-
from rasa.shared.exceptions import RasaException
|
|
51
50
|
from rasa.utils.tensorflow.types import BatchData, MaybeNestedBatchData
|
|
52
51
|
|
|
53
52
|
if TYPE_CHECKING:
|
|
@@ -1,34 +1,35 @@
|
|
|
1
|
-
import
|
|
1
|
+
from typing import Any, Callable, Dict, List, Optional, Text, Tuple, Union
|
|
2
|
+
|
|
2
3
|
import numpy as np
|
|
3
|
-
|
|
4
|
+
import tensorflow as tf
|
|
4
5
|
|
|
6
|
+
from rasa.nlu.constants import DEFAULT_TRANSFORMER_SIZE
|
|
5
7
|
from rasa.shared.nlu.constants import TEXT
|
|
6
|
-
from rasa.utils.tensorflow
|
|
8
|
+
from rasa.utils.tensorflow import layers
|
|
7
9
|
from rasa.utils.tensorflow.constants import (
|
|
8
|
-
|
|
10
|
+
CONCAT_DIMENSION,
|
|
9
11
|
CONNECTION_DENSITY,
|
|
12
|
+
DENSE_DIMENSION,
|
|
13
|
+
DENSE_INPUT_DROPOUT,
|
|
14
|
+
DROP_RATE,
|
|
15
|
+
DROP_RATE_ATTENTION,
|
|
16
|
+
HIDDEN_LAYERS_SIZES,
|
|
17
|
+
KEY_RELATIVE_ATTENTION,
|
|
18
|
+
MASKED_LM,
|
|
19
|
+
MAX_RELATIVE_POSITION,
|
|
20
|
+
NUM_HEADS,
|
|
10
21
|
NUM_TRANSFORMER_LAYERS,
|
|
22
|
+
REGULARIZATION_CONSTANT,
|
|
23
|
+
SENTENCE,
|
|
24
|
+
SEQUENCE,
|
|
25
|
+
SPARSE_INPUT_DROPOUT,
|
|
11
26
|
TRANSFORMER_SIZE,
|
|
12
|
-
NUM_HEADS,
|
|
13
27
|
UNIDIRECTIONAL_ENCODER,
|
|
14
|
-
KEY_RELATIVE_ATTENTION,
|
|
15
28
|
VALUE_RELATIVE_ATTENTION,
|
|
16
|
-
MAX_RELATIVE_POSITION,
|
|
17
|
-
MASKED_LM,
|
|
18
|
-
HIDDEN_LAYERS_SIZES,
|
|
19
|
-
DROP_RATE,
|
|
20
|
-
SPARSE_INPUT_DROPOUT,
|
|
21
|
-
DENSE_INPUT_DROPOUT,
|
|
22
|
-
DENSE_DIMENSION,
|
|
23
|
-
CONCAT_DIMENSION,
|
|
24
|
-
DROP_RATE_ATTENTION,
|
|
25
|
-
SEQUENCE,
|
|
26
|
-
SENTENCE,
|
|
27
29
|
)
|
|
28
|
-
from rasa.utils.tensorflow import layers
|
|
29
30
|
from rasa.utils.tensorflow.exceptions import TFLayerConfigException
|
|
31
|
+
from rasa.utils.tensorflow.model_data import FeatureSignature
|
|
30
32
|
from rasa.utils.tensorflow.transformer import TransformerEncoder
|
|
31
|
-
from rasa.nlu.constants import DEFAULT_TRANSFORMER_SIZE
|
|
32
33
|
|
|
33
34
|
|
|
34
35
|
class RasaCustomLayer(tf.keras.layers.Layer):
|
rasa/utils/tensorflow/types.py
CHANGED
rasa/utils/train_utils.py
CHANGED
|
@@ -1,43 +1,45 @@
|
|
|
1
1
|
from pathlib import Path
|
|
2
|
+
from typing import TYPE_CHECKING, Any, Dict, List, Optional, Text, Tuple, Union
|
|
3
|
+
|
|
2
4
|
import numpy as np
|
|
3
|
-
from typing import Optional, Text, Dict, Any, Union, List, Tuple, TYPE_CHECKING
|
|
4
5
|
|
|
6
|
+
import rasa.nlu.utils.bilou_utils
|
|
5
7
|
import rasa.shared.utils.common
|
|
6
8
|
import rasa.shared.utils.io
|
|
7
|
-
import rasa.nlu.utils.bilou_utils
|
|
8
|
-
from rasa.shared.constants import NEXT_MAJOR_VERSION_FOR_DEPRECATIONS
|
|
9
|
-
from rasa.nlu.constants import NUMBER_OF_SUB_TOKENS
|
|
10
9
|
import rasa.utils.io as io_utils
|
|
10
|
+
from rasa.nlu.constants import NUMBER_OF_SUB_TOKENS
|
|
11
|
+
from rasa.shared.constants import NEXT_MAJOR_VERSION_FOR_DEPRECATIONS
|
|
12
|
+
from rasa.shared.exceptions import InvalidConfigException
|
|
13
|
+
from rasa.shared.nlu.constants import SPLIT_ENTITIES_BY_COMMA
|
|
14
|
+
from rasa.utils.tensorflow.callback import RasaModelCheckpoint, RasaTrainingLogger
|
|
11
15
|
from rasa.utils.tensorflow.constants import (
|
|
16
|
+
AUTO,
|
|
17
|
+
CHECKPOINT_MODEL,
|
|
18
|
+
CONSTRAIN_SIMILARITIES,
|
|
19
|
+
COSINE,
|
|
20
|
+
CROSS_ENTROPY,
|
|
21
|
+
EPOCHS,
|
|
22
|
+
EVAL_NUM_EPOCHS,
|
|
23
|
+
EVAL_NUM_EXAMPLES,
|
|
24
|
+
INNER,
|
|
12
25
|
LOSS_TYPE,
|
|
26
|
+
MARGIN,
|
|
27
|
+
MODEL_CONFIDENCE,
|
|
13
28
|
RANKING_LENGTH,
|
|
14
29
|
RENORMALIZE_CONFIDENCES,
|
|
30
|
+
SEQUENCE,
|
|
15
31
|
SIMILARITY_TYPE,
|
|
16
|
-
EVAL_NUM_EXAMPLES,
|
|
17
|
-
EVAL_NUM_EPOCHS,
|
|
18
|
-
EPOCHS,
|
|
19
32
|
SOFTMAX,
|
|
20
|
-
MARGIN,
|
|
21
|
-
AUTO,
|
|
22
|
-
INNER,
|
|
23
|
-
COSINE,
|
|
24
|
-
SEQUENCE,
|
|
25
|
-
CROSS_ENTROPY,
|
|
26
|
-
CONSTRAIN_SIMILARITIES,
|
|
27
|
-
MODEL_CONFIDENCE,
|
|
28
33
|
TOLERANCE,
|
|
29
|
-
CHECKPOINT_MODEL,
|
|
30
34
|
)
|
|
31
|
-
from rasa.utils.tensorflow.callback import RasaTrainingLogger, RasaModelCheckpoint
|
|
32
35
|
from rasa.utils.tensorflow.data_generator import RasaBatchDataGenerator
|
|
33
36
|
from rasa.utils.tensorflow.model_data import RasaModelData
|
|
34
|
-
from rasa.shared.nlu.constants import SPLIT_ENTITIES_BY_COMMA
|
|
35
|
-
from rasa.shared.exceptions import InvalidConfigException
|
|
36
37
|
|
|
37
38
|
if TYPE_CHECKING:
|
|
39
|
+
from tensorflow.keras.callbacks import Callback
|
|
40
|
+
|
|
38
41
|
from rasa.nlu.extractors.extractor import EntityTagSpec
|
|
39
42
|
from rasa.nlu.tokenizers.tokenizer import Token
|
|
40
|
-
from tensorflow.keras.callbacks import Callback
|
|
41
43
|
|
|
42
44
|
|
|
43
45
|
def rank_and_mask(
|
|
@@ -174,11 +176,11 @@ def update_evaluation_parameters(config: Dict[Text, Any]) -> Dict[Text, Any]:
|
|
|
174
176
|
def load_tf_hub_model(model_url: Text) -> Any:
|
|
175
177
|
"""Load model from cache if possible, otherwise from TFHub."""
|
|
176
178
|
import os
|
|
177
|
-
from tensorflow_hub.module_v2 import load as tfhub_load
|
|
178
179
|
|
|
179
180
|
# needed to load the ConveRT model
|
|
180
181
|
# noinspection PyUnresolvedReferences
|
|
181
182
|
import tensorflow_text # noqa: F401
|
|
183
|
+
from tensorflow_hub.module_v2 import load as tfhub_load
|
|
182
184
|
|
|
183
185
|
# required to take care of cases when other files are already
|
|
184
186
|
# stored in the default TFHUB_CACHE_DIR
|