Exitare:

        _ = self.vae.fit(self.train_dataset,



Since you’re working with a tf.data.Dataset, perhaps something like this could work:
your_vae_model.fit(your_train_dataset.map(lambda x: (x, x)),...)

cc @markdaoust