If you would like to stick to the batch size, you could just lazily load the data in your Dataset and use a batch size of 1 in your DataLoader.
Here is a small example:
class MyDataset(Dataset):
    def __init__(self, paths):
        self.paths = paths
        
    def __getitem__(self, index):
        x = torch.load(self.paths[index])
        return x
    
    def __len__(self):
        return len(self.paths)
    

batch_size = 10
data = torch.randn(batch_size, 3, 24, 24)
path = './tmp_data.pth'
torch.save(data, path)

dataset = MyDataset([path])
loader = DataLoader(
    dataset,
    batch_size=1,
    shuffle=True,
    num_workers=2
)

x = next(iter(loader))
x.squeeze_()
print(x.shape)
> torch.Size([10, 3, 24, 24])

However, if you would like to use another batch size, this issue would be a bit more complicated.
Let me know, if that’s the case or if the current approach would work or you.