# This file was auto-generated by Fern from our API Definition.

import typing

import typing_extensions
from ..core.serialization import FieldMetadata
from ..types.batch_run_status import BatchRunStatus
from ..types.created_at import CreatedAt
from ..types.updated_at import UpdatedAt
from .evaluation_set_run_entity import EvaluationSetRunEntityParams
from .evaluation_set_run_entity_version import EvaluationSetRunEntityVersionParams
from .evaluation_set_run_metrics import EvaluationSetRunMetricsParams
from .evaluation_set_run_options import EvaluationSetRunOptionsParams


class EvaluationSetRunParams(typing_extensions.TypedDict):
    object: typing.Literal["evaluation_set_run"]
    """
    The type of object. In this case, it will always be `"evaluation_set_run"`.
    """

    id: str
    """
    The unique identifier for this evaluation set run.
    
    Example: `"eval_set_run_Xj8mK2pL9nR4vT7qY5wZ"`
    """

    evaluation_set_id: typing_extensions.Annotated[str, FieldMetadata(alias="evaluationSetId")]
    """
    The ID of the evaluation set that was run.
    
    Example: `"ev_2LcgeY_mp2T5yPaEuq5Lw"`
    """

    entity: EvaluationSetRunEntityParams
    """
    The extractor, classifier, or splitter that was run.
    """

    entity_version: typing_extensions.Annotated[
        EvaluationSetRunEntityVersionParams, FieldMetadata(alias="entityVersion")
    ]
    """
    The version of the extractor, classifier, or splitter that was run.
    """

    metrics: EvaluationSetRunMetricsParams
    status: BatchRunStatus
    options: EvaluationSetRunOptionsParams
    """
    The options for the evaluation set run.
    """

    created_at: typing_extensions.Annotated[CreatedAt, FieldMetadata(alias="createdAt")]
    updated_at: typing_extensions.Annotated[UpdatedAt, FieldMetadata(alias="updatedAt")]
