nn.CrossEntropyLoss expects the raw logits as the model outputs, so you would have to remove the softmax for the first case.
You should get identical values afterwards, since nn.CrossEntropyLoss uses F.log_softmax and nn.NLLLoss internally.