Пример #1
0
    def add_user_messages(self, messages, line_num):
        if not self.current_step_builder:
            raise StoryParseError("User message '{}' at invalid location. "
                                  "Expected story start.".format(messages))
        parsed_messages = []
        for m in messages:
            parse_data = self.interpreter.parse(m)
            utterance = UserUttered(m,
                                    parse_data.get("intent"),
                                    parse_data.get("entities"),
                                    parse_data)

            if m.startswith("_"):
                c = utterance.as_story_string()
                logger.warning("Stating user intents with a leading '_' is "
                               "deprecated. The new format is "
                               "'* {}'. Please update "
                               "your example '{}' to the new format."
                               "".format(c, m))
            intent_name = utterance.intent.get("name")
            if intent_name not in self.domain.intents:
                logger.warning("Found unknown intent '{}' on line {}. "
                               "Please, make sure that all intents are "
                               "listed in your domain yaml."
                               "".format(intent_name, line_num))
            parsed_messages.append(utterance)
        self.current_step_builder.add_user_messages(parsed_messages)
Пример #2
0
    def _parse_message(self, message, line_num):
        parse_data = self.interpreter.parse(message)
        utterance = UserUttered(message, parse_data.get("intent"),
                                parse_data.get("entities"), parse_data)

        if message.startswith("_"):
            c = utterance.as_story_string()
            logger.warning("Stating user intents with a leading '_' is "
                           "deprecated. The new format is "
                           "'* {}'. Please update "
                           "your example '{}' to the new format."
                           "".format(c, message))
        intent_name = utterance.intent.get("name")
        if intent_name not in self.domain.intents:
            logger.warning("Found unknown intent '{}' on line {}. "
                           "Please, make sure that all intents are "
                           "listed in your domain yaml."
                           "".format(intent_name, line_num))
        return utterance