Migrating to rasa 3.0

We have several different custom components in our nlu pipline in rasa 2.0. So we started migrating to rasa 3.0. However, the changes in major classes which these components are subclassed from has caused many problems. As an example we have customized DIET model so it can read data from a different path, train it, and persist it in our own way. But in rasa 3.0 all corresponding methods (def train(), def process(), def load(), etc) have drastic changes. So meaning that we should start overwriting these methods to be consistent with new changes. Is there any better practice? One point of concern is the amount of modification that we need to do every time we want to upgrade to newer version. So, how this would be handled in future releases? Considering the flexibility provided by custom components, it doesn’t make sense for us to do all these changes for every new release. It should be restricted somehow, or these changes should be avoided!

Please read the Rasa 2.x to 3.0 Migration Guide for everything you have to do :slight_smile: