def predict( self, data_provider: Provider, make_instances: bool = True, make_labels: bool = False, ): if isinstance(data_provider, sleap.Labels): data_provider = LabelsReader(data_provider) elif isinstance(data_provider, sleap.Video): data_provider = VideoReader(data_provider) generator = self.predict_generator(data_provider) if make_instances or make_labels: lfs = self.make_labeled_frames_from_generator(generator, data_provider) if make_labels: return sleap.Labels(lfs) else: return lfs return list(generator)