Enable multiple dataset in validation_step
Allow validation step to use multiple datasets.
Need to also decide how it will be called (especially to handle a case where the two datasets aren't the same length.
Option A:
for batch_a in dataset_a:
    model.validation_step(batch_a, batch_nb, dataset_index)

for batch_b in dataset_b:
    model.validation_step(batch_b, batch_nb, dataset_index)
Option B:
for batches in zip(dataset_a, dataset_b):
    # use both
    # new dynamic signature validation_step(batch_a, batch_b, batch_n, batch_nb)
    model.validation_step(*batches, batch_nb)
Option C:
(I think this is the only real generic way). The user would have to make sure datasets are the same length or be ok with iterating only as far as the shortest one.
import itertools

for batches in zip(*itertools.chain(dataset_a, dataset_b, ..., dataset_n)):
    # use both
    # new dynamic signature validation_step(batch_a, batch_b, batch_n, batch_nb)
    model.validation_step(*batches, batch_nb)
@cinjon @ppwwyyxx