def METHOD_NAME(self, dataset_id: str, s3_dir: str, data_filenames: List[str]):
    self.use_cuda = torch.cuda.is_available()
    self.root = Path.home() / ".cache" / "fairseq" / dataset_id
    self.root.mkdir(exist_ok=True, parents=True)
    os.chdir(self.root)
    self.base_url = (
        s3_dir if re.search("^https:", s3_dir) else f"{S3_BASE_URL}/{s3_dir}"
    )
    for filename in data_filenames:
        self.download(self.base_url, self.root, filename)