rasa-pro 3.9.18__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 +415 -0
- rasa/__init__.py +10 -0
- rasa/__main__.py +156 -0
- rasa/anonymization/__init__.py +2 -0
- rasa/anonymization/anonymisation_rule_yaml_reader.py +91 -0
- rasa/anonymization/anonymization_pipeline.py +286 -0
- rasa/anonymization/anonymization_rule_executor.py +260 -0
- rasa/anonymization/anonymization_rule_orchestrator.py +120 -0
- rasa/anonymization/schemas/config.yml +47 -0
- rasa/anonymization/utils.py +118 -0
- rasa/api.py +146 -0
- rasa/cli/__init__.py +5 -0
- rasa/cli/arguments/__init__.py +0 -0
- rasa/cli/arguments/data.py +81 -0
- rasa/cli/arguments/default_arguments.py +165 -0
- rasa/cli/arguments/evaluate.py +65 -0
- rasa/cli/arguments/export.py +51 -0
- rasa/cli/arguments/interactive.py +74 -0
- rasa/cli/arguments/run.py +204 -0
- rasa/cli/arguments/shell.py +13 -0
- rasa/cli/arguments/test.py +211 -0
- rasa/cli/arguments/train.py +263 -0
- rasa/cli/arguments/visualize.py +34 -0
- rasa/cli/arguments/x.py +30 -0
- rasa/cli/data.py +292 -0
- rasa/cli/e2e_test.py +586 -0
- rasa/cli/evaluate.py +222 -0
- rasa/cli/export.py +250 -0
- rasa/cli/inspect.py +63 -0
- rasa/cli/interactive.py +164 -0
- rasa/cli/license.py +65 -0
- rasa/cli/markers.py +78 -0
- rasa/cli/project_templates/__init__.py +0 -0
- rasa/cli/project_templates/calm/actions/__init__.py +0 -0
- rasa/cli/project_templates/calm/actions/action_template.py +27 -0
- rasa/cli/project_templates/calm/actions/add_contact.py +30 -0
- rasa/cli/project_templates/calm/actions/db.py +57 -0
- rasa/cli/project_templates/calm/actions/list_contacts.py +22 -0
- rasa/cli/project_templates/calm/actions/remove_contact.py +35 -0
- rasa/cli/project_templates/calm/config.yml +12 -0
- rasa/cli/project_templates/calm/credentials.yml +33 -0
- rasa/cli/project_templates/calm/data/flows/add_contact.yml +31 -0
- rasa/cli/project_templates/calm/data/flows/list_contacts.yml +14 -0
- rasa/cli/project_templates/calm/data/flows/remove_contact.yml +29 -0
- rasa/cli/project_templates/calm/db/contacts.json +10 -0
- rasa/cli/project_templates/calm/domain/add_contact.yml +39 -0
- rasa/cli/project_templates/calm/domain/list_contacts.yml +17 -0
- rasa/cli/project_templates/calm/domain/remove_contact.yml +38 -0
- rasa/cli/project_templates/calm/domain/shared.yml +10 -0
- rasa/cli/project_templates/calm/e2e_tests/cancelations/user_cancels_during_a_correction.yml +16 -0
- rasa/cli/project_templates/calm/e2e_tests/cancelations/user_changes_mind_on_a_whim.yml +7 -0
- rasa/cli/project_templates/calm/e2e_tests/corrections/user_corrects_contact_handle.yml +20 -0
- rasa/cli/project_templates/calm/e2e_tests/corrections/user_corrects_contact_name.yml +19 -0
- rasa/cli/project_templates/calm/e2e_tests/happy_paths/user_adds_contact_to_their_list.yml +15 -0
- rasa/cli/project_templates/calm/e2e_tests/happy_paths/user_lists_contacts.yml +5 -0
- rasa/cli/project_templates/calm/e2e_tests/happy_paths/user_removes_contact.yml +11 -0
- rasa/cli/project_templates/calm/e2e_tests/happy_paths/user_removes_contact_from_list.yml +12 -0
- rasa/cli/project_templates/calm/endpoints.yml +45 -0
- rasa/cli/project_templates/default/actions/__init__.py +0 -0
- rasa/cli/project_templates/default/actions/actions.py +27 -0
- rasa/cli/project_templates/default/config.yml +44 -0
- rasa/cli/project_templates/default/credentials.yml +33 -0
- rasa/cli/project_templates/default/data/nlu.yml +91 -0
- rasa/cli/project_templates/default/data/rules.yml +13 -0
- rasa/cli/project_templates/default/data/stories.yml +30 -0
- rasa/cli/project_templates/default/domain.yml +34 -0
- rasa/cli/project_templates/default/endpoints.yml +42 -0
- rasa/cli/project_templates/default/tests/test_stories.yml +91 -0
- rasa/cli/project_templates/tutorial/actions.py +22 -0
- rasa/cli/project_templates/tutorial/config.yml +11 -0
- rasa/cli/project_templates/tutorial/credentials.yml +33 -0
- rasa/cli/project_templates/tutorial/data/flows.yml +8 -0
- rasa/cli/project_templates/tutorial/data/patterns.yml +6 -0
- rasa/cli/project_templates/tutorial/domain.yml +21 -0
- rasa/cli/project_templates/tutorial/endpoints.yml +45 -0
- rasa/cli/run.py +135 -0
- rasa/cli/scaffold.py +269 -0
- rasa/cli/shell.py +141 -0
- rasa/cli/studio/__init__.py +0 -0
- rasa/cli/studio/download.py +62 -0
- rasa/cli/studio/studio.py +266 -0
- rasa/cli/studio/train.py +59 -0
- rasa/cli/studio/upload.py +77 -0
- rasa/cli/telemetry.py +102 -0
- rasa/cli/test.py +280 -0
- rasa/cli/train.py +260 -0
- rasa/cli/utils.py +464 -0
- rasa/cli/visualize.py +40 -0
- rasa/cli/x.py +206 -0
- rasa/constants.py +37 -0
- rasa/core/__init__.py +17 -0
- rasa/core/actions/__init__.py +0 -0
- rasa/core/actions/action.py +1225 -0
- rasa/core/actions/action_clean_stack.py +59 -0
- rasa/core/actions/action_exceptions.py +24 -0
- rasa/core/actions/action_run_slot_rejections.py +207 -0
- rasa/core/actions/action_trigger_chitchat.py +31 -0
- rasa/core/actions/action_trigger_flow.py +109 -0
- rasa/core/actions/action_trigger_search.py +31 -0
- rasa/core/actions/constants.py +5 -0
- rasa/core/actions/custom_action_executor.py +188 -0
- rasa/core/actions/forms.py +741 -0
- rasa/core/actions/grpc_custom_action_executor.py +251 -0
- rasa/core/actions/http_custom_action_executor.py +140 -0
- rasa/core/actions/loops.py +114 -0
- rasa/core/actions/two_stage_fallback.py +186 -0
- rasa/core/agent.py +555 -0
- rasa/core/auth_retry_tracker_store.py +122 -0
- rasa/core/brokers/__init__.py +0 -0
- rasa/core/brokers/broker.py +126 -0
- rasa/core/brokers/file.py +58 -0
- rasa/core/brokers/kafka.py +322 -0
- rasa/core/brokers/pika.py +386 -0
- rasa/core/brokers/sql.py +86 -0
- rasa/core/channels/__init__.py +55 -0
- rasa/core/channels/audiocodes.py +463 -0
- rasa/core/channels/botframework.py +338 -0
- rasa/core/channels/callback.py +84 -0
- rasa/core/channels/channel.py +419 -0
- rasa/core/channels/console.py +241 -0
- rasa/core/channels/development_inspector.py +93 -0
- rasa/core/channels/facebook.py +419 -0
- rasa/core/channels/hangouts.py +329 -0
- rasa/core/channels/inspector/.eslintrc.cjs +25 -0
- rasa/core/channels/inspector/.gitignore +23 -0
- rasa/core/channels/inspector/README.md +54 -0
- rasa/core/channels/inspector/assets/favicon.ico +0 -0
- rasa/core/channels/inspector/assets/rasa-chat.js +2 -0
- rasa/core/channels/inspector/custom.d.ts +3 -0
- rasa/core/channels/inspector/dist/assets/arc-b6e548fe.js +1 -0
- rasa/core/channels/inspector/dist/assets/array-9f3ba611.js +1 -0
- rasa/core/channels/inspector/dist/assets/c4Diagram-d0fbc5ce-fa03ac9e.js +10 -0
- rasa/core/channels/inspector/dist/assets/classDiagram-936ed81e-ee67392a.js +2 -0
- rasa/core/channels/inspector/dist/assets/classDiagram-v2-c3cb15f1-9b283fae.js +2 -0
- rasa/core/channels/inspector/dist/assets/createText-62fc7601-8b6fcc2a.js +7 -0
- rasa/core/channels/inspector/dist/assets/edges-f2ad444c-22e77f4f.js +4 -0
- rasa/core/channels/inspector/dist/assets/erDiagram-9d236eb7-60ffc87f.js +51 -0
- rasa/core/channels/inspector/dist/assets/flowDb-1972c806-9dd802e4.js +6 -0
- rasa/core/channels/inspector/dist/assets/flowDiagram-7ea5b25a-5fa1912f.js +4 -0
- rasa/core/channels/inspector/dist/assets/flowDiagram-v2-855bc5b3-1844e5a5.js +1 -0
- rasa/core/channels/inspector/dist/assets/flowchart-elk-definition-abe16c3d-622a1fd2.js +139 -0
- rasa/core/channels/inspector/dist/assets/ganttDiagram-9b5ea136-e285a63a.js +266 -0
- rasa/core/channels/inspector/dist/assets/gitGraphDiagram-99d0ae7c-f237bdca.js +70 -0
- rasa/core/channels/inspector/dist/assets/ibm-plex-mono-v4-latin-regular-128cfa44.ttf +0 -0
- rasa/core/channels/inspector/dist/assets/ibm-plex-mono-v4-latin-regular-21dbcb97.woff +0 -0
- rasa/core/channels/inspector/dist/assets/ibm-plex-mono-v4-latin-regular-222b5e26.svg +329 -0
- rasa/core/channels/inspector/dist/assets/ibm-plex-mono-v4-latin-regular-9ad89b2a.woff2 +0 -0
- rasa/core/channels/inspector/dist/assets/index-2c4b9a3b-4b03d70e.js +1 -0
- rasa/core/channels/inspector/dist/assets/index-3ee28881.css +1 -0
- rasa/core/channels/inspector/dist/assets/index-a5d3e69d.js +1040 -0
- rasa/core/channels/inspector/dist/assets/infoDiagram-736b4530-72a0fa5f.js +7 -0
- rasa/core/channels/inspector/dist/assets/init-77b53fdd.js +1 -0
- rasa/core/channels/inspector/dist/assets/journeyDiagram-df861f2b-82218c41.js +139 -0
- rasa/core/channels/inspector/dist/assets/lato-v14-latin-700-60c05ee4.woff +0 -0
- rasa/core/channels/inspector/dist/assets/lato-v14-latin-700-8335d9b8.svg +438 -0
- rasa/core/channels/inspector/dist/assets/lato-v14-latin-700-9cc39c75.ttf +0 -0
- rasa/core/channels/inspector/dist/assets/lato-v14-latin-700-ead13ccf.woff2 +0 -0
- rasa/core/channels/inspector/dist/assets/lato-v14-latin-regular-16705655.woff2 +0 -0
- rasa/core/channels/inspector/dist/assets/lato-v14-latin-regular-5aeb07f9.woff +0 -0
- rasa/core/channels/inspector/dist/assets/lato-v14-latin-regular-9c459044.ttf +0 -0
- rasa/core/channels/inspector/dist/assets/lato-v14-latin-regular-9e2898a4.svg +435 -0
- rasa/core/channels/inspector/dist/assets/layout-78cff630.js +1 -0
- rasa/core/channels/inspector/dist/assets/line-5038b469.js +1 -0
- rasa/core/channels/inspector/dist/assets/linear-c4fc4098.js +1 -0
- rasa/core/channels/inspector/dist/assets/mindmap-definition-beec6740-c33c8ea6.js +109 -0
- rasa/core/channels/inspector/dist/assets/ordinal-ba9b4969.js +1 -0
- rasa/core/channels/inspector/dist/assets/path-53f90ab3.js +1 -0
- rasa/core/channels/inspector/dist/assets/pieDiagram-dbbf0591-a8d03059.js +35 -0
- rasa/core/channels/inspector/dist/assets/quadrantDiagram-4d7f4fd6-6a0e56b2.js +7 -0
- rasa/core/channels/inspector/dist/assets/requirementDiagram-6fc4c22a-2dc7c7bd.js +52 -0
- rasa/core/channels/inspector/dist/assets/sankeyDiagram-8f13d901-2360fe39.js +8 -0
- rasa/core/channels/inspector/dist/assets/sequenceDiagram-b655622a-41b9f9ad.js +122 -0
- rasa/core/channels/inspector/dist/assets/stateDiagram-59f0c015-0aad326f.js +1 -0
- rasa/core/channels/inspector/dist/assets/stateDiagram-v2-2b26beab-9847d984.js +1 -0
- rasa/core/channels/inspector/dist/assets/styles-080da4f6-564d890e.js +110 -0
- rasa/core/channels/inspector/dist/assets/styles-3dcbcfbf-38957613.js +159 -0
- rasa/core/channels/inspector/dist/assets/styles-9c745c82-f0fc6921.js +207 -0
- rasa/core/channels/inspector/dist/assets/svgDrawCommon-4835440b-ef3c5a77.js +1 -0
- rasa/core/channels/inspector/dist/assets/timeline-definition-5b62e21b-bf3e91c1.js +61 -0
- rasa/core/channels/inspector/dist/assets/xychartDiagram-2b33534f-4d4026c0.js +7 -0
- rasa/core/channels/inspector/dist/index.html +41 -0
- rasa/core/channels/inspector/index.html +39 -0
- rasa/core/channels/inspector/jest.config.ts +13 -0
- rasa/core/channels/inspector/package.json +48 -0
- rasa/core/channels/inspector/setupTests.ts +2 -0
- rasa/core/channels/inspector/src/App.tsx +170 -0
- rasa/core/channels/inspector/src/components/DiagramFlow.tsx +107 -0
- rasa/core/channels/inspector/src/components/DialogueInformation.tsx +187 -0
- rasa/core/channels/inspector/src/components/DialogueStack.tsx +151 -0
- rasa/core/channels/inspector/src/components/ExpandIcon.tsx +16 -0
- rasa/core/channels/inspector/src/components/FullscreenButton.tsx +45 -0
- rasa/core/channels/inspector/src/components/LoadingSpinner.tsx +19 -0
- rasa/core/channels/inspector/src/components/NoActiveFlow.tsx +21 -0
- rasa/core/channels/inspector/src/components/RasaLogo.tsx +32 -0
- rasa/core/channels/inspector/src/components/SaraDiagrams.tsx +39 -0
- rasa/core/channels/inspector/src/components/Slots.tsx +91 -0
- rasa/core/channels/inspector/src/components/Welcome.tsx +54 -0
- rasa/core/channels/inspector/src/helpers/formatters.test.ts +382 -0
- rasa/core/channels/inspector/src/helpers/formatters.ts +240 -0
- rasa/core/channels/inspector/src/helpers/utils.ts +42 -0
- rasa/core/channels/inspector/src/main.tsx +13 -0
- rasa/core/channels/inspector/src/theme/Button/Button.ts +29 -0
- rasa/core/channels/inspector/src/theme/Heading/Heading.ts +31 -0
- rasa/core/channels/inspector/src/theme/Input/Input.ts +27 -0
- rasa/core/channels/inspector/src/theme/Link/Link.ts +10 -0
- rasa/core/channels/inspector/src/theme/Modal/Modal.ts +47 -0
- rasa/core/channels/inspector/src/theme/Table/Table.tsx +38 -0
- rasa/core/channels/inspector/src/theme/Tooltip/Tooltip.ts +12 -0
- rasa/core/channels/inspector/src/theme/base/breakpoints.ts +8 -0
- rasa/core/channels/inspector/src/theme/base/colors.ts +88 -0
- rasa/core/channels/inspector/src/theme/base/fonts/fontFaces.css +29 -0
- rasa/core/channels/inspector/src/theme/base/fonts/ibm-plex-mono-v4-latin/ibm-plex-mono-v4-latin-regular.eot +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/ibm-plex-mono-v4-latin/ibm-plex-mono-v4-latin-regular.svg +329 -0
- rasa/core/channels/inspector/src/theme/base/fonts/ibm-plex-mono-v4-latin/ibm-plex-mono-v4-latin-regular.ttf +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/ibm-plex-mono-v4-latin/ibm-plex-mono-v4-latin-regular.woff +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/ibm-plex-mono-v4-latin/ibm-plex-mono-v4-latin-regular.woff2 +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-700.eot +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-700.svg +438 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-700.ttf +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-700.woff +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-700.woff2 +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-regular.eot +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-regular.svg +435 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-regular.ttf +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-regular.woff +0 -0
- rasa/core/channels/inspector/src/theme/base/fonts/lato-v14-latin/lato-v14-latin-regular.woff2 +0 -0
- rasa/core/channels/inspector/src/theme/base/radii.ts +9 -0
- rasa/core/channels/inspector/src/theme/base/shadows.ts +7 -0
- rasa/core/channels/inspector/src/theme/base/sizes.ts +7 -0
- rasa/core/channels/inspector/src/theme/base/space.ts +15 -0
- rasa/core/channels/inspector/src/theme/base/styles.ts +13 -0
- rasa/core/channels/inspector/src/theme/base/typography.ts +24 -0
- rasa/core/channels/inspector/src/theme/base/zIndices.ts +19 -0
- rasa/core/channels/inspector/src/theme/index.ts +101 -0
- rasa/core/channels/inspector/src/types.ts +64 -0
- rasa/core/channels/inspector/src/vite-env.d.ts +1 -0
- rasa/core/channels/inspector/tests/__mocks__/fileMock.ts +1 -0
- rasa/core/channels/inspector/tests/__mocks__/matchMedia.ts +16 -0
- rasa/core/channels/inspector/tests/__mocks__/styleMock.ts +1 -0
- rasa/core/channels/inspector/tests/renderWithProviders.tsx +14 -0
- rasa/core/channels/inspector/tsconfig.json +26 -0
- rasa/core/channels/inspector/tsconfig.node.json +10 -0
- rasa/core/channels/inspector/vite.config.ts +8 -0
- rasa/core/channels/inspector/yarn.lock +6156 -0
- rasa/core/channels/mattermost.py +229 -0
- rasa/core/channels/rasa_chat.py +126 -0
- rasa/core/channels/rest.py +225 -0
- rasa/core/channels/rocketchat.py +174 -0
- rasa/core/channels/slack.py +620 -0
- rasa/core/channels/socketio.py +274 -0
- rasa/core/channels/telegram.py +298 -0
- rasa/core/channels/twilio.py +169 -0
- rasa/core/channels/twilio_voice.py +367 -0
- rasa/core/channels/vier_cvg.py +374 -0
- rasa/core/channels/webexteams.py +134 -0
- rasa/core/concurrent_lock_store.py +210 -0
- rasa/core/constants.py +107 -0
- rasa/core/evaluation/__init__.py +0 -0
- rasa/core/evaluation/marker.py +267 -0
- rasa/core/evaluation/marker_base.py +923 -0
- rasa/core/evaluation/marker_stats.py +293 -0
- rasa/core/evaluation/marker_tracker_loader.py +103 -0
- rasa/core/exceptions.py +29 -0
- rasa/core/exporter.py +284 -0
- rasa/core/featurizers/__init__.py +0 -0
- rasa/core/featurizers/precomputation.py +410 -0
- rasa/core/featurizers/single_state_featurizer.py +421 -0
- rasa/core/featurizers/tracker_featurizers.py +1262 -0
- rasa/core/http_interpreter.py +89 -0
- rasa/core/information_retrieval/__init__.py +7 -0
- rasa/core/information_retrieval/faiss.py +121 -0
- rasa/core/information_retrieval/information_retrieval.py +129 -0
- rasa/core/information_retrieval/milvus.py +52 -0
- rasa/core/information_retrieval/qdrant.py +95 -0
- rasa/core/jobs.py +63 -0
- rasa/core/lock.py +139 -0
- rasa/core/lock_store.py +343 -0
- rasa/core/migrate.py +403 -0
- rasa/core/nlg/__init__.py +3 -0
- rasa/core/nlg/callback.py +146 -0
- rasa/core/nlg/contextual_response_rephraser.py +270 -0
- rasa/core/nlg/generator.py +230 -0
- rasa/core/nlg/interpolator.py +143 -0
- rasa/core/nlg/response.py +155 -0
- rasa/core/nlg/summarize.py +69 -0
- rasa/core/policies/__init__.py +0 -0
- rasa/core/policies/ensemble.py +329 -0
- rasa/core/policies/enterprise_search_policy.py +781 -0
- rasa/core/policies/enterprise_search_prompt_template.jinja2 +25 -0
- rasa/core/policies/enterprise_search_prompt_with_citation_template.jinja2 +60 -0
- rasa/core/policies/flow_policy.py +205 -0
- rasa/core/policies/flows/__init__.py +0 -0
- rasa/core/policies/flows/flow_exceptions.py +44 -0
- rasa/core/policies/flows/flow_executor.py +705 -0
- rasa/core/policies/flows/flow_step_result.py +43 -0
- rasa/core/policies/intentless_policy.py +922 -0
- rasa/core/policies/intentless_prompt_template.jinja2 +22 -0
- rasa/core/policies/memoization.py +538 -0
- rasa/core/policies/policy.py +725 -0
- rasa/core/policies/rule_policy.py +1273 -0
- rasa/core/policies/ted_policy.py +2169 -0
- rasa/core/policies/unexpected_intent_policy.py +1022 -0
- rasa/core/processor.py +1422 -0
- rasa/core/run.py +331 -0
- rasa/core/secrets_manager/__init__.py +0 -0
- rasa/core/secrets_manager/constants.py +32 -0
- rasa/core/secrets_manager/endpoints.py +391 -0
- rasa/core/secrets_manager/factory.py +233 -0
- rasa/core/secrets_manager/secret_manager.py +262 -0
- rasa/core/secrets_manager/vault.py +574 -0
- rasa/core/test.py +1335 -0
- rasa/core/tracker_store.py +1699 -0
- rasa/core/train.py +105 -0
- rasa/core/training/__init__.py +89 -0
- rasa/core/training/converters/__init__.py +0 -0
- rasa/core/training/converters/responses_prefix_converter.py +119 -0
- rasa/core/training/interactive.py +1745 -0
- rasa/core/training/story_conflict.py +381 -0
- rasa/core/training/training.py +93 -0
- rasa/core/utils.py +339 -0
- rasa/core/visualize.py +70 -0
- rasa/dialogue_understanding/__init__.py +0 -0
- rasa/dialogue_understanding/coexistence/__init__.py +0 -0
- rasa/dialogue_understanding/coexistence/constants.py +4 -0
- rasa/dialogue_understanding/coexistence/intent_based_router.py +196 -0
- rasa/dialogue_understanding/coexistence/llm_based_router.py +260 -0
- rasa/dialogue_understanding/coexistence/router_template.jinja2 +12 -0
- rasa/dialogue_understanding/commands/__init__.py +49 -0
- rasa/dialogue_understanding/commands/can_not_handle_command.py +70 -0
- rasa/dialogue_understanding/commands/cancel_flow_command.py +125 -0
- rasa/dialogue_understanding/commands/change_flow_command.py +44 -0
- rasa/dialogue_understanding/commands/chit_chat_answer_command.py +57 -0
- rasa/dialogue_understanding/commands/clarify_command.py +86 -0
- rasa/dialogue_understanding/commands/command.py +85 -0
- rasa/dialogue_understanding/commands/correct_slots_command.py +297 -0
- rasa/dialogue_understanding/commands/error_command.py +79 -0
- rasa/dialogue_understanding/commands/free_form_answer_command.py +9 -0
- rasa/dialogue_understanding/commands/handle_code_change_command.py +73 -0
- rasa/dialogue_understanding/commands/human_handoff_command.py +66 -0
- rasa/dialogue_understanding/commands/knowledge_answer_command.py +57 -0
- rasa/dialogue_understanding/commands/noop_command.py +54 -0
- rasa/dialogue_understanding/commands/set_slot_command.py +160 -0
- rasa/dialogue_understanding/commands/skip_question_command.py +75 -0
- rasa/dialogue_understanding/commands/start_flow_command.py +107 -0
- rasa/dialogue_understanding/generator/__init__.py +21 -0
- rasa/dialogue_understanding/generator/command_generator.py +343 -0
- rasa/dialogue_understanding/generator/constants.py +18 -0
- rasa/dialogue_understanding/generator/flow_document_template.jinja2 +4 -0
- rasa/dialogue_understanding/generator/flow_retrieval.py +412 -0
- rasa/dialogue_understanding/generator/llm_based_command_generator.py +467 -0
- rasa/dialogue_understanding/generator/llm_command_generator.py +67 -0
- rasa/dialogue_understanding/generator/multi_step/__init__.py +0 -0
- rasa/dialogue_understanding/generator/multi_step/fill_slots_prompt.jinja2 +62 -0
- rasa/dialogue_understanding/generator/multi_step/handle_flows_prompt.jinja2 +38 -0
- rasa/dialogue_understanding/generator/multi_step/multi_step_llm_command_generator.py +827 -0
- rasa/dialogue_understanding/generator/nlu_command_adapter.py +218 -0
- rasa/dialogue_understanding/generator/single_step/__init__.py +0 -0
- rasa/dialogue_understanding/generator/single_step/command_prompt_template.jinja2 +57 -0
- rasa/dialogue_understanding/generator/single_step/single_step_llm_command_generator.py +345 -0
- rasa/dialogue_understanding/patterns/__init__.py +0 -0
- rasa/dialogue_understanding/patterns/cancel.py +111 -0
- rasa/dialogue_understanding/patterns/cannot_handle.py +43 -0
- rasa/dialogue_understanding/patterns/chitchat.py +37 -0
- rasa/dialogue_understanding/patterns/clarify.py +97 -0
- rasa/dialogue_understanding/patterns/code_change.py +41 -0
- rasa/dialogue_understanding/patterns/collect_information.py +90 -0
- rasa/dialogue_understanding/patterns/completed.py +40 -0
- rasa/dialogue_understanding/patterns/continue_interrupted.py +42 -0
- rasa/dialogue_understanding/patterns/correction.py +278 -0
- rasa/dialogue_understanding/patterns/default_flows_for_patterns.yml +248 -0
- rasa/dialogue_understanding/patterns/human_handoff.py +37 -0
- rasa/dialogue_understanding/patterns/internal_error.py +47 -0
- rasa/dialogue_understanding/patterns/search.py +37 -0
- rasa/dialogue_understanding/patterns/skip_question.py +38 -0
- rasa/dialogue_understanding/processor/__init__.py +0 -0
- rasa/dialogue_understanding/processor/command_processor.py +687 -0
- rasa/dialogue_understanding/processor/command_processor_component.py +39 -0
- rasa/dialogue_understanding/stack/__init__.py +0 -0
- rasa/dialogue_understanding/stack/dialogue_stack.py +178 -0
- rasa/dialogue_understanding/stack/frames/__init__.py +19 -0
- rasa/dialogue_understanding/stack/frames/chit_chat_frame.py +27 -0
- rasa/dialogue_understanding/stack/frames/dialogue_stack_frame.py +137 -0
- rasa/dialogue_understanding/stack/frames/flow_stack_frame.py +157 -0
- rasa/dialogue_understanding/stack/frames/pattern_frame.py +10 -0
- rasa/dialogue_understanding/stack/frames/search_frame.py +27 -0
- rasa/dialogue_understanding/stack/utils.py +211 -0
- rasa/e2e_test/__init__.py +0 -0
- rasa/e2e_test/constants.py +11 -0
- rasa/e2e_test/e2e_test_case.py +366 -0
- rasa/e2e_test/e2e_test_result.py +34 -0
- rasa/e2e_test/e2e_test_runner.py +768 -0
- rasa/e2e_test/e2e_test_schema.yml +85 -0
- rasa/engine/__init__.py +0 -0
- rasa/engine/caching.py +463 -0
- rasa/engine/constants.py +17 -0
- rasa/engine/exceptions.py +14 -0
- rasa/engine/graph.py +637 -0
- rasa/engine/loader.py +36 -0
- rasa/engine/recipes/__init__.py +0 -0
- rasa/engine/recipes/config_files/default_config.yml +44 -0
- rasa/engine/recipes/default_components.py +99 -0
- rasa/engine/recipes/default_recipe.py +1251 -0
- rasa/engine/recipes/graph_recipe.py +79 -0
- rasa/engine/recipes/recipe.py +93 -0
- rasa/engine/runner/__init__.py +0 -0
- rasa/engine/runner/dask.py +250 -0
- rasa/engine/runner/interface.py +49 -0
- rasa/engine/storage/__init__.py +0 -0
- rasa/engine/storage/local_model_storage.py +246 -0
- rasa/engine/storage/resource.py +110 -0
- rasa/engine/storage/storage.py +203 -0
- rasa/engine/training/__init__.py +0 -0
- rasa/engine/training/components.py +176 -0
- rasa/engine/training/fingerprinting.py +64 -0
- rasa/engine/training/graph_trainer.py +256 -0
- rasa/engine/training/hooks.py +164 -0
- rasa/engine/validation.py +873 -0
- rasa/env.py +5 -0
- rasa/exceptions.py +69 -0
- rasa/graph_components/__init__.py +0 -0
- rasa/graph_components/converters/__init__.py +0 -0
- rasa/graph_components/converters/nlu_message_converter.py +48 -0
- rasa/graph_components/providers/__init__.py +0 -0
- rasa/graph_components/providers/domain_for_core_training_provider.py +87 -0
- rasa/graph_components/providers/domain_provider.py +71 -0
- rasa/graph_components/providers/flows_provider.py +74 -0
- rasa/graph_components/providers/forms_provider.py +44 -0
- rasa/graph_components/providers/nlu_training_data_provider.py +56 -0
- rasa/graph_components/providers/responses_provider.py +44 -0
- rasa/graph_components/providers/rule_only_provider.py +49 -0
- rasa/graph_components/providers/story_graph_provider.py +43 -0
- rasa/graph_components/providers/training_tracker_provider.py +55 -0
- rasa/graph_components/validators/__init__.py +0 -0
- rasa/graph_components/validators/default_recipe_validator.py +550 -0
- rasa/graph_components/validators/finetuning_validator.py +302 -0
- rasa/hooks.py +112 -0
- rasa/jupyter.py +63 -0
- rasa/markers/__init__.py +0 -0
- rasa/markers/marker.py +269 -0
- rasa/markers/marker_base.py +828 -0
- rasa/markers/upload.py +74 -0
- rasa/markers/validate.py +21 -0
- rasa/model.py +118 -0
- rasa/model_testing.py +457 -0
- rasa/model_training.py +536 -0
- rasa/nlu/__init__.py +7 -0
- rasa/nlu/classifiers/__init__.py +3 -0
- rasa/nlu/classifiers/classifier.py +5 -0
- rasa/nlu/classifiers/diet_classifier.py +1881 -0
- rasa/nlu/classifiers/fallback_classifier.py +192 -0
- rasa/nlu/classifiers/keyword_intent_classifier.py +188 -0
- rasa/nlu/classifiers/llm_intent_classifier.py +519 -0
- rasa/nlu/classifiers/logistic_regression_classifier.py +253 -0
- rasa/nlu/classifiers/mitie_intent_classifier.py +156 -0
- rasa/nlu/classifiers/regex_message_handler.py +56 -0
- rasa/nlu/classifiers/sklearn_intent_classifier.py +330 -0
- rasa/nlu/constants.py +77 -0
- rasa/nlu/convert.py +40 -0
- rasa/nlu/emulators/__init__.py +0 -0
- rasa/nlu/emulators/dialogflow.py +55 -0
- rasa/nlu/emulators/emulator.py +49 -0
- rasa/nlu/emulators/luis.py +86 -0
- rasa/nlu/emulators/no_emulator.py +10 -0
- rasa/nlu/emulators/wit.py +56 -0
- rasa/nlu/extractors/__init__.py +0 -0
- rasa/nlu/extractors/crf_entity_extractor.py +715 -0
- rasa/nlu/extractors/duckling_entity_extractor.py +206 -0
- rasa/nlu/extractors/entity_synonyms.py +178 -0
- rasa/nlu/extractors/extractor.py +470 -0
- rasa/nlu/extractors/mitie_entity_extractor.py +293 -0
- rasa/nlu/extractors/regex_entity_extractor.py +220 -0
- rasa/nlu/extractors/spacy_entity_extractor.py +95 -0
- rasa/nlu/featurizers/__init__.py +0 -0
- rasa/nlu/featurizers/dense_featurizer/__init__.py +0 -0
- rasa/nlu/featurizers/dense_featurizer/convert_featurizer.py +445 -0
- rasa/nlu/featurizers/dense_featurizer/dense_featurizer.py +57 -0
- rasa/nlu/featurizers/dense_featurizer/lm_featurizer.py +768 -0
- rasa/nlu/featurizers/dense_featurizer/mitie_featurizer.py +170 -0
- rasa/nlu/featurizers/dense_featurizer/spacy_featurizer.py +132 -0
- rasa/nlu/featurizers/featurizer.py +89 -0
- rasa/nlu/featurizers/sparse_featurizer/__init__.py +0 -0
- rasa/nlu/featurizers/sparse_featurizer/count_vectors_featurizer.py +867 -0
- rasa/nlu/featurizers/sparse_featurizer/lexical_syntactic_featurizer.py +571 -0
- rasa/nlu/featurizers/sparse_featurizer/regex_featurizer.py +271 -0
- rasa/nlu/featurizers/sparse_featurizer/sparse_featurizer.py +9 -0
- rasa/nlu/model.py +24 -0
- rasa/nlu/persistor.py +282 -0
- rasa/nlu/run.py +27 -0
- rasa/nlu/selectors/__init__.py +0 -0
- rasa/nlu/selectors/response_selector.py +987 -0
- rasa/nlu/test.py +1940 -0
- rasa/nlu/tokenizers/__init__.py +0 -0
- rasa/nlu/tokenizers/jieba_tokenizer.py +148 -0
- rasa/nlu/tokenizers/mitie_tokenizer.py +75 -0
- rasa/nlu/tokenizers/spacy_tokenizer.py +72 -0
- rasa/nlu/tokenizers/tokenizer.py +239 -0
- rasa/nlu/tokenizers/whitespace_tokenizer.py +106 -0
- rasa/nlu/utils/__init__.py +35 -0
- rasa/nlu/utils/bilou_utils.py +462 -0
- rasa/nlu/utils/hugging_face/__init__.py +0 -0
- rasa/nlu/utils/hugging_face/registry.py +108 -0
- rasa/nlu/utils/hugging_face/transformers_pre_post_processors.py +311 -0
- rasa/nlu/utils/mitie_utils.py +113 -0
- rasa/nlu/utils/pattern_utils.py +168 -0
- rasa/nlu/utils/spacy_utils.py +310 -0
- rasa/plugin.py +90 -0
- rasa/server.py +1551 -0
- rasa/shared/__init__.py +0 -0
- rasa/shared/constants.py +192 -0
- rasa/shared/core/__init__.py +0 -0
- rasa/shared/core/command_payload_reader.py +109 -0
- rasa/shared/core/constants.py +167 -0
- rasa/shared/core/conversation.py +46 -0
- rasa/shared/core/domain.py +2107 -0
- rasa/shared/core/events.py +2504 -0
- rasa/shared/core/flows/__init__.py +7 -0
- rasa/shared/core/flows/flow.py +362 -0
- rasa/shared/core/flows/flow_step.py +146 -0
- rasa/shared/core/flows/flow_step_links.py +319 -0
- rasa/shared/core/flows/flow_step_sequence.py +70 -0
- rasa/shared/core/flows/flows_list.py +223 -0
- rasa/shared/core/flows/flows_yaml_schema.json +217 -0
- rasa/shared/core/flows/nlu_trigger.py +117 -0
- rasa/shared/core/flows/steps/__init__.py +24 -0
- rasa/shared/core/flows/steps/action.py +56 -0
- rasa/shared/core/flows/steps/call.py +64 -0
- rasa/shared/core/flows/steps/collect.py +112 -0
- rasa/shared/core/flows/steps/constants.py +5 -0
- rasa/shared/core/flows/steps/continuation.py +36 -0
- rasa/shared/core/flows/steps/end.py +22 -0
- rasa/shared/core/flows/steps/internal.py +44 -0
- rasa/shared/core/flows/steps/link.py +51 -0
- rasa/shared/core/flows/steps/no_operation.py +48 -0
- rasa/shared/core/flows/steps/set_slots.py +50 -0
- rasa/shared/core/flows/steps/start.py +30 -0
- rasa/shared/core/flows/validation.py +527 -0
- rasa/shared/core/flows/yaml_flows_io.py +278 -0
- rasa/shared/core/generator.py +908 -0
- rasa/shared/core/slot_mappings.py +526 -0
- rasa/shared/core/slots.py +649 -0
- rasa/shared/core/trackers.py +1177 -0
- rasa/shared/core/training_data/__init__.py +0 -0
- rasa/shared/core/training_data/loading.py +89 -0
- rasa/shared/core/training_data/story_reader/__init__.py +0 -0
- rasa/shared/core/training_data/story_reader/story_reader.py +129 -0
- rasa/shared/core/training_data/story_reader/story_step_builder.py +168 -0
- rasa/shared/core/training_data/story_reader/yaml_story_reader.py +888 -0
- rasa/shared/core/training_data/story_writer/__init__.py +0 -0
- rasa/shared/core/training_data/story_writer/story_writer.py +76 -0
- rasa/shared/core/training_data/story_writer/yaml_story_writer.py +444 -0
- rasa/shared/core/training_data/structures.py +838 -0
- rasa/shared/core/training_data/visualization.html +146 -0
- rasa/shared/core/training_data/visualization.py +603 -0
- rasa/shared/data.py +249 -0
- rasa/shared/engine/__init__.py +0 -0
- rasa/shared/engine/caching.py +26 -0
- rasa/shared/exceptions.py +163 -0
- rasa/shared/importers/__init__.py +0 -0
- rasa/shared/importers/importer.py +704 -0
- rasa/shared/importers/multi_project.py +203 -0
- rasa/shared/importers/rasa.py +99 -0
- rasa/shared/importers/utils.py +34 -0
- rasa/shared/nlu/__init__.py +0 -0
- rasa/shared/nlu/constants.py +47 -0
- rasa/shared/nlu/interpreter.py +10 -0
- rasa/shared/nlu/training_data/__init__.py +0 -0
- rasa/shared/nlu/training_data/entities_parser.py +208 -0
- rasa/shared/nlu/training_data/features.py +492 -0
- rasa/shared/nlu/training_data/formats/__init__.py +10 -0
- rasa/shared/nlu/training_data/formats/dialogflow.py +163 -0
- rasa/shared/nlu/training_data/formats/luis.py +87 -0
- rasa/shared/nlu/training_data/formats/rasa.py +135 -0
- rasa/shared/nlu/training_data/formats/rasa_yaml.py +603 -0
- rasa/shared/nlu/training_data/formats/readerwriter.py +244 -0
- rasa/shared/nlu/training_data/formats/wit.py +52 -0
- rasa/shared/nlu/training_data/loading.py +137 -0
- rasa/shared/nlu/training_data/lookup_tables_parser.py +30 -0
- rasa/shared/nlu/training_data/message.py +490 -0
- rasa/shared/nlu/training_data/schemas/__init__.py +0 -0
- rasa/shared/nlu/training_data/schemas/data_schema.py +85 -0
- rasa/shared/nlu/training_data/schemas/nlu.yml +53 -0
- rasa/shared/nlu/training_data/schemas/responses.yml +70 -0
- rasa/shared/nlu/training_data/synonyms_parser.py +42 -0
- rasa/shared/nlu/training_data/training_data.py +730 -0
- rasa/shared/nlu/training_data/util.py +223 -0
- rasa/shared/providers/__init__.py +0 -0
- rasa/shared/providers/openai/__init__.py +0 -0
- rasa/shared/providers/openai/clients.py +43 -0
- rasa/shared/providers/openai/session_handler.py +110 -0
- rasa/shared/utils/__init__.py +0 -0
- rasa/shared/utils/cli.py +72 -0
- rasa/shared/utils/common.py +308 -0
- rasa/shared/utils/constants.py +4 -0
- rasa/shared/utils/io.py +415 -0
- rasa/shared/utils/llm.py +404 -0
- rasa/shared/utils/pykwalify_extensions.py +27 -0
- rasa/shared/utils/schemas/__init__.py +0 -0
- rasa/shared/utils/schemas/config.yml +2 -0
- rasa/shared/utils/schemas/domain.yml +145 -0
- rasa/shared/utils/schemas/events.py +212 -0
- rasa/shared/utils/schemas/model_config.yml +46 -0
- rasa/shared/utils/schemas/stories.yml +173 -0
- rasa/shared/utils/yaml.py +786 -0
- rasa/studio/__init__.py +0 -0
- rasa/studio/auth.py +268 -0
- rasa/studio/config.py +127 -0
- rasa/studio/constants.py +18 -0
- rasa/studio/data_handler.py +359 -0
- rasa/studio/download.py +483 -0
- rasa/studio/results_logger.py +137 -0
- rasa/studio/train.py +135 -0
- rasa/studio/upload.py +433 -0
- rasa/telemetry.py +1737 -0
- rasa/tracing/__init__.py +0 -0
- rasa/tracing/config.py +353 -0
- rasa/tracing/constants.py +62 -0
- rasa/tracing/instrumentation/__init__.py +0 -0
- rasa/tracing/instrumentation/attribute_extractors.py +672 -0
- rasa/tracing/instrumentation/instrumentation.py +1185 -0
- rasa/tracing/instrumentation/intentless_policy_instrumentation.py +144 -0
- rasa/tracing/instrumentation/metrics.py +294 -0
- rasa/tracing/metric_instrument_provider.py +205 -0
- rasa/utils/__init__.py +0 -0
- rasa/utils/beta.py +83 -0
- rasa/utils/cli.py +28 -0
- rasa/utils/common.py +635 -0
- rasa/utils/converter.py +53 -0
- rasa/utils/endpoints.py +302 -0
- rasa/utils/io.py +260 -0
- rasa/utils/licensing.py +534 -0
- rasa/utils/log_utils.py +174 -0
- rasa/utils/mapper.py +210 -0
- rasa/utils/ml_utils.py +145 -0
- rasa/utils/plotting.py +362 -0
- rasa/utils/singleton.py +23 -0
- rasa/utils/tensorflow/__init__.py +0 -0
- rasa/utils/tensorflow/callback.py +112 -0
- rasa/utils/tensorflow/constants.py +116 -0
- rasa/utils/tensorflow/crf.py +492 -0
- rasa/utils/tensorflow/data_generator.py +440 -0
- rasa/utils/tensorflow/environment.py +161 -0
- rasa/utils/tensorflow/exceptions.py +5 -0
- rasa/utils/tensorflow/feature_array.py +366 -0
- rasa/utils/tensorflow/layers.py +1565 -0
- rasa/utils/tensorflow/layers_utils.py +113 -0
- rasa/utils/tensorflow/metrics.py +281 -0
- rasa/utils/tensorflow/model_data.py +798 -0
- rasa/utils/tensorflow/model_data_utils.py +499 -0
- rasa/utils/tensorflow/models.py +935 -0
- rasa/utils/tensorflow/rasa_layers.py +1094 -0
- rasa/utils/tensorflow/transformer.py +640 -0
- rasa/utils/tensorflow/types.py +6 -0
- rasa/utils/train_utils.py +572 -0
- rasa/utils/url_tools.py +53 -0
- rasa/utils/yaml.py +54 -0
- rasa/validator.py +1337 -0
- rasa/version.py +3 -0
- rasa_pro-3.9.18.dist-info/METADATA +563 -0
- rasa_pro-3.9.18.dist-info/NOTICE +5 -0
- rasa_pro-3.9.18.dist-info/RECORD +662 -0
- rasa_pro-3.9.18.dist-info/WHEEL +4 -0
- rasa_pro-3.9.18.dist-info/entry_points.txt +3 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import argparse
|
|
2
|
+
import uuid
|
|
3
|
+
|
|
4
|
+
import rasa.cli.arguments.default_arguments
|
|
5
|
+
import rasa.cli.arguments.train
|
|
6
|
+
import rasa.cli.arguments.run
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
def set_interactive_arguments(parser: argparse.ArgumentParser) -> None:
|
|
10
|
+
"""Specifies arguments for `rasa interactive`."""
|
|
11
|
+
parser.add_argument(
|
|
12
|
+
"--e2e",
|
|
13
|
+
action="store_true",
|
|
14
|
+
help="Save story files in e2e format. In this format user messages "
|
|
15
|
+
"will be included in the stories.",
|
|
16
|
+
)
|
|
17
|
+
rasa.cli.arguments.run.add_port_argument(parser)
|
|
18
|
+
|
|
19
|
+
rasa.cli.arguments.default_arguments.add_model_param(parser, default=None)
|
|
20
|
+
rasa.cli.arguments.train.add_data_param(parser)
|
|
21
|
+
|
|
22
|
+
_add_common_params(parser)
|
|
23
|
+
train_arguments = _add_training_arguments(parser)
|
|
24
|
+
|
|
25
|
+
rasa.cli.arguments.train.add_force_param(train_arguments)
|
|
26
|
+
rasa.cli.arguments.train.add_persist_nlu_data_param(train_arguments)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def set_interactive_core_arguments(parser: argparse.ArgumentParser) -> None:
|
|
30
|
+
"""Specifies arguments for `rasa interactive core`."""
|
|
31
|
+
rasa.cli.arguments.default_arguments.add_model_param(
|
|
32
|
+
parser, model_name="Rasa Core", default=None
|
|
33
|
+
)
|
|
34
|
+
rasa.cli.arguments.default_arguments.add_stories_param(parser)
|
|
35
|
+
|
|
36
|
+
_add_common_params(parser)
|
|
37
|
+
_add_training_arguments(parser)
|
|
38
|
+
rasa.cli.arguments.run.add_port_argument(parser)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def _add_common_params(parser: argparse.ArgumentParser) -> None:
|
|
42
|
+
parser.add_argument(
|
|
43
|
+
"--skip-visualization",
|
|
44
|
+
default=False,
|
|
45
|
+
action="store_true",
|
|
46
|
+
help="Disable plotting the visualization during interactive learning.",
|
|
47
|
+
)
|
|
48
|
+
|
|
49
|
+
parser.add_argument(
|
|
50
|
+
"--conversation-id",
|
|
51
|
+
default=uuid.uuid4().hex,
|
|
52
|
+
help="Specify the id of the conversation the messages are in. Defaults to a "
|
|
53
|
+
"UUID that will be randomly generated.",
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
rasa.cli.arguments.default_arguments.add_endpoint_param(
|
|
57
|
+
parser,
|
|
58
|
+
help_text="Configuration file for the model server "
|
|
59
|
+
"and the connectors as a yml file.",
|
|
60
|
+
)
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
# noinspection PyProtectedMember
|
|
64
|
+
def _add_training_arguments(parser: argparse.ArgumentParser) -> argparse._ArgumentGroup:
|
|
65
|
+
train_arguments = parser.add_argument_group("Train Arguments")
|
|
66
|
+
rasa.cli.arguments.train.add_config_param(train_arguments)
|
|
67
|
+
rasa.cli.arguments.default_arguments.add_domain_param(train_arguments)
|
|
68
|
+
rasa.cli.arguments.train.add_out_param(
|
|
69
|
+
train_arguments, help_text="Directory where your models should be stored."
|
|
70
|
+
)
|
|
71
|
+
rasa.cli.arguments.train.add_augmentation_param(train_arguments)
|
|
72
|
+
rasa.cli.arguments.train.add_debug_plots_param(train_arguments)
|
|
73
|
+
rasa.cli.arguments.train.add_finetune_params(train_arguments)
|
|
74
|
+
return train_arguments
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
import os
|
|
2
|
+
|
|
3
|
+
import argparse
|
|
4
|
+
from typing import Union
|
|
5
|
+
|
|
6
|
+
from rasa.cli.arguments.default_arguments import add_model_param, add_endpoint_param
|
|
7
|
+
from rasa.core import constants
|
|
8
|
+
from rasa.env import (
|
|
9
|
+
DEFAULT_JWT_METHOD,
|
|
10
|
+
JWT_METHOD_ENV,
|
|
11
|
+
JWT_SECRET_ENV,
|
|
12
|
+
JWT_PRIVATE_KEY_ENV,
|
|
13
|
+
AUTH_TOKEN_ENV,
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def set_run_arguments(parser: argparse.ArgumentParser) -> None:
|
|
18
|
+
"""Arguments for running Rasa directly using `rasa run`."""
|
|
19
|
+
add_model_param(parser)
|
|
20
|
+
add_server_arguments(parser)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
def set_run_action_arguments(parser: argparse.ArgumentParser) -> None:
|
|
24
|
+
"""Set arguments for running Rasa SDK."""
|
|
25
|
+
import rasa_sdk.cli.arguments as sdk
|
|
26
|
+
|
|
27
|
+
sdk.add_endpoint_arguments(parser)
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
def add_interface_argument(
|
|
31
|
+
parser: Union[argparse.ArgumentParser, argparse._ArgumentGroup],
|
|
32
|
+
) -> None:
|
|
33
|
+
"""Binds the RASA process to a network interface."""
|
|
34
|
+
parser.add_argument(
|
|
35
|
+
"-i",
|
|
36
|
+
"--interface",
|
|
37
|
+
default=constants.DEFAULT_SERVER_INTERFACE,
|
|
38
|
+
type=str,
|
|
39
|
+
help="Network interface to run the server on.",
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
# noinspection PyProtectedMember
|
|
44
|
+
def add_port_argument(
|
|
45
|
+
parser: Union[argparse.ArgumentParser, argparse._ArgumentGroup],
|
|
46
|
+
) -> None:
|
|
47
|
+
"""Add an argument for port."""
|
|
48
|
+
parser.add_argument(
|
|
49
|
+
"-p",
|
|
50
|
+
"--port",
|
|
51
|
+
default=constants.DEFAULT_SERVER_PORT,
|
|
52
|
+
type=int,
|
|
53
|
+
help="Port to run the server at.",
|
|
54
|
+
)
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
def add_server_arguments(parser: argparse.ArgumentParser) -> None:
|
|
58
|
+
"""Add arguments for running API endpoint."""
|
|
59
|
+
parser.add_argument(
|
|
60
|
+
"--log-file",
|
|
61
|
+
type=str,
|
|
62
|
+
# Rasa should not log to a file by default, otherwise there will be problems
|
|
63
|
+
# when running on OpenShift
|
|
64
|
+
default=None,
|
|
65
|
+
help="Store logs in specified file.",
|
|
66
|
+
)
|
|
67
|
+
parser.add_argument(
|
|
68
|
+
"--use-syslog", action="store_true", help="Add syslog as a log handler"
|
|
69
|
+
)
|
|
70
|
+
parser.add_argument(
|
|
71
|
+
"--syslog-address",
|
|
72
|
+
type=str,
|
|
73
|
+
default=constants.DEFAULT_SYSLOG_HOST,
|
|
74
|
+
help="Address of the syslog server. --use-sylog flag is required",
|
|
75
|
+
)
|
|
76
|
+
parser.add_argument(
|
|
77
|
+
"--syslog-port",
|
|
78
|
+
type=int,
|
|
79
|
+
default=constants.DEFAULT_SYSLOG_PORT,
|
|
80
|
+
help="Port of the syslog server. --use-sylog flag is required",
|
|
81
|
+
)
|
|
82
|
+
parser.add_argument(
|
|
83
|
+
"--syslog-protocol",
|
|
84
|
+
type=str,
|
|
85
|
+
default=constants.DEFAULT_PROTOCOL,
|
|
86
|
+
help="Protocol used with the syslog server. Can be UDP (default) or TCP ",
|
|
87
|
+
)
|
|
88
|
+
add_endpoint_param(
|
|
89
|
+
parser,
|
|
90
|
+
help_text="Configuration file for the model server and the connectors as a "
|
|
91
|
+
"yml file.",
|
|
92
|
+
)
|
|
93
|
+
|
|
94
|
+
add_server_settings_arguments(parser)
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
def add_server_settings_arguments(parser: argparse.ArgumentParser) -> None:
|
|
98
|
+
"""Add arguments for the API server.
|
|
99
|
+
|
|
100
|
+
Args:
|
|
101
|
+
parser: Argument parser.
|
|
102
|
+
"""
|
|
103
|
+
server_arguments = parser.add_argument_group("Server Settings")
|
|
104
|
+
|
|
105
|
+
add_interface_argument(server_arguments)
|
|
106
|
+
add_port_argument(server_arguments)
|
|
107
|
+
|
|
108
|
+
server_arguments.add_argument(
|
|
109
|
+
"-t",
|
|
110
|
+
"--auth-token",
|
|
111
|
+
type=str,
|
|
112
|
+
default=os.getenv(AUTH_TOKEN_ENV),
|
|
113
|
+
help="Enable token based authentication. Requests need to provide "
|
|
114
|
+
"the token to be accepted.",
|
|
115
|
+
)
|
|
116
|
+
server_arguments.add_argument(
|
|
117
|
+
"--cors",
|
|
118
|
+
nargs="*",
|
|
119
|
+
type=str,
|
|
120
|
+
help="Enable CORS for the passed origin. Use * to whitelist all origins.",
|
|
121
|
+
)
|
|
122
|
+
server_arguments.add_argument(
|
|
123
|
+
"--enable-api",
|
|
124
|
+
action="store_true",
|
|
125
|
+
help="Start the web server API in addition to the input channel.",
|
|
126
|
+
)
|
|
127
|
+
server_arguments.add_argument(
|
|
128
|
+
"--response-timeout",
|
|
129
|
+
default=constants.DEFAULT_RESPONSE_TIMEOUT,
|
|
130
|
+
type=int,
|
|
131
|
+
help="Maximum time a response can take to process (sec).",
|
|
132
|
+
)
|
|
133
|
+
server_arguments.add_argument(
|
|
134
|
+
"--request-timeout",
|
|
135
|
+
default=constants.DEFAULT_REQUEST_TIMEOUT,
|
|
136
|
+
type=int,
|
|
137
|
+
help="Maximum time a request can take to process (sec).",
|
|
138
|
+
)
|
|
139
|
+
server_arguments.add_argument(
|
|
140
|
+
"--remote-storage",
|
|
141
|
+
help="Set the remote location where your Rasa model is stored, e.g. on AWS.",
|
|
142
|
+
)
|
|
143
|
+
server_arguments.add_argument(
|
|
144
|
+
"--ssl-certificate",
|
|
145
|
+
help="Set the SSL Certificate to create a TLS secured server.",
|
|
146
|
+
)
|
|
147
|
+
server_arguments.add_argument(
|
|
148
|
+
"--ssl-keyfile", help="Set the SSL Keyfile to create a TLS secured server."
|
|
149
|
+
)
|
|
150
|
+
server_arguments.add_argument(
|
|
151
|
+
"--ssl-ca-file",
|
|
152
|
+
help="If your SSL certificate needs to be verified, "
|
|
153
|
+
"you can specify the CA file "
|
|
154
|
+
"using this parameter.",
|
|
155
|
+
)
|
|
156
|
+
server_arguments.add_argument(
|
|
157
|
+
"--ssl-password",
|
|
158
|
+
help="If your ssl-keyfile is protected by a password, you can specify it "
|
|
159
|
+
"using this paramer.",
|
|
160
|
+
)
|
|
161
|
+
channel_arguments = parser.add_argument_group("Channels")
|
|
162
|
+
channel_arguments.add_argument(
|
|
163
|
+
"--credentials",
|
|
164
|
+
default=None,
|
|
165
|
+
help="Authentication credentials for the connector as a yml file.",
|
|
166
|
+
)
|
|
167
|
+
channel_arguments.add_argument(
|
|
168
|
+
"--connector", type=str, help="Service to connect to."
|
|
169
|
+
)
|
|
170
|
+
|
|
171
|
+
add_jwt_arguments(parser)
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
def add_jwt_arguments(parser: argparse.ArgumentParser) -> None:
|
|
175
|
+
"""Adds arguments related to JWT authentication.
|
|
176
|
+
|
|
177
|
+
Args:
|
|
178
|
+
parser: Argument parser.
|
|
179
|
+
"""
|
|
180
|
+
jwt_auth = parser.add_argument_group("JWT Authentication")
|
|
181
|
+
jwt_auth.add_argument(
|
|
182
|
+
"--jwt-secret",
|
|
183
|
+
type=str,
|
|
184
|
+
default=os.getenv(JWT_SECRET_ENV),
|
|
185
|
+
help="Public key for asymmetric JWT methods or shared secret"
|
|
186
|
+
"for symmetric methods. Please also make sure to use "
|
|
187
|
+
"--jwt-method to select the method of the signature, "
|
|
188
|
+
"otherwise this argument will be ignored."
|
|
189
|
+
"Note that this key is meant for securing the HTTP API.",
|
|
190
|
+
)
|
|
191
|
+
jwt_auth.add_argument(
|
|
192
|
+
"--jwt-method",
|
|
193
|
+
type=str,
|
|
194
|
+
default=os.getenv(JWT_METHOD_ENV, DEFAULT_JWT_METHOD),
|
|
195
|
+
help="Method used for the signature of the JWT authentication payload.",
|
|
196
|
+
)
|
|
197
|
+
jwt_auth.add_argument(
|
|
198
|
+
"--jwt-private-key",
|
|
199
|
+
type=str,
|
|
200
|
+
default=os.getenv(JWT_PRIVATE_KEY_ENV),
|
|
201
|
+
help="A private key used for generating web tokens, dependent upon "
|
|
202
|
+
"which hashing algorithm is used. It must be used together with "
|
|
203
|
+
"--jwt-secret for providing the public key.",
|
|
204
|
+
)
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import argparse
|
|
2
|
+
|
|
3
|
+
from rasa.cli.arguments.default_arguments import add_model_param
|
|
4
|
+
from rasa.cli.arguments.run import add_server_arguments
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
def set_shell_arguments(parser: argparse.ArgumentParser) -> None:
|
|
8
|
+
add_model_param(parser)
|
|
9
|
+
add_server_arguments(parser)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def set_shell_nlu_arguments(parser: argparse.ArgumentParser) -> None:
|
|
13
|
+
add_model_param(parser)
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import argparse
|
|
2
|
+
from typing import Union
|
|
3
|
+
|
|
4
|
+
from rasa.shared.constants import DEFAULT_MODELS_PATH, DEFAULT_RESULTS_PATH
|
|
5
|
+
|
|
6
|
+
from rasa.cli.arguments.default_arguments import (
|
|
7
|
+
add_stories_param,
|
|
8
|
+
add_model_param,
|
|
9
|
+
add_nlu_data_param,
|
|
10
|
+
add_endpoint_param,
|
|
11
|
+
add_out_param,
|
|
12
|
+
)
|
|
13
|
+
from rasa.model import get_latest_model
|
|
14
|
+
from rasa.shared.constants import DEFAULT_DOMAIN_PATH
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def set_test_arguments(parser: argparse.ArgumentParser) -> None:
|
|
18
|
+
"""Sets test arguments for a parser."""
|
|
19
|
+
add_model_param(parser, add_positional_arg=False)
|
|
20
|
+
|
|
21
|
+
core_arguments = parser.add_argument_group("Core Test Arguments")
|
|
22
|
+
add_test_core_argument_group(core_arguments)
|
|
23
|
+
|
|
24
|
+
nlu_arguments = parser.add_argument_group("NLU Test Arguments")
|
|
25
|
+
add_test_nlu_argument_group(nlu_arguments)
|
|
26
|
+
|
|
27
|
+
add_no_plot_param(parser)
|
|
28
|
+
add_errors_success_params(parser)
|
|
29
|
+
add_out_param(
|
|
30
|
+
parser,
|
|
31
|
+
default=DEFAULT_RESULTS_PATH,
|
|
32
|
+
help_text="Output path for any files created during the evaluation.",
|
|
33
|
+
)
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def set_test_core_arguments(parser: argparse.ArgumentParser) -> None:
|
|
37
|
+
add_test_core_model_param(parser)
|
|
38
|
+
add_test_core_argument_group(parser, include_e2e_argument=True)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def set_test_nlu_arguments(parser: argparse.ArgumentParser) -> None:
|
|
42
|
+
add_model_param(parser, add_positional_arg=False)
|
|
43
|
+
add_test_nlu_argument_group(parser)
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
def add_test_core_argument_group(
|
|
47
|
+
parser: Union[argparse.ArgumentParser, argparse._ActionsContainer],
|
|
48
|
+
include_e2e_argument: bool = False,
|
|
49
|
+
) -> None:
|
|
50
|
+
add_stories_param(parser, "test")
|
|
51
|
+
parser.add_argument(
|
|
52
|
+
"--max-stories", type=int, help="Maximum number of stories to test on."
|
|
53
|
+
)
|
|
54
|
+
add_out_param(
|
|
55
|
+
parser,
|
|
56
|
+
default=DEFAULT_RESULTS_PATH,
|
|
57
|
+
help_text="Output path for any files created during the evaluation.",
|
|
58
|
+
)
|
|
59
|
+
if include_e2e_argument:
|
|
60
|
+
parser.add_argument(
|
|
61
|
+
"--e2e",
|
|
62
|
+
"--end-to-end",
|
|
63
|
+
action="store_true",
|
|
64
|
+
help="Run an end-to-end evaluation for combined action and "
|
|
65
|
+
"intent prediction. Requires a story file in end-to-end "
|
|
66
|
+
"format.",
|
|
67
|
+
)
|
|
68
|
+
add_endpoint_param(
|
|
69
|
+
parser, help_text="Configuration file for the connectors as a yml file."
|
|
70
|
+
)
|
|
71
|
+
parser.add_argument(
|
|
72
|
+
"--fail-on-prediction-errors",
|
|
73
|
+
action="store_true",
|
|
74
|
+
help="If a prediction error is encountered, an exception "
|
|
75
|
+
"is thrown. This can be used to validate stories during "
|
|
76
|
+
"tests, e.g. on travis.",
|
|
77
|
+
)
|
|
78
|
+
parser.add_argument(
|
|
79
|
+
"--url",
|
|
80
|
+
type=str,
|
|
81
|
+
help="If supplied, downloads a story file from a URL and "
|
|
82
|
+
"trains on it. Fetches the data by sending a GET request "
|
|
83
|
+
"to the supplied URL.",
|
|
84
|
+
)
|
|
85
|
+
parser.add_argument(
|
|
86
|
+
"--evaluate-model-directory",
|
|
87
|
+
default=False,
|
|
88
|
+
action="store_true",
|
|
89
|
+
help="Should be set to evaluate models trained via "
|
|
90
|
+
"'rasa train core --config <config-1> <config-2>'. "
|
|
91
|
+
"All models in the provided directory are evaluated "
|
|
92
|
+
"and compared against each other.",
|
|
93
|
+
)
|
|
94
|
+
add_no_plot_param(parser)
|
|
95
|
+
add_errors_success_params(parser)
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
def add_test_nlu_argument_group(
|
|
99
|
+
parser: Union[argparse.ArgumentParser, argparse._ActionsContainer],
|
|
100
|
+
) -> None:
|
|
101
|
+
add_nlu_data_param(parser, help_text="File or folder containing your NLU data.")
|
|
102
|
+
|
|
103
|
+
add_out_param(
|
|
104
|
+
parser,
|
|
105
|
+
default=DEFAULT_RESULTS_PATH,
|
|
106
|
+
help_text="Output path for any files created during the evaluation.",
|
|
107
|
+
)
|
|
108
|
+
parser.add_argument(
|
|
109
|
+
"-c",
|
|
110
|
+
"--config",
|
|
111
|
+
nargs="+",
|
|
112
|
+
default=None,
|
|
113
|
+
help="Model configuration file. If a single file is passed and cross "
|
|
114
|
+
"validation mode is chosen, cross-validation is performed, if "
|
|
115
|
+
"multiple configs or a folder of configs are passed, models "
|
|
116
|
+
"will be trained and compared directly.",
|
|
117
|
+
)
|
|
118
|
+
|
|
119
|
+
parser.add_argument(
|
|
120
|
+
"-d",
|
|
121
|
+
"--domain",
|
|
122
|
+
type=str,
|
|
123
|
+
default=DEFAULT_DOMAIN_PATH,
|
|
124
|
+
help="Domain specification. This can be a single YAML file, or a directory "
|
|
125
|
+
"that contains several files with domain specifications in it. The content "
|
|
126
|
+
"of these files will be read and merged together.",
|
|
127
|
+
)
|
|
128
|
+
|
|
129
|
+
cross_validation_arguments = parser.add_argument_group("Cross Validation")
|
|
130
|
+
cross_validation_arguments.add_argument(
|
|
131
|
+
"--cross-validation",
|
|
132
|
+
action="store_true",
|
|
133
|
+
default=False,
|
|
134
|
+
help="Switch on cross validation mode. Any provided model will be ignored.",
|
|
135
|
+
)
|
|
136
|
+
cross_validation_arguments.add_argument(
|
|
137
|
+
"-f",
|
|
138
|
+
"--folds",
|
|
139
|
+
required=False,
|
|
140
|
+
default=5,
|
|
141
|
+
help="Number of cross validation folds (cross validation only).",
|
|
142
|
+
)
|
|
143
|
+
comparison_arguments = parser.add_argument_group("Comparison Mode")
|
|
144
|
+
comparison_arguments.add_argument(
|
|
145
|
+
"-r",
|
|
146
|
+
"--runs",
|
|
147
|
+
required=False,
|
|
148
|
+
default=3,
|
|
149
|
+
type=int,
|
|
150
|
+
help="Number of comparison runs to make.",
|
|
151
|
+
)
|
|
152
|
+
comparison_arguments.add_argument(
|
|
153
|
+
"-p",
|
|
154
|
+
"--percentages",
|
|
155
|
+
required=False,
|
|
156
|
+
nargs="+",
|
|
157
|
+
type=int,
|
|
158
|
+
default=[0, 25, 50, 75],
|
|
159
|
+
help="Percentages of training data to exclude during comparison.",
|
|
160
|
+
)
|
|
161
|
+
|
|
162
|
+
add_no_plot_param(parser)
|
|
163
|
+
add_errors_success_params(parser)
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
def add_test_core_model_param(parser: argparse.ArgumentParser) -> None:
|
|
167
|
+
default_path = get_latest_model(DEFAULT_MODELS_PATH)
|
|
168
|
+
parser.add_argument(
|
|
169
|
+
"-m",
|
|
170
|
+
"--model",
|
|
171
|
+
nargs="+",
|
|
172
|
+
default=[default_path],
|
|
173
|
+
help="Path to a pre-trained model. If it is a 'tar.gz' file that model file "
|
|
174
|
+
"will be used. If it is a directory, the latest model in that directory "
|
|
175
|
+
"will be used (exception: '--evaluate-model-directory' flag is set). "
|
|
176
|
+
"If multiple 'tar.gz' files are provided, all those models will be compared.",
|
|
177
|
+
)
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
def add_no_plot_param(
|
|
181
|
+
parser: argparse.ArgumentParser, default: bool = False, required: bool = False
|
|
182
|
+
) -> None:
|
|
183
|
+
parser.add_argument(
|
|
184
|
+
"--no-plot",
|
|
185
|
+
dest="disable_plotting",
|
|
186
|
+
action="store_true",
|
|
187
|
+
default=default,
|
|
188
|
+
help="Don't render evaluation plots.",
|
|
189
|
+
required=required,
|
|
190
|
+
)
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
def add_errors_success_params(parser: argparse.ArgumentParser) -> None:
|
|
194
|
+
parser.add_argument(
|
|
195
|
+
"--successes",
|
|
196
|
+
action="store_true",
|
|
197
|
+
default=False,
|
|
198
|
+
help="If set successful predictions will be written to a file.",
|
|
199
|
+
)
|
|
200
|
+
parser.add_argument(
|
|
201
|
+
"--no-errors",
|
|
202
|
+
action="store_true",
|
|
203
|
+
default=False,
|
|
204
|
+
help="If set incorrect predictions will NOT be written to a file.",
|
|
205
|
+
)
|
|
206
|
+
parser.add_argument(
|
|
207
|
+
"--no-warnings",
|
|
208
|
+
action="store_true",
|
|
209
|
+
default=False,
|
|
210
|
+
help="If set prediction warnings will NOT be written to a file.",
|
|
211
|
+
)
|