@@ -535,6 +535,8 @@ def _wait_for_operation(
535535 multimodal_operation : Optional [types .MultimodalDatasetOperation ] = None
536536
537537 response_operation_name = operation .name
538+ if response_operation_name is None :
539+ raise ValueError ("Dataset operation name is empty." )
538540 dataset_id = response_operation_name .split ("/datasets/" )[1 ].split ("/" )[0 ]
539541 operation_id = response_operation_name .split ("/" )[- 1 ]
540542
@@ -597,6 +599,30 @@ def create_from_bigquery(
597599 """
598600 if isinstance (multimodal_dataset , dict ):
599601 multimodal_dataset = types .MultimodalDataset (** multimodal_dataset )
602+ if (
603+ not hasattr (multimodal_dataset , "metadata" )
604+ or multimodal_dataset .metadata is None
605+ ):
606+ raise ValueError ("Multimodal dataset metadata is required." )
607+ if (
608+ not hasattr (multimodal_dataset .metadata , "input_config" )
609+ or multimodal_dataset .metadata .input_config is None
610+ ):
611+ raise ValueError ("Multimodal dataset input config is required." )
612+ if (
613+ not hasattr (multimodal_dataset .metadata .input_config , "bigquery_source" )
614+ or multimodal_dataset .metadata .input_config .bigquery_source is None
615+ ):
616+ raise ValueError (
617+ "Multimodal dataset input config bigquery source is required."
618+ )
619+ if (
620+ not hasattr (multimodal_dataset .metadata .input_config .bigquery_source , "uri" )
621+ or multimodal_dataset .metadata .input_config .bigquery_source .uri is None
622+ ):
623+ raise ValueError (
624+ "Multimodal dataset input config bigquery source uri is required."
625+ )
600626 if not multimodal_dataset .metadata .input_config .bigquery_source .uri .startswith (
601627 "bq://"
602628 ):
@@ -644,6 +670,30 @@ def update_multimodal_dataset(
644670 """
645671 if isinstance (multimodal_dataset , dict ):
646672 multimodal_dataset = types .MultimodalDataset (** multimodal_dataset )
673+ if (
674+ not hasattr (multimodal_dataset , "metadata" )
675+ or multimodal_dataset .metadata is None
676+ ):
677+ raise ValueError ("Multimodal dataset metadata is required." )
678+ if (
679+ not hasattr (multimodal_dataset .metadata , "input_config" )
680+ or multimodal_dataset .metadata .input_config is None
681+ ):
682+ raise ValueError ("Multimodal dataset input config is required." )
683+ if (
684+ not hasattr (multimodal_dataset .metadata .input_config , "bigquery_source" )
685+ or multimodal_dataset .metadata .input_config .bigquery_source is None
686+ ):
687+ raise ValueError (
688+ "Multimodal dataset input config bigquery source is required."
689+ )
690+ if (
691+ not hasattr (multimodal_dataset .metadata .input_config .bigquery_source , "uri" )
692+ or multimodal_dataset .metadata .input_config .bigquery_source .uri is None
693+ ):
694+ raise ValueError (
695+ "Multimodal dataset input config bigquery source uri is required."
696+ )
647697 if not multimodal_dataset .metadata .input_config .bigquery_source .uri .startswith (
648698 "bq://"
649699 ):
@@ -1091,6 +1141,8 @@ async def _wait_for_operation(
10911141 multimodal_operation : Optional [types .MultimodalDatasetOperation ] = None
10921142
10931143 response_operation_name = operation .name
1144+ if response_operation_name is None :
1145+ raise ValueError ("Dataset operation name is empty." )
10941146 dataset_id = response_operation_name .split ("/datasets/" )[1 ].split ("/" )[0 ]
10951147 operation_id = response_operation_name .split ("/" )[- 1 ]
10961148
@@ -1153,6 +1205,30 @@ async def create_from_bigquery(
11531205 """
11541206 if isinstance (multimodal_dataset , dict ):
11551207 multimodal_dataset = types .MultimodalDataset (** multimodal_dataset )
1208+ if (
1209+ not hasattr (multimodal_dataset , "metadata" )
1210+ or multimodal_dataset .metadata is None
1211+ ):
1212+ raise ValueError ("Multimodal dataset metadata is required." )
1213+ if (
1214+ not hasattr (multimodal_dataset .metadata , "input_config" )
1215+ or multimodal_dataset .metadata .input_config is None
1216+ ):
1217+ raise ValueError ("Multimodal dataset input config is required." )
1218+ if (
1219+ not hasattr (multimodal_dataset .metadata .input_config , "bigquery_source" )
1220+ or multimodal_dataset .metadata .input_config .bigquery_source is None
1221+ ):
1222+ raise ValueError (
1223+ "Multimodal dataset input config bigquery source is required."
1224+ )
1225+ if (
1226+ not hasattr (multimodal_dataset .metadata .input_config .bigquery_source , "uri" )
1227+ or multimodal_dataset .metadata .input_config .bigquery_source .uri is None
1228+ ):
1229+ raise ValueError (
1230+ "Multimodal dataset input config bigquery source uri is required."
1231+ )
11561232 if not multimodal_dataset .metadata .input_config .bigquery_source .uri .startswith (
11571233 "bq://"
11581234 ):
@@ -1196,6 +1272,30 @@ async def update_multimodal_dataset(
11961272 """
11971273 if isinstance (multimodal_dataset , dict ):
11981274 multimodal_dataset = types .MultimodalDataset (** multimodal_dataset )
1275+ if (
1276+ not hasattr (multimodal_dataset , "metadata" )
1277+ or multimodal_dataset .metadata is None
1278+ ):
1279+ raise ValueError ("Multimodal dataset metadata is required." )
1280+ if (
1281+ not hasattr (multimodal_dataset .metadata , "input_config" )
1282+ or multimodal_dataset .metadata .input_config is None
1283+ ):
1284+ raise ValueError ("Multimodal dataset input config is required." )
1285+ if (
1286+ not hasattr (multimodal_dataset .metadata .input_config , "bigquery_source" )
1287+ or multimodal_dataset .metadata .input_config .bigquery_source is None
1288+ ):
1289+ raise ValueError (
1290+ "Multimodal dataset input config bigquery source is required."
1291+ )
1292+ if (
1293+ not hasattr (multimodal_dataset .metadata .input_config .bigquery_source , "uri" )
1294+ or multimodal_dataset .metadata .input_config .bigquery_source .uri is None
1295+ ):
1296+ raise ValueError (
1297+ "Multimodal dataset input config bigquery source uri is required."
1298+ )
11991299 if not multimodal_dataset .metadata .input_config .bigquery_source .uri .startswith (
12001300 "bq://"
12011301 ):
0 commit comments