You only need to set requires_grad=True if you need to get gradients for that Tensor.
That is why parameters are created this way by default.
You should create your inputs with this only if you plan on asking for gradients wrt to the inputs (which people usually don’t). So in general you don’t need to set it no.
It won’t break anything, the things that can happen are:
you will compute gradients for some Tensors and don’t use it. Slowing down your code slightly for no reason.
If your label is of a non-contiguous dtype (like long), it will raise an error if you try to set requires_grad=True. Because that is only supported for contiguous dtypes.