The gradient calculation is independent from the training mode in the model, which is changed via model.train() and model.eval().
To disable the gradient calculation, set the .requires_grad attribute of all parameters so False or wrap the forward pass into with torch.no_grad().
Calling model.eval() will change the behavior of some layers, such as nn.Dropout, which will be disabled, and nn.BatchNormXd, which will use the running stats during evaluation.