@@ -611,6 +611,8 @@ def _wait_for_operation(
611611 ValueError: If the operation fails.
612612 """
613613 response_operation_name = operation .name
614+ if response_operation_name is None :
615+ raise ValueError ("Dataset operation name is empty." )
614616 dataset_id = response_operation_name .split ("/datasets/" )[1 ].split ("/" )[0 ]
615617 operation_id = response_operation_name .split ("/" )[- 1 ]
616618
@@ -662,6 +664,30 @@ def create_from_bigquery(
662664 """
663665 if isinstance (multimodal_dataset , dict ):
664666 multimodal_dataset = types .MultimodalDataset (** multimodal_dataset )
667+ if (
668+ not hasattr (multimodal_dataset , "metadata" )
669+ or multimodal_dataset .metadata is None
670+ ):
671+ raise ValueError ("Multimodal dataset metadata is required." )
672+ if (
673+ not hasattr (multimodal_dataset .metadata , "input_config" )
674+ or multimodal_dataset .metadata .input_config is None
675+ ):
676+ raise ValueError ("Multimodal dataset input config is required." )
677+ if (
678+ not hasattr (multimodal_dataset .metadata .input_config , "bigquery_source" )
679+ or multimodal_dataset .metadata .input_config .bigquery_source is None
680+ ):
681+ raise ValueError (
682+ "Multimodal dataset input config bigquery source is required."
683+ )
684+ if (
685+ not hasattr (multimodal_dataset .metadata .input_config .bigquery_source , "uri" )
686+ or multimodal_dataset .metadata .input_config .bigquery_source .uri is None
687+ ):
688+ raise ValueError (
689+ "Multimodal dataset input config bigquery source uri is required."
690+ )
665691 if not multimodal_dataset .metadata .input_config .bigquery_source .uri .startswith (
666692 "bq://"
667693 ):
@@ -710,6 +736,30 @@ def update_multimodal_dataset(
710736 """
711737 if isinstance (multimodal_dataset , dict ):
712738 multimodal_dataset = types .MultimodalDataset (** multimodal_dataset )
739+ if (
740+ not hasattr (multimodal_dataset , "metadata" )
741+ or multimodal_dataset .metadata is None
742+ ):
743+ raise ValueError ("Multimodal dataset metadata is required." )
744+ if (
745+ not hasattr (multimodal_dataset .metadata , "input_config" )
746+ or multimodal_dataset .metadata .input_config is None
747+ ):
748+ raise ValueError ("Multimodal dataset input config is required." )
749+ if (
750+ not hasattr (multimodal_dataset .metadata .input_config , "bigquery_source" )
751+ or multimodal_dataset .metadata .input_config .bigquery_source is None
752+ ):
753+ raise ValueError (
754+ "Multimodal dataset input config bigquery source is required."
755+ )
756+ if (
757+ not hasattr (multimodal_dataset .metadata .input_config .bigquery_source , "uri" )
758+ or multimodal_dataset .metadata .input_config .bigquery_source .uri is None
759+ ):
760+ raise ValueError (
761+ "Multimodal dataset input config bigquery source uri is required."
762+ )
713763 if not multimodal_dataset .metadata .input_config .bigquery_source .uri .startswith (
714764 "bq://"
715765 ):
@@ -1258,6 +1308,8 @@ async def _wait_for_operation(
12581308 ValueError: If the operation fails.
12591309 """
12601310 response_operation_name = operation .name
1311+ if response_operation_name is None :
1312+ raise ValueError ("Dataset operation name is empty." )
12611313 dataset_id = response_operation_name .split ("/datasets/" )[1 ].split ("/" )[0 ]
12621314 operation_id = response_operation_name .split ("/" )[- 1 ]
12631315
@@ -1309,6 +1361,30 @@ async def create_from_bigquery(
13091361 """
13101362 if isinstance (multimodal_dataset , dict ):
13111363 multimodal_dataset = types .MultimodalDataset (** multimodal_dataset )
1364+ if (
1365+ not hasattr (multimodal_dataset , "metadata" )
1366+ or multimodal_dataset .metadata is None
1367+ ):
1368+ raise ValueError ("Multimodal dataset metadata is required." )
1369+ if (
1370+ not hasattr (multimodal_dataset .metadata , "input_config" )
1371+ or multimodal_dataset .metadata .input_config is None
1372+ ):
1373+ raise ValueError ("Multimodal dataset input config is required." )
1374+ if (
1375+ not hasattr (multimodal_dataset .metadata .input_config , "bigquery_source" )
1376+ or multimodal_dataset .metadata .input_config .bigquery_source is None
1377+ ):
1378+ raise ValueError (
1379+ "Multimodal dataset input config bigquery source is required."
1380+ )
1381+ if (
1382+ not hasattr (multimodal_dataset .metadata .input_config .bigquery_source , "uri" )
1383+ or multimodal_dataset .metadata .input_config .bigquery_source .uri is None
1384+ ):
1385+ raise ValueError (
1386+ "Multimodal dataset input config bigquery source uri is required."
1387+ )
13121388 if not multimodal_dataset .metadata .input_config .bigquery_source .uri .startswith (
13131389 "bq://"
13141390 ):
@@ -1353,6 +1429,30 @@ async def update_multimodal_dataset(
13531429 """
13541430 if isinstance (multimodal_dataset , dict ):
13551431 multimodal_dataset = types .MultimodalDataset (** multimodal_dataset )
1432+ if (
1433+ not hasattr (multimodal_dataset , "metadata" )
1434+ or multimodal_dataset .metadata is None
1435+ ):
1436+ raise ValueError ("Multimodal dataset metadata is required." )
1437+ if (
1438+ not hasattr (multimodal_dataset .metadata , "input_config" )
1439+ or multimodal_dataset .metadata .input_config is None
1440+ ):
1441+ raise ValueError ("Multimodal dataset input config is required." )
1442+ if (
1443+ not hasattr (multimodal_dataset .metadata .input_config , "bigquery_source" )
1444+ or multimodal_dataset .metadata .input_config .bigquery_source is None
1445+ ):
1446+ raise ValueError (
1447+ "Multimodal dataset input config bigquery source is required."
1448+ )
1449+ if (
1450+ not hasattr (multimodal_dataset .metadata .input_config .bigquery_source , "uri" )
1451+ or multimodal_dataset .metadata .input_config .bigquery_source .uri is None
1452+ ):
1453+ raise ValueError (
1454+ "Multimodal dataset input config bigquery source uri is required."
1455+ )
13561456 if not multimodal_dataset .metadata .input_config .bigquery_source .uri .startswith (
13571457 "bq://"
13581458 ):
0 commit comments