def METHOD_NAME(self, generator: DataGenerator, nb_epochs: int = 20, **kwargs):
    """
    Train a model adversarially using a data generator.
    See class documentation for more information on the exact procedure.
    :param generator: Data generator.
    :param nb_epochs: Number of epochs to use for trainings.
    :param kwargs: Dictionary of framework-specific arguments. These will be passed as such to the `fit` function of
           the target classifier.
    """
    raise NotImplementedError