dc6079821b
Docs Tests / Check for file changes (push) Has been cancelled
Docs Tests / Test Documentation (push) Has been cancelled
Docs Tests / Documentation Linting Checks (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.10, test-performance) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.10, test-policies) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.8, test-cli) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.8, test-core-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.8, test-full-model-training) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.8, test-nlu-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.8, test-nlu-predictors) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.8, test-other-unit-tests) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.8, test-performance) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.8, test-policies) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.9, test-cli) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.9, test-core-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.9, test-full-model-training) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.9, test-nlu-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.9, test-nlu-predictors) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.9, test-other-unit-tests) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.9, test-performance) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.9, test-policies) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.10, test-cli) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.10, test-core-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.10, test-full-model-training) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.10, test-nlu-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.10, test-nlu-predictors) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.10, test-other-unit-tests) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.10, test-performance) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.10, test-policies) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.8, test-cli) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.8, test-core-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.8, test-full-model-training) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.8, test-nlu-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.8, test-nlu-predictors) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.8, test-other-unit-tests) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.8, test-performance) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.8, test-policies) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.9, test-cli) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.9, test-core-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.9, test-full-model-training) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.9, test-nlu-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.9, test-nlu-predictors) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.9, test-other-unit-tests) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.9, test-performance) (push) Has been cancelled
Continuous Integration / Run Tests (windows-2022, 3.9, test-policies) (push) Has been cancelled
Continuous Integration / Run Flaky Tests (ubuntu-24.04, 3.10) (push) Has been cancelled
Continuous Integration / Run Flaky Tests (ubuntu-24.04, 3.8) (push) Has been cancelled
Continuous Integration / Run Flaky Tests (ubuntu-24.04, 3.9) (push) Has been cancelled
Continuous Integration / Run Flaky Tests (windows-2022, 3.10) (push) Has been cancelled
Continuous Integration / Run Flaky Tests (windows-2022, 3.8) (push) Has been cancelled
Continuous Integration / Run Flaky Tests (windows-2022, 3.9) (push) Has been cancelled
Continuous Integration / Check for file changes (push) Has been cancelled
Continuous Integration / Wait for docs tests (push) Has been cancelled
Continuous Integration / Code Quality (push) Has been cancelled
Continuous Integration / Check for changelog (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.10, test-cli) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.10, test-core-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.10, test-full-model-training) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.10, test-nlu-featurizers) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.10, test-nlu-predictors) (push) Has been cancelled
Continuous Integration / Run Tests (ubuntu-24.04, 3.10, test-other-unit-tests) (push) Has been cancelled
Continuous Integration / Upload coverage reports to codeclimate (push) Has been cancelled
Continuous Integration / Run Non-Sequential Integration Tests (push) Has been cancelled
Continuous Integration / Run Broker Integration Tests (push) Has been cancelled
Continuous Integration / Run Sequential Integration Tests (push) Has been cancelled
Continuous Integration / Build Docker base images and setup environment (push) Has been cancelled
Continuous Integration / Build Docker (default) (push) Has been cancelled
Continuous Integration / Build Docker (full) (push) Has been cancelled
Continuous Integration / Build Docker (mitie-en) (push) Has been cancelled
Continuous Integration / Build Docker (spacy-de) (push) Has been cancelled
Continuous Integration / Build Docker (spacy-en) (push) Has been cancelled
Continuous Integration / Build Docker (spacy-it) (push) Has been cancelled
Continuous Integration / Deploy to PyPI (push) Has been cancelled
Continuous Integration / Notify Slack & Publish Release Notes (push) Has been cancelled
Publish Documentation / Evaluate release tag (push) Has been cancelled
Publish Documentation / Prebuild Docs (push) Has been cancelled
Publish Documentation / Preview Docs (push) Has been cancelled
Publish Documentation / Check for file changes (push) Has been cancelled
Publish Documentation / Publish Docs (push) Has been cancelled
Automatic PR Merger / mergepal (push) Has been cancelled
CI Github Actions / Run Tests (push) Has been cancelled
Semgrep / Semgrep Workflow Security Scan (push) Has been cancelled
143 lines
4.2 KiB
Python
143 lines
4.2 KiB
Python
from __future__ import annotations
|
|
from enum import Enum
|
|
|
|
import rasa.shared.constants as constants
|
|
|
|
|
|
DEFAULT_CATEGORICAL_SLOT_VALUE = "__other__"
|
|
|
|
USER_INTENT_RESTART = "restart"
|
|
USER_INTENT_BACK = "back"
|
|
USER_INTENT_OUT_OF_SCOPE = "out_of_scope"
|
|
USER_INTENT_SESSION_START = "session_start"
|
|
SESSION_START_METADATA_SLOT = "session_started_metadata"
|
|
|
|
DEFAULT_INTENTS = [
|
|
USER_INTENT_RESTART,
|
|
USER_INTENT_BACK,
|
|
USER_INTENT_OUT_OF_SCOPE,
|
|
USER_INTENT_SESSION_START,
|
|
constants.DEFAULT_NLU_FALLBACK_INTENT_NAME,
|
|
]
|
|
|
|
LOOP_NAME = "name"
|
|
|
|
ACTION_LISTEN_NAME = "action_listen"
|
|
ACTION_RESTART_NAME = "action_restart"
|
|
ACTION_SESSION_START_NAME = "action_session_start"
|
|
ACTION_DEFAULT_FALLBACK_NAME = "action_default_fallback"
|
|
ACTION_DEACTIVATE_LOOP_NAME = "action_deactivate_loop"
|
|
ACTION_REVERT_FALLBACK_EVENTS_NAME = "action_revert_fallback_events"
|
|
ACTION_DEFAULT_ASK_AFFIRMATION_NAME = "action_default_ask_affirmation"
|
|
ACTION_DEFAULT_ASK_REPHRASE_NAME = "action_default_ask_rephrase"
|
|
ACTION_BACK_NAME = "action_back"
|
|
ACTION_TWO_STAGE_FALLBACK_NAME = "action_two_stage_fallback"
|
|
ACTION_UNLIKELY_INTENT_NAME = "action_unlikely_intent"
|
|
RULE_SNIPPET_ACTION_NAME = "..."
|
|
ACTION_EXTRACT_SLOTS = "action_extract_slots"
|
|
ACTION_VALIDATE_SLOT_MAPPINGS = "action_validate_slot_mappings"
|
|
|
|
DEFAULT_ACTION_NAMES = [
|
|
ACTION_LISTEN_NAME,
|
|
ACTION_RESTART_NAME,
|
|
ACTION_SESSION_START_NAME,
|
|
ACTION_DEFAULT_FALLBACK_NAME,
|
|
ACTION_DEACTIVATE_LOOP_NAME,
|
|
ACTION_REVERT_FALLBACK_EVENTS_NAME,
|
|
ACTION_DEFAULT_ASK_AFFIRMATION_NAME,
|
|
ACTION_DEFAULT_ASK_REPHRASE_NAME,
|
|
ACTION_TWO_STAGE_FALLBACK_NAME,
|
|
ACTION_UNLIKELY_INTENT_NAME,
|
|
ACTION_BACK_NAME,
|
|
RULE_SNIPPET_ACTION_NAME,
|
|
ACTION_EXTRACT_SLOTS,
|
|
]
|
|
|
|
ACTION_SHOULD_SEND_DOMAIN = "send_domain"
|
|
|
|
# rules allow setting a value of slots or active_loops to None;
|
|
# generator substitutes `None`s with this constant to notify rule policy that
|
|
# a value should not be set during prediction to activate a rule
|
|
SHOULD_NOT_BE_SET = "should_not_be_set"
|
|
|
|
PREVIOUS_ACTION = "prev_action"
|
|
ACTIVE_LOOP = "active_loop"
|
|
LOOP_INTERRUPTED = "is_interrupted"
|
|
LOOP_REJECTED = "rejected"
|
|
TRIGGER_MESSAGE = "trigger_message"
|
|
FOLLOWUP_ACTION = "followup_action"
|
|
|
|
# start of special user message section
|
|
EXTERNAL_MESSAGE_PREFIX = "EXTERNAL: "
|
|
# Key to access data in the event metadata
|
|
# It specifies if an event was caused by an external entity (e.g. a sensor).
|
|
IS_EXTERNAL = "is_external"
|
|
|
|
ACTION_NAME_SENDER_ID_CONNECTOR_STR = "__sender_id:"
|
|
|
|
REQUESTED_SLOT = "requested_slot"
|
|
|
|
# slots for knowledge base
|
|
SLOT_LISTED_ITEMS = "knowledge_base_listed_objects"
|
|
SLOT_LAST_OBJECT = "knowledge_base_last_object"
|
|
SLOT_LAST_OBJECT_TYPE = "knowledge_base_last_object_type"
|
|
DEFAULT_KNOWLEDGE_BASE_ACTION = "action_query_knowledge_base"
|
|
|
|
DEFAULT_SLOT_NAMES = {
|
|
REQUESTED_SLOT,
|
|
SESSION_START_METADATA_SLOT,
|
|
SLOT_LISTED_ITEMS,
|
|
SLOT_LAST_OBJECT,
|
|
SLOT_LAST_OBJECT_TYPE,
|
|
}
|
|
|
|
|
|
SLOT_MAPPINGS = "mappings"
|
|
MAPPING_CONDITIONS = "conditions"
|
|
MAPPING_TYPE = "type"
|
|
|
|
|
|
class SlotMappingType(Enum):
|
|
"""Slot mapping types."""
|
|
|
|
FROM_ENTITY = "from_entity"
|
|
FROM_INTENT = "from_intent"
|
|
FROM_TRIGGER_INTENT = "from_trigger_intent"
|
|
FROM_TEXT = "from_text"
|
|
CUSTOM = "custom"
|
|
|
|
def __str__(self) -> str:
|
|
"""Returns the string representation that should be used in config files."""
|
|
return self.value
|
|
|
|
def is_predefined_type(self) -> bool:
|
|
"""Returns True iff the mapping type is predefined.
|
|
|
|
That is, to evaluate the mapping no custom action execution is needed.
|
|
"""
|
|
return self != SlotMappingType.CUSTOM
|
|
|
|
|
|
# the keys for `State` (USER, PREVIOUS_ACTION, SLOTS, ACTIVE_LOOP)
|
|
# represent the origin of a `SubState`
|
|
USER = "user"
|
|
SLOTS = "slots"
|
|
|
|
USE_TEXT_FOR_FEATURIZATION = "use_text_for_featurization"
|
|
ENTITY_LABEL_SEPARATOR = "#"
|
|
|
|
RULE_ONLY_SLOTS = "rule_only_slots"
|
|
RULE_ONLY_LOOPS = "rule_only_loops"
|
|
|
|
# if you add more policy/classifier names, make sure to add a test as well to ensure
|
|
# that the name and the class stay in sync
|
|
POLICY_NAME_TWO_STAGE_FALLBACK = "TwoStageFallbackPolicy"
|
|
POLICY_NAME_MAPPING = "MappingPolicy"
|
|
POLICY_NAME_FALLBACK = "FallbackPolicy"
|
|
POLICY_NAME_FORM = "FormPolicy"
|
|
POLICY_NAME_RULE = "RulePolicy"
|
|
|
|
CLASSIFIER_NAME_FALLBACK = "FallbackClassifier"
|
|
|
|
POLICIES_THAT_EXTRACT_ENTITIES = {"TEDPolicy"}
|