@@ -2002,7 +2002,7 @@ def send_to_annotate_from_catalog(self, destination_project_id: str,
20022002 task_queue_id : Optional [str ],
20032003 batch_name : str ,
20042004 data_rows : Union [DataRowIds , GlobalKeys ],
2005- params : SendToAnnotateFromCatalogParams ):
2005+ params : Dict [ str , Any ] ):
20062006 """
20072007 Sends data rows from catalog to a specified project for annotation.
20082008
@@ -2033,6 +2033,8 @@ def send_to_annotate_from_catalog(self, destination_project_id: str,
20332033
20342034 """
20352035
2036+ validated_params = SendToAnnotateFromCatalogParams (** params )
2037+
20362038 mutation_str = """mutation SendToAnnotateFromCatalogPyApi($input: SendToAnnotateFromCatalogInput!) {
20372039 sendToAnnotateFromCatalog(input: $input) {
20382040 taskId
@@ -2044,26 +2046,14 @@ def send_to_annotate_from_catalog(self, destination_project_id: str,
20442046 task_queue_id )
20452047 data_rows_query = self .build_catalog_query (data_rows )
20462048
2047- source_model_run_id = params .get ("source_model_run_id" , None )
2048- predictions_ontology_mapping = params .get (
2049- "predictions_ontology_mapping" , None )
20502049 predictions_input = build_predictions_input (
2051- predictions_ontology_mapping ,
2052- source_model_run_id ) if source_model_run_id else None
2050+ validated_params .predictions_ontology_mapping ,
2051+ validated_params .source_model_run_id
2052+ ) if validated_params .source_model_run_id else None
20532053
2054- source_project_id = params .get ("source_project_id" , None )
2055- annotations_ontology_mapping = params .get (
2056- "annotations_ontology_mapping" , None )
20572054 annotations_input = build_annotations_input (
2058- annotations_ontology_mapping ,
2059- source_project_id ) if source_project_id else None
2060-
2061- batch_priority = params .get ("batch_priority" , 5 )
2062- exclude_data_rows_in_project = params .get (
2063- "exclude_data_rows_in_project" , False )
2064- override_existing_annotations_rule = params .get (
2065- "override_existing_annotations_rule" ,
2066- ConflictResolutionStrategy .KeepExisting )
2055+ validated_params .annotations_ontology_mapping , validated_params .
2056+ source_project_id ) if validated_params .source_project_id else None
20672057
20682058 res = self .execute (
20692059 mutation_str , {
@@ -2072,18 +2062,18 @@ def send_to_annotate_from_catalog(self, destination_project_id: str,
20722062 destination_project_id ,
20732063 "batchInput" : {
20742064 "batchName" : batch_name ,
2075- "batchPriority" : batch_priority
2065+ "batchPriority" : validated_params . batch_priority
20762066 },
20772067 "destinationTaskQueue" :
20782068 destination_task_queue ,
20792069 "excludeDataRowsInProject" :
2080- exclude_data_rows_in_project ,
2070+ validated_params . exclude_data_rows_in_project ,
20812071 "annotationsInput" :
20822072 annotations_input ,
20832073 "predictionsInput" :
20842074 predictions_input ,
20852075 "conflictLabelsResolutionStrategy" :
2086- override_existing_annotations_rule ,
2076+ validated_params . override_existing_annotations_rule ,
20872077 "searchQuery" : {
20882078 "scope" : None ,
20892079 "query" : [data_rows_query ]
0 commit comments