The validation dataset always uses shuffle=False. If you want the training dataloader to use shuffle=False, there’s no direct argument but you can type data.train_dl = data.train_dl.new(shuffle=False) after creating the DataBunch.
v1 will not support IterableDataset, only regular datasets with a length and getitem. You can still create your dataloaders by hand then pass them to the init of DataBunch.
Not sure of your error since you only give part of the stack trace but you should try to add fix_dl=train_dl in your call to DataBunch. It’s trying to create it for internal purposes by using our monkey-patch of the PyTorch DataLoader, but that monkey-patch isn’t compatible with your dataloader class.