gen_ai_hub.evaluations.models.evaluation_config module¶
- class gen_ai_hub.evaluations.models.evaluation_config.EvaluationConfig(dataset_config: Dataset, metrics: List[MetricConfig], llm: LLMModelDetails | None = None, template: str | PromptTemplateSpec | TemplateRef | None = None, orchestration_registry_reference: str | None = None, template_variable_mapping: dict | None = None, test_row_count: int | None = -1, repetitions: int | None = 1, tags: dict | None = '{}', debug_mode: bool | None = False)¶
Bases:
objectDefines the evaluation configuration object for the Evaluations flow.
This class encapsulates all configuration parameters needed to run an evaluation job, including the model/template configuration, dataset, metrics, and execution settings.
At least one of the following must be provided:
llmandtemplatecombination (using orchestration_v2 models)orchestration_registry_reference(UUID of a registered orchestration configuration)
- Parameters:
dataset_config (Dataset) – Dataset configuration object specifying the evaluation dataset
metrics (List[MetricConfig]) – List of metric configurations for evaluation
llm (Optional[LLM]) – LLM configuration from orchestration_v2 (LLMModelDetails)
template (Optional[Union[str, PromptTemplateSpec, TemplateRef]]) – Prompt template as string, PromptTemplateSpec, or TemplateRef
orchestration_registry_reference (Optional[str]) – UUID of registered orchestration configuration
template_variable_mapping (Optional[dict]) – Variable mapping for the prompt template
test_row_count (Optional[int]) – Number of rows to sample from dataset (-1 for all rows), defaults to -1
repetitions (Optional[int]) – Number of times to repeat evaluation over the dataset, defaults to 1
tags (Optional[dict]) – User-defined metadata as key-value pairs, defaults to “{}”
debug_mode (Optional[bool]) – Enable debug logs in hyperscaler output path, defaults to False
Note
This module uses orchestration_v2 models directly.
Example using TemplateRef with ID:
>>> from gen_ai_hub.evaluations.models import EvaluationConfig, Dataset, MetricConfig >>> from gen_ai_hub.orchestration_v2.models.llm_model_details import LLMModelDetails as LLM >>> from gen_ai_hub.orchestration_v2.models.template_ref import TemplateRef, TemplateRefByID >>> config = EvaluationConfig( ... dataset_config=Dataset("data/test.jsonl"), ... metrics=[MetricConfig(name="accuracy")], ... llm=LLM(name="gpt-4", version="latest"), ... template=TemplateRef(template_ref=TemplateRefByID(id="template-id-here")), ... test_row_count=100 ... )
Example using TemplateRef with scenario/name/version:
>>> from gen_ai_hub.orchestration_v2.models.template_ref import TemplateRefByScenarioNameVersion >>> config = EvaluationConfig( ... dataset_config=Dataset("data/test.jsonl"), ... metrics=[MetricConfig(name="accuracy")], ... llm=LLM(name="gpt-4", version="latest", params={"temperature": 0.7}), ... template=TemplateRef(template_ref=TemplateRefByScenarioNameVersion( ... scenario="foundation-models", name="prompt1", version="1.0" ... )), ... test_row_count=100 ... )
- __init__(dataset_config: Dataset, metrics: List[MetricConfig], llm: LLMModelDetails | None = None, template: str | PromptTemplateSpec | TemplateRef | None = None, orchestration_registry_reference: str | None = None, template_variable_mapping: dict | None = None, test_row_count: int | None = -1, repetitions: int | None = 1, tags: dict | None = '{}', debug_mode: bool | None = False)¶
Initialize an EvaluationConfig instance.
- Parameters:
dataset_config (Dataset) – Dataset configuration object
metrics (List[MetricConfig]) – List of metric configurations
llm (Optional[LLM]) – LLM object from orchestration_v2 (LLMModelDetails), defaults to None
template (Optional[Union[str, PromptTemplateSpec, TemplateRef]]) – Prompt template (string, PromptTemplateSpec, or TemplateRef), defaults to None
orchestration_registry_reference (Optional[str]) – UUID of orchestration config, defaults to None
template_variable_mapping (Optional[dict]) – Variable mapping for prompt template, defaults to None
test_row_count (Optional[int]) – Number of dataset rows to sample (-1 for all), defaults to -1
repetitions (Optional[int]) – Number of evaluation repetitions (minimum: 1), defaults to 1
tags (Optional[dict]) – Key-value metadata pairs applied to all runs, defaults to “{}”
debug_mode (Optional[bool]) – Enable debug logging, defaults to False
- Raises:
ValueError – If neither (llm, template) nor orchestration_registry_reference is provided