@@ -309,6 +309,12 @@ def _EvaluationRunMetric_from_vertex(
309309 ["metric_config" ],
310310 _UnifiedMetric_from_vertex (getv (from_object , ["metricConfig" ]), to_object ),
311311 )
312+ if getv (from_object , ["metricResourceName" ]) is not None :
313+ setv (
314+ to_object ,
315+ ["metric_resource_name" ],
316+ getv (from_object , ["metricResourceName" ]),
317+ )
312318
313319 return to_object
314320
@@ -327,6 +333,12 @@ def _EvaluationRunMetric_to_vertex(
327333 ["metricConfig" ],
328334 _UnifiedMetric_to_vertex (getv (from_object , ["metric_config" ]), to_object ),
329335 )
336+ if getv (from_object , ["metric_resource_name" ]) is not None :
337+ setv (
338+ to_object ,
339+ ["metricResourceName" ],
340+ getv (from_object , ["metric_resource_name" ]),
341+ )
330342
331343 return to_object
332344
@@ -415,6 +427,12 @@ def _GenerateInstanceRubricsRequest_to_vertex(
415427 getv (from_object , ["rubric_generation_spec" ]), to_object
416428 ),
417429 )
430+ if getv (from_object , ["metric_resource_name" ]) is not None :
431+ setv (
432+ to_object ,
433+ ["metricResourceName" ],
434+ getv (from_object , ["metric_resource_name" ]),
435+ )
418436
419437 if getv (from_object , ["config" ]) is not None :
420438 setv (to_object , ["config" ], getv (from_object , ["config" ]))
@@ -574,6 +592,12 @@ def _RubricGenerationSpec_to_vertex(
574592 ["rubricTypeOntology" ],
575593 getv (from_object , ["rubric_type_ontology" ]),
576594 )
595+ if getv (from_object , ["metric_resource_name" ]) is not None :
596+ setv (
597+ to_object ,
598+ ["metricResourceName" ],
599+ getv (from_object , ["metric_resource_name" ]),
600+ )
577601
578602 return to_object
579603
@@ -949,6 +973,7 @@ def _generate_rubrics(
949973 self ,
950974 * ,
951975 contents : list [genai_types .ContentOrDict ],
976+ metric_resource_name : Optional [str ] = None ,
952977 predefined_rubric_generation_spec : Optional [
953978 types .PredefinedMetricSpecOrDict
954979 ] = None ,
@@ -963,6 +988,7 @@ def _generate_rubrics(
963988 contents = contents ,
964989 predefined_rubric_generation_spec = predefined_rubric_generation_spec ,
965990 rubric_generation_spec = rubric_generation_spec ,
991+ metric_resource_name = metric_resource_name ,
966992 config = config ,
967993 )
968994
@@ -1463,6 +1489,7 @@ def generate_rubrics(
14631489 generator_model_config : Optional ["genai_types.AutoraterConfigOrDict" ] = None ,
14641490 rubric_content_type : Optional ["types.RubricContentType" ] = None ,
14651491 rubric_type_ontology : Optional [list [str ]] = None ,
1492+ metric_resource_name : Optional [str ] = None ,
14661493 predefined_spec_name : Optional [Union [str , "types.PrebuiltMetric" ]] = None ,
14671494 metric_spec_parameters : Optional [dict [str , Any ]] = None ,
14681495 config : Optional [types .RubricGenerationConfigOrDict ] = None ,
@@ -1498,6 +1525,7 @@ def generate_rubrics(
14981525 generated. Only used if `prompt_template` is provided.
14991526 rubric_type_ontology: Optional. A pre-defined list of allowed types
15001527 for generated rubrics. Only used if `prompt_template` is provided.
1528+ metric_resource_name: Optional. The resource name of the metric definition.
15011529 predefined_spec_name: Optional. The name of a Predefined Metric to use
15021530 for rubric generation (e.g., "general_quality_v1") or a types.PrebuiltMetric object.
15031531 Mutually exclusive with `prompt_template` and its related parameters.
@@ -1601,6 +1629,8 @@ def generate_rubrics(
16011629 }
16021630 spec_dict = {k : v for k , v in spec_dict .items () if v is not None }
16031631 rubric_gen_spec = types .RubricGenerationSpec .model_validate (spec_dict )
1632+ elif metric_resource_name :
1633+ pass
16041634 else :
16051635 raise ValueError (
16061636 "Either predefined_spec_name or prompt_template must be provided."
@@ -1626,6 +1656,7 @@ def generate_rubrics(
16261656 contents = contents ,
16271657 rubric_generation_spec = rubric_gen_spec ,
16281658 predefined_rubric_generation_spec = predefined_spec ,
1659+ metric_resource_name = metric_resource_name ,
16291660 config = config ,
16301661 )
16311662 rubric_group = {rubric_group_name : response .generated_rubrics }
0 commit comments