Solved by my3bikaht in post #4 
              
              
                You are using one big model anyway at least memory-wise. And you can always access inner model directly by calling model.basemodel(x) 
as for your question, it should work fine: 
import torch
import torch.nn as nn


class Model1(nn.Module):
    def __init__(self):
        super().__init__()
        …