You don’t usually require gradients for the input to train neural networks. The parameterd inside your model are requires_grad=True though.
You can use any type conversion functions. They are a few of them for historical reasons, but there is no benefit of using one against the other.