rasa nlu 多个模型 python
rasa nlu multiple models python
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"))
我想将多个模型加载到 运行。
如何使用 Interpreter 在我的 python 程序中加载多个模型?
您可以简单地将不同的模型存储在不同的目录中,然后从各自的目录中加载两个不同的模型。
def run_nlu(model_dir):
interpreter1 = Interpreter.load(model1_dir)
print(interpreter.parse("hello"))
interpreter2 = Interpreter.load(model2_dir)
print(interpreter.parse("hello"))
如果您使用的是 Rasa NLU 0.12.3,则可以使用 class TrainingData
的方法 merge
。例如
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/")
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"))
我想将多个模型加载到 运行。 如何使用 Interpreter 在我的 python 程序中加载多个模型?
您可以简单地将不同的模型存储在不同的目录中,然后从各自的目录中加载两个不同的模型。
def run_nlu(model_dir):
interpreter1 = Interpreter.load(model1_dir)
print(interpreter.parse("hello"))
interpreter2 = Interpreter.load(model2_dir)
print(interpreter.parse("hello"))
如果您使用的是 Rasa NLU 0.12.3,则可以使用 class TrainingData
的方法 merge
。例如
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/")