def __init__( self, intents: Union[Set[Text], List[Union[Text, Dict[Text, Any]]]], entities: List[Text], slots: List[Slot], templates: Dict[Text, List[Dict[Text, Any]]], action_names: List[Text], form_names: List[Text], store_entities_as_slots: bool = True, session_config: SessionConfig = SessionConfig.default(), ) -> None: self.intent_properties = self.collect_intent_properties(intents, entities) self.entities = entities self.form_names = form_names self.slots = slots self.templates = templates self.session_config = session_config # only includes custom actions and utterance actions self.user_actions = action.combine_with_templates(action_names, templates) # includes all actions (custom, utterance, default actions and forms) self.action_names = ( action.combine_user_with_default_actions(self.user_actions) + form_names ) self.store_entities_as_slots = store_entities_as_slots self._check_domain_sanity()
def __init__( self, intents: Union[Set[Text], List[Union[Text, Dict[Text, Any]]]], entities: List[Text], slots: List[Slot], templates: Dict[Text, List[Dict[Text, Any]]], action_names: List[Text], forms: List[Union[Text, Dict]], store_entities_as_slots: bool = True, session_config: SessionConfig = SessionConfig.default(), ) -> None: self.intent_properties = self.collect_intent_properties( intents, entities) self.entities = entities # Forms used to be a list of form names. Now they can also contain # `SlotMapping`s if not forms or (forms and isinstance(forms[0], str)): self.form_names = forms self.forms: List[Dict] = [{form_name: {}} for form_name in forms] elif isinstance(forms[0], dict): self.forms: List[Dict] = forms self.form_names = [list(f.keys())[0] for f in forms] self.slots = slots self.templates = templates self.session_config = session_config self._custom_actions = action_names # only includes custom actions and utterance actions self.user_actions = action.combine_with_templates( action_names, templates) # includes all actions (custom, utterance, default actions and forms) self.action_names = ( action.combine_user_with_default_actions(self.user_actions) + self.form_names) self.store_entities_as_slots = store_entities_as_slots self._check_domain_sanity()