def METHOD_NAME(self):
    cache_path = snapshot_download(
        'damo/mplug_visual-question-answering_coco_large_en')
    model = MPlugForAllTasks.from_pretrained(
        cache_path, task=Tasks.visual_question_answering)
    kwargs = dict(
        cfg_file=os.path.join(cache_path, ModelFile.CONFIGURATION),
        model=model,
        train_dataset=self.train_dataset,
        eval_dataset=self.test_dataset,
        max_epochs=self.max_epochs,
        work_dir=self.tmp_dir)
    trainer: EpochBasedTrainer = build_trainer(
        name=Trainers.mplug, default_args=kwargs)
    trainer.train()
    results_files = os.listdir(self.tmp_dir)
    self.assertIn(f'{trainer.timestamp}.log.json', results_files)
    for i in range(self.max_epochs):
        self.assertIn(f'epoch_{i+1}.pth', results_files)