def train_nlu(data, configs, model_dir):
training_data = load_data(data)
trainer = Trainer(config.load(configs))
trainer.train(training_data)
model_directory = trainer.persist(model_dir, fixed_model_name='weathernlu')
return model_directory
def run_nlu(model_dir):
interpreter = Interpreter.load(model_dir)
print(interpreter.parse("hello"))我想加载多个模型来运行。如何使用解释器在python程序中加载多个模型?
发布于 2018-06-16 10:06:34
如果使用的是Rasa 0.12.3,则可以使用类merge的TrainingData方法。例如
from rasa_nlu.training_data import TrainingData, load_data
from rasa_nlu.model import Trainer
from rasa_nlu import config
training_data = TrainingData()
nlu_trainings = ["data/examples/domain1.md", "data/examples/domain2.md"]
for nlu_training in nlu_trainings:
training_data = training_data.merge(load_data(nlu_training)))
trainer = Trainer(config.load("sample_configs/config_spacy.yaml"))
trainer.train(training_data)
trainer.persist("./projects/default/")发布于 2018-06-10 13:12:54
您可以简单地将不同的模型存储在不同的目录中,然后从各自的目录中加载这两个不同的模型。
def run_nlu(model_dir):
interpreter1 = Interpreter.load(model1_dir)
print(interpreter.parse("hello"))
interpreter2 = Interpreter.load(model2_dir)
print(interpreter.parse("hello"))https://stackoverflow.com/questions/50754458
复制相似问题