Yes, the samples numbers are “correct”, but as you can see they are not fixed.
I would recommend to store the randomly initialized state_dicts once and just reload them to the appropriate model during your experiments, to get reproducible results.
This would at least reuse the same parameters.
Note however, that all other calls to random generators might still yield slightly different results, e.g. if you have more dropout layer in modelB than in modelA.