I think you would still need one loop over the different bounding boxes:
bbox = [[0,0, 3, 3], [0, 0, 2, 2]]
for b in bbox:
    xv, yv = torch.meshgrid(torch.arange(b[0], b[2]), torch.arange(b[1], b[3]))
    print(torch.stack((xv, yv), dim=2).view(-1, 2))