Is it possible to have "model portability" between different servers


I have question about using same model on different servers. I have server A and server B. Both use same version of Rasa with the exactly the same config.yml with the only difference: A and B servers use different duckling http servers (different http addresses). So I have trained model on server A and want to use it on server B (test/prod servers). Problem is, when I run it, server B still tries to use duckling server found in config of server A as it’s embedded in the model file’s metadata.json. Does it mean, that it’s impossible to port trained model from one server to another and I have to train model separately on test and prod servers?


For someone who also may need answer to this question: Turns out, duckling_entity_extractor component has a logic, that overrides actual config (config.yaml or metadata.json) value with the environment variable. So the way to override embedded value from metadata.json is to add correct URL to environment variables and rasa will use that one.

This also means that if you have custom components (which is true in our case) using any http endpoint, same approach should be used there too. Not very convenient in case of multiple parameters though.