def load(meta): """ :type meta: ModelMetadata :rtype: MITIEInterpreter """ if meta.entity_extractor_path: if meta.feature_extractor_path is None or not os.path.isfile(meta.feature_extractor_path): raise Exception("Invalid feature extractor path for MITIE model. Meta data: " + meta) extractor = named_entity_extractor( meta.entity_extractor_path, meta.feature_extractor_path) else: extractor = None if meta.intent_classifier_path: classifier = text_categorizer( meta.intent_classifier_path, meta.feature_extractor_path) else: classifier = None if meta.entity_synonyms_path: entity_synonyms = Interpreter.load_synonyms(meta.entity_synonyms_path) else: entity_synonyms = None return MITIEInterpreter( classifier, extractor, entity_synonyms)
def load(meta, featurizer=None): """ :type meta: rasa_nlu.model.Metadata :rtype: MITIESklearnInterpreter """ if meta.entity_extractor_path: extractor = named_entity_extractor(meta.entity_extractor_path) else: extractor = None if featurizer is None: featurizer = MITIEFeaturizer(meta.feature_extractor_path) if meta.intent_classifier_path: with open(meta.intent_classifier_path, 'rb') as f: classifier = cloudpickle.load(f) else: classifier = None if meta.entity_synonyms_path: entity_synonyms = Interpreter.load_synonyms( meta.entity_synonyms_path) else: entity_synonyms = None return MITIESklearnInterpreter(classifier, extractor, featurizer, entity_synonyms)
def load(meta, nlp, featurizer=None): """ :type meta: rasa_nlu.model.Metadata :type nlp: spacy.language.Language :type featurizer: None or rasa_nlu.featurizers.spacy_featurizer.SpacyFeaturizer :rtype: MITIEInterpreter """ if meta.entity_extractor_path: extractor = SpacyEntityExtractor(nlp, meta.entity_extractor_path, meta.metadata.get("should_fine_tune_spacy_ner")) else: extractor = None if meta.intent_classifier_path: with open(meta.intent_classifier_path, 'rb') as f: classifier = cloudpickle.load(f) else: classifier = None if meta.entity_synonyms_path: entity_synonyms = Interpreter.load_synonyms(meta.entity_synonyms_path) else: entity_synonyms = None if featurizer is None: featurizer = SpacyFeaturizer(nlp) return SpacySklearnInterpreter( classifier, extractor, entity_synonyms, featurizer, nlp)
def __init__(self, intent_classifier=None, entity_extractor=None, feature_extractor=None, entity_synonyms=None, **kwargs): self.extractor = None self.classifier = None if entity_extractor: self.extractor = named_entity_extractor(entity_extractor, feature_extractor) if intent_classifier: self.classifier = text_categorizer(intent_classifier, feature_extractor) self.tokenizer = MITIETokenizer() self.ent_synonyms = None if entity_synonyms: Interpreter.load_synonyms(entity_synonyms)
def load(meta, featurizer=None): """ :type meta: rasa_nlu.model.Metadata :rtype: MITIEInterpreter """ if meta.entity_extractor_path: extractor = named_entity_extractor(meta.entity_extractor_path) else: extractor = None if meta.intent_classifier_path: classifier = text_categorizer(meta.intent_classifier_path) else: classifier = None if featurizer is None: featurizer = MITIEFeaturizer(meta.feature_extractor_path) if meta.entity_synonyms_path: entity_synonyms = Interpreter.load_synonyms( meta.entity_synonyms_path) else: entity_synonyms = None return MITIEInterpreter(classifier, extractor, featurizer, entity_synonyms)
def __init__(self, intent_classifier=None, entity_extractor=None, feature_extractor=None, entity_synonyms=None, **kwargs): self.extractor = None self.classifier = None if entity_extractor: self.extractor = named_entity_extractor(entity_extractor, feature_extractor) if intent_classifier: with open(intent_classifier, 'rb') as f: self.classifier = cloudpickle.load(f) self.featurizer = MITIEFeaturizer(feature_extractor) self.tokenizer = MITIETokenizer() self.ent_synonyms = None if entity_synonyms: self.ent_synonyms = Interpreter.load_synonyms(entity_synonyms)
def load(meta, nlp): """ :type meta: ModelMetadata :rtype: MITIEInterpreter """ if meta.entity_extractor_path: extractor = SpacyEntityExtractor(nlp, meta.entity_extractor_path) else: extractor = None if meta.intent_classifier_path: with open(meta.intent_classifier_path, 'rb') as f: classifier = cloudpickle.load(f) else: classifier = None if meta.entity_synonyms_path: entity_synonyms = Interpreter.load_synonyms( meta.entity_synonyms_path) else: entity_synonyms = None return SpacySklearnInterpreter(classifier, extractor, entity_synonyms, nlp)
def __init__(self, entity_extractor=None, entity_synonyms=None, intent_classifier=None, language_name='en', **kwargs): self.extractor = None self.classifier = None self.ent_synonyms = None self.nlp = spacy.load(language_name, parser=False, entity=False, matcher=False) self.featurizer = SpacyFeaturizer(self.nlp) ensure_proper_language_model(self.nlp) if intent_classifier: with open(intent_classifier, 'rb') as f: self.classifier = cloudpickle.load(f) if entity_extractor: self.extractor = SpacyEntityExtractor(self.nlp, entity_extractor) self.ent_synonyms = Interpreter.load_synonyms(entity_synonyms)