torch.nn.Sequential() vs. nn.Module()

Hello,

when defining a neural network, I usually make a class

class NeuralNetwork(nn.Module):
    def __init__(self):
        super().__init__()
        ...

    def forward(self, inputs):
        ...

Now usually I define the things I need in the constructor and then built my NN inside the forward() but I mostly use sequential NN so I could also use torch.nn.Sequential(). I kind of like it better to read.

Was wondering what’s a good way to use torch.nn.Sequential() in the above? Like was good practice here? Would I just skrip defining my own class and make a function returning torch.nn.Sequential()?

Edit: Ah I guess they are kinda used together vision/alexnet.py at main · pytorch/vision · GitHub