I would say it depends a bit on your use case.
If you are running some quick experiments, setting the seed and splitting the datasets randomly might be sufficient to reproduce your results.
However, if you really need the same splits for each run, you could sample the split indices once, store them locally, and use them in a Subset to get the same training, validation (and test) sets.