Hi,
one of the ideas with torch.nn.Module is that you do the expressive stuff by defining forward and the Module class that you inherit from provides the “paperwork” (e.g. calling hooks) in the model.__call__(...) method (which is what model(x) will call by python special name specifications).
if you are curious you can look at what model(x) does behind the scenes beyond calling model.forward(x) here: https://github.com/pytorch/pytorch/blob/master/torch/nn/modules/module.py#L205 446
Best regards
Thomas