autogluon.multimodal 1.1.2b20241031__py3-none-any.whl → 1.1.2b20241107__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -115,6 +115,7 @@ model:
115
115
  max_img_num_per_col: 1
116
116
  output_bbox_format: "xyxy" # now support xyxy or xywh, for bbox format details see https://keras.io/api/keras_cv/bounding_box/formats/
117
117
  frozen_layers: null
118
+ coco_root: null
118
119
 
119
120
  mmocr_text_detection:
120
121
  checkpoint_name: "TextSnake"
@@ -74,6 +74,8 @@ class ObjectDetectionLearner(BaseLearner):
74
74
  )
75
75
  check_if_packages_installed(problem_type=self._problem_type)
76
76
 
77
+ self._config = self.get_config_per_run(config=self._config, hyperparameters=hyperparameters)
78
+
77
79
  self._output_shape = num_classes
78
80
  self._classes = classes
79
81
  self._sample_data_path = sample_data_path
@@ -102,10 +104,18 @@ class ObjectDetectionLearner(BaseLearner):
102
104
  def setup_detection_train_tuning_data(self, max_num_tuning_data, seed, train_data, tuning_data):
103
105
  if isinstance(train_data, str):
104
106
  self._detection_anno_train = train_data
105
- train_data = from_coco_or_voc(train_data, "train") # TODO: Refactor to use convert_data_to_df
107
+ train_data = from_coco_or_voc(
108
+ train_data,
109
+ "train",
110
+ coco_root=self._config.model.mmdet_image.coco_root,
111
+ ) # TODO: Refactor to use convert_data_to_df
106
112
  if tuning_data is not None:
107
113
  self.detection_anno_train = tuning_data
108
- tuning_data = from_coco_or_voc(tuning_data, "val") # TODO: Refactor to use convert_data_to_df
114
+ tuning_data = from_coco_or_voc(
115
+ tuning_data,
116
+ "val",
117
+ coco_root=self._config.model.mmdet_image.coco_root,
118
+ ) # TODO: Refactor to use convert_data_to_df
109
119
  if max_num_tuning_data is not None:
110
120
  if len(tuning_data) > max_num_tuning_data:
111
121
  tuning_data = tuning_data.sample(
@@ -114,10 +124,16 @@ class ObjectDetectionLearner(BaseLearner):
114
124
  elif isinstance(train_data, pd.DataFrame):
115
125
  self._detection_anno_train = None
116
126
  # sanity check dataframe columns
117
- train_data = object_detection_data_to_df(train_data)
127
+ train_data = object_detection_data_to_df(
128
+ train_data,
129
+ coco_root=self._config.model.mmdet_image.coco_root,
130
+ )
118
131
  if tuning_data is not None:
119
132
  self.detection_anno_train = tuning_data
120
- tuning_data = object_detection_data_to_df(tuning_data)
133
+ tuning_data = object_detection_data_to_df(
134
+ tuning_data,
135
+ coco_root=self._config.model.mmdet_image.coco_root,
136
+ )
121
137
  if max_num_tuning_data is not None:
122
138
  if len(tuning_data) > max_num_tuning_data:
123
139
  tuning_data = tuning_data.sample(
@@ -556,7 +572,9 @@ class ObjectDetectionLearner(BaseLearner):
556
572
  if isinstance(anno_file_or_df, str):
557
573
  anno_file = anno_file_or_df
558
574
  data = from_coco_or_voc(
559
- anno_file, "test"
575
+ anno_file,
576
+ "test",
577
+ coco_root=self._config.model.mmdet_image.coco_root,
560
578
  ) # TODO: maybe remove default splits hardcoding (only used in VOC)
561
579
  if os.path.isdir(anno_file):
562
580
  eval_tool = "torchmetrics" # we can only use torchmetrics for VOC format evaluation.
@@ -636,7 +654,10 @@ class ObjectDetectionLearner(BaseLearner):
636
654
  eval_tool=eval_tool,
637
655
  )
638
656
  else:
639
- data = object_detection_data_to_df(data)
657
+ data = object_detection_data_to_df(
658
+ data,
659
+ coco_root=self._config.model.mmdet_image.coco_root,
660
+ )
640
661
  return self.evaluate_coco(
641
662
  anno_file_or_df=data,
642
663
  metrics=metrics,
@@ -676,7 +697,10 @@ class ObjectDetectionLearner(BaseLearner):
676
697
  self.ensure_predict_ready()
677
698
  ret_type = BBOX
678
699
  if self._problem_type == OBJECT_DETECTION:
679
- data = object_detection_data_to_df(data)
700
+ data = object_detection_data_to_df(
701
+ data,
702
+ coco_root=self._config.model.mmdet_image.coco_root,
703
+ )
680
704
  if self._label_column not in data:
681
705
  self._label_column = None
682
706
 
@@ -41,7 +41,7 @@ class CategoricalFeatureTokenizer(nn.Module):
41
41
  References
42
42
  ----------
43
43
  1. Yury Gorishniy, Ivan Rubachev, Valentin Khrulkov, Artem Babenko,
44
- "Revisiting Deep Learning Models for Tabular Data", 2021
44
+ "Revisiting Deep Learning Models for Tabular Data", NeurIPS 2021
45
45
  https://arxiv.org/pdf/2106.11959.pdf
46
46
  2. Code: https://github.com/Yura52/tabular-dl-revisiting-models
47
47
  """
@@ -145,7 +145,9 @@ def object_detection_df_to_coco(data: pd.DataFrame, save_path: Optional[str] = N
145
145
  return output_json_dict
146
146
 
147
147
 
148
- def object_detection_data_to_df(data: Union[pd.DataFrame, dict, list, str]) -> pd.DataFrame:
148
+ def object_detection_data_to_df(
149
+ data: Union[pd.DataFrame, dict, list, str], coco_root: Optional[str] = None
150
+ ) -> pd.DataFrame:
149
151
  """
150
152
  Construct a dataframe from a data dictionary, json file path (for COCO), folder path (for VOC),
151
153
  image path (for single image), list of image paths (for multiple images)
@@ -163,7 +165,7 @@ def object_detection_data_to_df(data: Union[pd.DataFrame, dict, list, str]) -> p
163
165
  return from_list(data)
164
166
  if isinstance(data, str):
165
167
  if os.path.isdir(data) or data.endswith(".json"):
166
- return from_coco_or_voc(data)
168
+ return from_coco_or_voc(data, coco_root=coco_root)
167
169
  return from_str(data)
168
170
  if isinstance(data, pd.DataFrame):
169
171
  sanity_check_dataframe(data)
@@ -700,7 +702,7 @@ def _check_load_coco_bbox(
700
702
 
701
703
  def from_coco(
702
704
  anno_file: Optional[str],
703
- root: Optional[str] = None,
705
+ coco_root: Optional[str] = None,
704
706
  min_object_area: Optional[Union[int, float]] = 0,
705
707
  use_crowd: Optional[bool] = False,
706
708
  ):
@@ -718,7 +720,7 @@ def from_coco(
718
720
  ----------
719
721
  anno_file
720
722
  The path to the annotation file.
721
- root
723
+ coco_root
722
724
  Root of the COCO folder. The default relative root folder (if set to `None`) is `anno_file/../`.
723
725
  min_object_area
724
726
  Minimum object area to consider.
@@ -740,16 +742,19 @@ def from_coco(
740
742
  coco = COCO(anno_file)
741
743
 
742
744
  # get data root
743
- if isinstance(root, Path):
744
- root = str(root.expanduser().resolve())
745
- elif isinstance(root, str):
746
- root = os.path.abspath(os.path.expanduser(root))
747
- elif root is None:
745
+ if isinstance(coco_root, Path):
746
+ coco_root = str(coco_root.expanduser().resolve())
747
+ elif isinstance(coco_root, str):
748
+ coco_root = os.path.abspath(os.path.expanduser(coco_root))
749
+ elif coco_root is None:
748
750
  # try to use the default coco structure
749
- root = os.path.join(os.path.dirname(anno_file), "..")
750
- logger.info(f"Using default root folder: {root}. Specify `root=...` if you feel it is wrong...")
751
+ coco_root = os.path.join(os.path.dirname(anno_file), "..")
752
+ logger.info(
753
+ f"Using default root folder: {coco_root}. "
754
+ "Specify `model.mmdet_image.coco_root=...` in hyperparameters if you think it is wrong."
755
+ )
751
756
  else:
752
- raise ValueError("Unable to parse root: {}".format(root))
757
+ raise ValueError("Unable to parse coco_root: {}".format(coco_root))
753
758
 
754
759
  # support prediction using data with no annotations
755
760
  # note that data with annotation can be used for prediction without any changes
@@ -764,9 +769,9 @@ def from_coco(
764
769
  for entry in coco.loadImgs(image_ids):
765
770
  if "coco_url" in entry:
766
771
  dirname, filename = entry["coco_url"].split("/")[-2:]
767
- abs_path = os.path.join(root, dirname, filename)
772
+ abs_path = os.path.join(coco_root, dirname, filename)
768
773
  else:
769
- abs_path = os.path.join(root, entry["file_name"])
774
+ abs_path = os.path.join(coco_root, entry["file_name"])
770
775
  if not os.path.exists(abs_path):
771
776
  logger.warning(f"File skipped since not exists: {abs_path}.")
772
777
  continue
@@ -1146,7 +1151,7 @@ def process_voc_annotations(
1146
1151
  f.writelines("\n".join(xml_file_names))
1147
1152
 
1148
1153
 
1149
- def from_coco_or_voc(file_path: str, splits: Optional[Union[str]] = None):
1154
+ def from_coco_or_voc(file_path: str, splits: Optional[Union[str]] = None, coco_root: Optional[str] = None):
1150
1155
  """
1151
1156
  Convert the data from coco or voc format to pandas Dataframe.
1152
1157
 
@@ -1167,7 +1172,7 @@ def from_coco_or_voc(file_path: str, splits: Optional[Union[str]] = None):
1167
1172
  # VOC use dir as input
1168
1173
  return from_voc(root=file_path, splits=splits)
1169
1174
  else:
1170
- return from_coco(file_path)
1175
+ return from_coco(file_path, coco_root=coco_root)
1171
1176
 
1172
1177
 
1173
1178
  def get_coco_format_classes(sample_data_path: str):
@@ -1539,11 +1544,13 @@ def save_result_df(
1539
1544
  return result_df
1540
1545
 
1541
1546
 
1542
- def save_result_coco_format(detection_data_path, pred, result_path):
1547
+ def save_result_coco_format(detection_data_path, pred, result_path, coco_root: Optional[str] = None):
1543
1548
  coco_dataset = COCODataset(detection_data_path)
1544
1549
  result_name, _ = os.path.splitext(result_path)
1545
1550
  result_path = result_name + ".json"
1546
- coco_dataset.save_result(pred, from_coco_or_voc(detection_data_path, "test"), save_path=result_path)
1551
+ coco_dataset.save_result(
1552
+ pred, from_coco_or_voc(detection_data_path, "test", coco_root=coco_root), save_path=result_path
1553
+ )
1547
1554
  logger.info(25, f"Saved detection result to {result_path}")
1548
1555
 
1549
1556
 
@@ -1,3 +1,3 @@
1
1
  """This is the autogluon version file."""
2
- __version__ = '1.1.2b20241031'
2
+ __version__ = '1.1.2b20241107'
3
3
  __lite__ = False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: autogluon.multimodal
3
- Version: 1.1.2b20241031
3
+ Version: 1.1.2b20241107
4
4
  Summary: Fast and Accurate ML in 3 Lines of Code
5
5
  Home-page: https://github.com/autogluon/autogluon
6
6
  Author: AutoGluon Community
@@ -41,27 +41,27 @@ Requires-Dist: scikit-learn<1.5.3,>=1.4.0
41
41
  Requires-Dist: Pillow<12,>=10.0.1
42
42
  Requires-Dist: tqdm<5,>=4.38
43
43
  Requires-Dist: boto3<2,>=1.10
44
- Requires-Dist: torch<2.5,>=2.2
45
- Requires-Dist: lightning<2.4,>=2.2
46
- Requires-Dist: transformers[sentencepiece]<4.41.0,>=4.38.0
47
- Requires-Dist: accelerate<0.22.0,>=0.21.0
44
+ Requires-Dist: torch<2.6,>=2.2
45
+ Requires-Dist: lightning<2.6,>=2.2
46
+ Requires-Dist: transformers[sentencepiece]<5,>=4.38.0
47
+ Requires-Dist: accelerate<1.0,>=0.32.0
48
48
  Requires-Dist: requests<3,>=2.30
49
49
  Requires-Dist: jsonschema<4.22,>=4.18
50
50
  Requires-Dist: seqeval<1.3.0,>=1.2.2
51
51
  Requires-Dist: evaluate<0.5.0,>=0.4.0
52
- Requires-Dist: timm<0.10.0,>=0.9.5
52
+ Requires-Dist: timm<1.0.7,>=0.9.5
53
53
  Requires-Dist: torchvision<0.21.0,>=0.16.0
54
54
  Requires-Dist: scikit-image<0.25.0,>=0.19.1
55
55
  Requires-Dist: text-unidecode<1.4,>=1.3
56
56
  Requires-Dist: torchmetrics<1.3.0,>=1.2.0
57
57
  Requires-Dist: nptyping<2.5.0,>=1.4.4
58
58
  Requires-Dist: omegaconf<2.3.0,>=2.1.1
59
- Requires-Dist: autogluon.core[raytune]==1.1.2b20241031
60
- Requires-Dist: autogluon.features==1.1.2b20241031
61
- Requires-Dist: autogluon.common==1.1.2b20241031
59
+ Requires-Dist: autogluon.core[raytune]==1.1.2b20241107
60
+ Requires-Dist: autogluon.features==1.1.2b20241107
61
+ Requires-Dist: autogluon.common==1.1.2b20241107
62
62
  Requires-Dist: pytorch-metric-learning<2.4,>=1.3.0
63
63
  Requires-Dist: nlpaug<1.2.0,>=1.1.10
64
- Requires-Dist: nltk<4.0.0,>=3.4.5
64
+ Requires-Dist: nltk<3.9,>=3.4.5
65
65
  Requires-Dist: openmim<0.4.0,>=0.3.7
66
66
  Requires-Dist: defusedxml<0.7.2,>=0.7.1
67
67
  Requires-Dist: jinja2<3.2,>=3.0.3
@@ -1,11 +1,11 @@
1
- autogluon.multimodal-1.1.2b20241031-py3.8-nspkg.pth,sha256=cQGwpuGPqg1GXscIwt-7PmME1OnSpD-7ixkikJ31WAY,554
1
+ autogluon.multimodal-1.1.2b20241107-py3.8-nspkg.pth,sha256=cQGwpuGPqg1GXscIwt-7PmME1OnSpD-7ixkikJ31WAY,554
2
2
  autogluon/multimodal/__init__.py,sha256=EuWb-QmtFBKePJw4_4Kpp9dKrabv121haYw_Oiu2jfI,238
3
3
  autogluon/multimodal/constants.py,sha256=lFA03ZQeZlp8mwuXLuMOgeByljV5wPYBjN_hi6Xc8zg,8498
4
4
  autogluon/multimodal/predictor.py,sha256=VTJGcKH4Kktdm4Qq2x9oRThpfp6w_kFSjJOmQPsmB5g,40654
5
5
  autogluon/multimodal/presets.py,sha256=VR_arn7X4eiQcGcvJVmwxDopPJGvYP1W1cBZ2AOcdJM,25882
6
6
  autogluon/multimodal/problem_types.py,sha256=JPSoV3Fg-NGQansRlyT2bPZG3iIkgWo7eB8oDoAfg90,9201
7
7
  autogluon/multimodal/registry.py,sha256=vqvONWweZP44aBo1jCvlqLdL0Agn2kyTK8uXUwagZhs,3670
8
- autogluon/multimodal/version.py,sha256=tx6cpwmCPDMSmbDZ7J3YiTj8to4zDuAZYwlwmwUpHsI,90
8
+ autogluon/multimodal/version.py,sha256=H_a15z27R7xk2LlVEqVCWjJ8Z2gZ7G-G5jZGl1qOVXM,90
9
9
  autogluon/multimodal/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  autogluon/multimodal/cli/prepare_detection_dataset.py,sha256=9NCYmCUMPRWbxxbN_C7YQjMYlrAm8gbwJ3Qd-79JWH4,5218
11
11
  autogluon/multimodal/cli/voc2coco.py,sha256=LXVu9RIfOZs_1URrzO-_3Nrvb9uGEgPxCY4-B6m1coc,9605
@@ -14,7 +14,7 @@ autogluon/multimodal/configs/data/default.yaml,sha256=gsadTDJ3ZbppQ5rpA0sPhqd9Mw
14
14
  autogluon/multimodal/configs/distiller/default.yaml,sha256=DiCZYYJDEk5k03ZI-ewj9hWiKpMQbB8oqjWYavMK1wU,513
15
15
  autogluon/multimodal/configs/environment/default.yaml,sha256=Di1EohFWUoGi0bLuJfOr3bDD4ceD_ZrfDc_GJO55mpk,1235
16
16
  autogluon/multimodal/configs/matcher/default.yaml,sha256=K0ehM0uIFfKq1CeeaFcv14RBjo3khMgWKS2ymWI-V9I,218
17
- autogluon/multimodal/configs/model/default.yaml,sha256=7cLxvza8AEfWEyLfrXe89kn1pvaY5JsvgBBB38vi_xI,8731
17
+ autogluon/multimodal/configs/model/default.yaml,sha256=NgCPV01hfcG21hvmtLaiTbahTYkRi3ZmHONzsRdwjOE,8751
18
18
  autogluon/multimodal/configs/optimization/default.yaml,sha256=w4xlVS1gUK8tDXyhfDtIKabTqr_gBWSduq1y8T9CBI8,2182
19
19
  autogluon/multimodal/configs/pretrain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
20
  autogluon/multimodal/configs/pretrain/detection/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -71,7 +71,7 @@ autogluon/multimodal/learners/base.py,sha256=IUHRBzwrKqAwo9nDsqzg0rBQaFiVxfyeMnd
71
71
  autogluon/multimodal/learners/few_shot_svm.py,sha256=TXauhXr_2hWqaEwO8XhFxWRRPXDYxLpmmKYaCrxFWPM,23934
72
72
  autogluon/multimodal/learners/matching.py,sha256=gueWrqy0g9gVbyBvQOAj03JgBwbJsBXeLLtKsiTzrnU,89891
73
73
  autogluon/multimodal/learners/ner.py,sha256=0VZl_Z1O98A5mOSw8Ee8F9foaCT684DT0j1ALx-8RU4,19035
74
- autogluon/multimodal/learners/object_detection.py,sha256=JRxXaI33Um0BWGsRRKFfLy7tAfqJj2SsT_DqIL1igKo,29015
74
+ autogluon/multimodal/learners/object_detection.py,sha256=tSRKdWEnFwqOCzHoqRAPvllY0T_vwXSdInGVX70-ZD4,29856
75
75
  autogluon/multimodal/learners/semantic_segmentation.py,sha256=cy2ALYTtqeSnPo75htgr5STZ_utgkzeGxp5j4J1mScc,20183
76
76
  autogluon/multimodal/models/__init__.py,sha256=wynO5U5zY_vElZPGL10Oqb7OVkj2iovqzml22MRL3iE,842
77
77
  autogluon/multimodal/models/adaptation_layers.py,sha256=NuzwU_ghk8D2axmDuD8UEZ_HamoMSCcKMV9DB1AYWAg,38425
@@ -79,7 +79,7 @@ autogluon/multimodal/models/categorical_mlp.py,sha256=R4qNo2eJ2B4FKIpTE5HXJezT0Q
79
79
  autogluon/multimodal/models/clip.py,sha256=hbIV1jsomCZXg6RF6R5jDpxESlBq46hInQ2S5Y4gJBM,8875
80
80
  autogluon/multimodal/models/custom_transformer.py,sha256=jOqe6dSMsvhqagUc5abB2Nu5VUwODn_frtFVTIA5WgY,27581
81
81
  autogluon/multimodal/models/document_transformer.py,sha256=_-hcnR0qRyzTgEmCRmnzLSChq3l7dIiXT60uDSXXT_M,7114
82
- autogluon/multimodal/models/ft_transformer.py,sha256=KfdMDVh9B740qeozXfPFll8ZeC8jAzsgz4LdGAgFkQc,26374
82
+ autogluon/multimodal/models/ft_transformer.py,sha256=xjv4v5Rr8Iq4wJGoIMR4hmuWkN5BTRB5mU1ElC8mtQ0,26382
83
83
  autogluon/multimodal/models/huggingface_text.py,sha256=QPkxuU6d5V1XtjrSmPPPt89CW4_19QAMZHZC_lfAlQM,11871
84
84
  autogluon/multimodal/models/mlp.py,sha256=KZt10QjP_C9e6L0HUtGef8AqWFR2kxAXsZAH7_iK20Y,4456
85
85
  autogluon/multimodal/models/mmdet_image.py,sha256=gdgoyBXVyiXMDhnKwFPafpgxv4PhFXFt4PZ_TLsW22I,27112
@@ -131,15 +131,15 @@ autogluon/multimodal/utils/misc.py,sha256=WaDWN-6xCCL4tCkxMr4VMb5oiNmmBLrWo5FC3b
131
131
  autogluon/multimodal/utils/mmcv.py,sha256=Jjg5PiPqiRNJk6yWkQQlNiqT7qhStN94QjqQsZO3uVw,922
132
132
  autogluon/multimodal/utils/model.py,sha256=Z_9bev8nRk92cUZjPggVAM3R3CHFlecU-YzjkMGPUsE,21963
133
133
  autogluon/multimodal/utils/nlpaug.py,sha256=rWztiOZDbtEGBdyjkXZ0DoSEpXGKX9akpDpFnz4xIMw,2557
134
- autogluon/multimodal/utils/object_detection.py,sha256=EjLPzmq8Ge_HAtibiY5FNOChL_qAIls4PJF3PFd8kYA,50047
134
+ autogluon/multimodal/utils/object_detection.py,sha256=br3QSa3h17ZMG9MjC0iWn9n42EGD28KvtGzoDQOUaGw,50382
135
135
  autogluon/multimodal/utils/onnx.py,sha256=rblWnphKTsfbosbieJu8PsH6SMDw4on9BS8bR1plL2U,5607
136
136
  autogluon/multimodal/utils/save.py,sha256=zYIO3mYMGBvHfZcmCUaLpsQa14nVq1LPv2F76uaz89w,3951
137
137
  autogluon/multimodal/utils/visualizer.py,sha256=qAc4_36r3MBDPq1R1jBeb_gcfzIrsylL1S31sRf3wuw,22562
138
- autogluon.multimodal-1.1.2b20241031.dist-info/LICENSE,sha256=CeipvOyAZxBGUsFoaFqwkx54aPnIKEtm9a5u2uXxEws,10142
139
- autogluon.multimodal-1.1.2b20241031.dist-info/METADATA,sha256=LyeJWhLA0CjNSgQkC9QAd72niD1bkSF23N8zX4vA-Zs,12891
140
- autogluon.multimodal-1.1.2b20241031.dist-info/NOTICE,sha256=7nPQuj8Kp-uXsU0S5so3-2dNU5EctS5hDXvvzzehd7E,114
141
- autogluon.multimodal-1.1.2b20241031.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
142
- autogluon.multimodal-1.1.2b20241031.dist-info/namespace_packages.txt,sha256=giERA4R78OkJf2ijn5slgjURlhRPzfLr7waIcGkzYAo,10
143
- autogluon.multimodal-1.1.2b20241031.dist-info/top_level.txt,sha256=giERA4R78OkJf2ijn5slgjURlhRPzfLr7waIcGkzYAo,10
144
- autogluon.multimodal-1.1.2b20241031.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
145
- autogluon.multimodal-1.1.2b20241031.dist-info/RECORD,,
138
+ autogluon.multimodal-1.1.2b20241107.dist-info/LICENSE,sha256=CeipvOyAZxBGUsFoaFqwkx54aPnIKEtm9a5u2uXxEws,10142
139
+ autogluon.multimodal-1.1.2b20241107.dist-info/METADATA,sha256=UqJlg5KlO9dvhr6lf7SfaNUdBv2MCAaSv-5vcuDISps,12880
140
+ autogluon.multimodal-1.1.2b20241107.dist-info/NOTICE,sha256=7nPQuj8Kp-uXsU0S5so3-2dNU5EctS5hDXvvzzehd7E,114
141
+ autogluon.multimodal-1.1.2b20241107.dist-info/WHEEL,sha256=eOLhNAGa2EW3wWl_TU484h7q1UNgy0JXjjoqKoxAAQc,92
142
+ autogluon.multimodal-1.1.2b20241107.dist-info/namespace_packages.txt,sha256=giERA4R78OkJf2ijn5slgjURlhRPzfLr7waIcGkzYAo,10
143
+ autogluon.multimodal-1.1.2b20241107.dist-info/top_level.txt,sha256=giERA4R78OkJf2ijn5slgjURlhRPzfLr7waIcGkzYAo,10
144
+ autogluon.multimodal-1.1.2b20241107.dist-info/zip-safe,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
145
+ autogluon.multimodal-1.1.2b20241107.dist-info/RECORD,,