Why not do
torch.tensor(np.random.default_rng().choice(max_value, size=(num_samples,), replace=False))