Spaces:
Runtime error
Runtime error
| """ | |
| Copyright (c) 2022, salesforce.com, inc. | |
| All rights reserved. | |
| SPDX-License-Identifier: BSD-3-Clause | |
| For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/BSD-3-Clause | |
| """ | |
| from lavis.datasets.builders.base_dataset_builder import load_dataset_config | |
| from lavis.datasets.builders.caption_builder import ( | |
| COCOCapBuilder, | |
| MSRVTTCapBuilder, | |
| MSVDCapBuilder, | |
| VATEXCapBuilder, | |
| MSRVTTCapInstructBuilder, | |
| MSVDCapInstructBuilder, | |
| VATEXCapInstructBuilder, | |
| WebVid2MCapBuilder, | |
| WebVid2MCapInstructBuilder, | |
| VALORCaptionBuilder, | |
| VALORCaptionInstructBuilder, | |
| ViolinCapBuilder, | |
| ViolinCapInstructBuilder, | |
| VlepCaptionInstructBuilder, | |
| VlepCaptionBuilder, | |
| YouCookCaptionBuilder, | |
| YouCookCaptionInstructBuilder, | |
| COINCaptionBuilder, | |
| COINCaptionInstructBuilder, | |
| CharadeCaptionBuilder, | |
| CharadeCaptionInstructBuilder, | |
| TextCapsCapBuilder, | |
| TextCapsCapInstructBuilder, | |
| Flickr30kCapBuilder, | |
| Flickr30kCapInstructBuilder | |
| ) | |
| from lavis.datasets.builders.image_text_pair_builder import ( | |
| ConceptualCaption12MBuilder, | |
| ConceptualCaption12MInstructBuilder, | |
| ConceptualCaption3MBuilder, | |
| ConceptualCaption3MInstructBuilder, | |
| VGCaptionBuilder, | |
| VGCaptionInstructBuilder, | |
| SBUCaptionBuilder, | |
| SBUCaptionInstructBuilder, | |
| Laion400MBuilder, | |
| Laion400MInstructBuilder | |
| ) | |
| from lavis.datasets.builders.classification_builder import ( | |
| NLVRBuilder, | |
| SNLIVisualEntailmentBuilder, | |
| SNLIVisualEntailmentInstructBuilder, | |
| ViolinEntailmentInstructBuilder, | |
| ViolinEntailmentBuilder, | |
| ESC50ClassificationBuilder | |
| ) | |
| from lavis.datasets.builders.imagefolder_builder import ImageNetBuilder | |
| from lavis.datasets.builders.video_qa_builder import ( | |
| MSRVTTQABuilder, | |
| MSVDQABuilder, | |
| MSRVTTQAInstructBuilder, | |
| MSVDQAInstructBuilder, | |
| MusicAVQABuilder, | |
| MusicAVQAInstructBuilder | |
| ) | |
| from lavis.datasets.builders.vqa_builder import ( | |
| COCOVQABuilder, | |
| COCOVQAInstructBuilder, | |
| OKVQABuilder, | |
| OKVQAInstructBuilder, | |
| AOKVQABuilder, | |
| AOKVQAInstructBuilder, | |
| VGVQABuilder, | |
| VGVQAInstructBuilder, | |
| GQABuilder, | |
| GQAInstructBuilder, | |
| IconQABuilder, | |
| IconQAInstructBuilder, | |
| ScienceQABuilder, | |
| ScienceQAInstructBuilder, | |
| OCRVQABuilder, | |
| OCRVQAInstructBuilder, | |
| VizWizVQABuilder | |
| ) | |
| from lavis.datasets.builders.retrieval_builder import ( | |
| MSRVTTRetrievalBuilder, | |
| DiDeMoRetrievalBuilder, | |
| COCORetrievalBuilder, | |
| Flickr30kBuilder, | |
| ) | |
| from lavis.datasets.builders.audio_caption_builder import ( | |
| AudioSetBuilder, | |
| AudioCapsCapBuilder, | |
| AudioSetInstructBuilder, | |
| AudioCapsInstructCapBuilder, | |
| WavCapsCapInstructBuilder, | |
| WavCapsCapBuilder | |
| ) | |
| from lavis.datasets.builders.object3d_caption_builder import ( | |
| ObjaverseCaptionInstructBuilder, | |
| ShapenetCaptionInstructBuilder, | |
| ObjaverseCaptionBuilder, | |
| ShapenetCaptionBuilder | |
| ) | |
| from lavis.datasets.builders.object3d_qa_builder import ObjaverseQABuilder | |
| from lavis.datasets.builders.object3d_classification_builder import ModelNetClassificationBuilder | |
| from lavis.datasets.builders.audio_qa_builder import AudioCapsQABuilder, ClothoQABuilder | |
| from lavis.datasets.builders.dialogue_builder import ( | |
| AVSDDialBuilder, | |
| AVSDDialInstructBuilder, | |
| YT8MDialBuilder, | |
| LLaVA150kDialInstructBuilder, | |
| VisDialBuilder, | |
| VisDialInstructBuilder | |
| ) | |
| from lavis.datasets.builders.text_to_image_generation_builder import BlipDiffusionFinetuneBuilder | |
| from lavis.datasets.builders.discrn_builders import DiscrnImagePcBuilder, DiscrnAudioVideoBuilder | |
| from lavis.common.registry import registry | |
| __all__ = [ | |
| "BlipDiffusionFinetuneBuilder", | |
| "COCOCapBuilder", | |
| "COCORetrievalBuilder", | |
| "COCOVQABuilder", | |
| "ConceptualCaption12MBuilder", | |
| "ConceptualCaption3MBuilder", | |
| "DiDeMoRetrievalBuilder", | |
| "Flickr30kBuilder", | |
| "GQABuilder", | |
| "ImageNetBuilder", | |
| "MSRVTTCapBuilder", | |
| "MSRVTTQABuilder", | |
| "MSRVTTRetrievalBuilder", | |
| "MSVDCapBuilder", | |
| "MSVDQABuilder", | |
| "NLVRBuilder", | |
| "OKVQABuilder", | |
| "AOKVQABuilder", | |
| "SBUCaptionBuilder", | |
| "SNLIVisualEntailmentBuilder", | |
| "VATEXCapBuilder", | |
| "VGCaptionBuilder", | |
| "VGVQABuilder", | |
| "AVSDDialBuilder", | |
| "Laion400MBuilder", | |
| "ViolinCapBuilder", | |
| "ViolinEntailmentBuilder", | |
| "VlepCaptionBuilder", | |
| "YouCookCaptionBuilder", | |
| "COINCaptionBuilder", | |
| "CharadeCaptionBuilder", | |
| "YT8MDialBuilder", | |
| "IconQABuilder", | |
| "ScienceQABuilder", | |
| "VisDialBuilder", | |
| "OCRVQABuilder", | |
| "VizWizVQABuilder", | |
| "TextCapsCapBuilder", | |
| "Flickr30kCapBuilder", | |
| "AudioSetBuilder", | |
| "AudioCapsCapBuilder", | |
| "WavCapsCapBuilder", | |
| "WebVid2MCapBuilder", | |
| "VALORCaptionBuilder", | |
| "ObjaverseCaptionBuilder", | |
| "ShapenetCaptionBuilder", | |
| "ObjaverseQABuilder", | |
| "MusicAVQABuilder", | |
| "ESC50ClassificationBuilder", | |
| ## Instruction Builders | |
| "AOKVQAInstructBuilder", | |
| "OKVQAInstructBuilder", | |
| "AudioSetInstructBuilder", | |
| "AudioCapsInstructCapBuilder", | |
| "AudioCapsQABuilder", | |
| "WavCapsCapInstructBuilder", | |
| "ObjaverseCaptionInstructBuilder", | |
| "ShapenetCaptionInstructBuilder", | |
| "ModelNetClassificationBuilder", | |
| "ObjaverseCaptionInstructBuilder", | |
| "MSRVTTCapInstructBuilder", | |
| "MSVDCapInstructBuilder", | |
| "VATEXCapInstructBuilder", | |
| "WebVid2MCapInstructBuilder", | |
| "MSRVTTQAInstructBuilder", | |
| "MSVDQAInstructBuilder", | |
| "VALORCaptionInstructBuilder", | |
| "AVSDDialInstructBuilder", | |
| "VisDialInstructBuilder", | |
| "MusicAVQAInstructBuilder", | |
| "ViolinCapInstructBuilder", | |
| "ViolinEntailmentInstructBuilder", | |
| "VlepCaptionInstructBuilder", | |
| "YouCookCaptionInstructBuilder", | |
| "COINCaptionInstructBuilder", | |
| "CharadeCaptionInstructBuilder", | |
| "COCOVQAInstructBuilder", | |
| "VGVQAInstructBuilder", | |
| "GQAInstructBuilder", | |
| "IconQAInstructBuilder", | |
| "SNLIVisualEntailmentInstructBuilder", | |
| "Laion400MInstructBuilder", | |
| "LLaVA150kDialInstructBuilder", | |
| "ScienceQAInstructBuilder", | |
| "OCRVQAInstructBuilder", | |
| "TextCapsCapInstructBuilder", | |
| "Flickr30kCapInstructBuilder", | |
| "ConceptualCaption12MInstructBuilder", | |
| "ConceptualCaption3MInstructBuilder", | |
| "VGCaptionInstructBuilder", | |
| "SBUCaptionInstructBuilder", | |
| "ClothoQABuilder", | |
| # DisCRN | |
| "DiscrnImagePcBuilder", | |
| "DiscrnAudioVideoBuilder" | |
| ] | |
| def load_dataset(name, cfg_path=None, vis_path=None, data_type=None): | |
| """ | |
| Example | |
| >>> dataset = load_dataset("coco_caption", cfg=None) | |
| >>> splits = dataset.keys() | |
| >>> print([len(dataset[split]) for split in splits]) | |
| """ | |
| if cfg_path is None: | |
| cfg = None | |
| else: | |
| cfg = load_dataset_config(cfg_path) | |
| try: | |
| builder = registry.get_builder_class(name)(cfg) | |
| except TypeError: | |
| print( | |
| f"Dataset {name} not found. Available datasets:\n" | |
| + ", ".join([str(k) for k in dataset_zoo.get_names()]) | |
| ) | |
| exit(1) | |
| if vis_path is not None: | |
| if data_type is None: | |
| # use default data type in the config | |
| data_type = builder.config.data_type | |
| assert ( | |
| data_type in builder.config.build_info | |
| ), f"Invalid data_type {data_type} for {name}." | |
| builder.config.build_info.get(data_type).storage = vis_path | |
| dataset = builder.build_datasets() | |
| return dataset | |
| class DatasetZoo: | |
| def __init__(self) -> None: | |
| self.dataset_zoo = { | |
| k: list(v.DATASET_CONFIG_DICT.keys()) | |
| for k, v in sorted(registry.mapping["builder_name_mapping"].items()) | |
| } | |
| def get_names(self): | |
| return list(self.dataset_zoo.keys()) | |
| dataset_zoo = DatasetZoo() | |