main
 1# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
 2
 3from typing import Union
 4from typing_extensions import Literal, TypeAlias
 5
 6from ..._models import BaseModel
 7from .python_grader import PythonGrader
 8from .label_model_grader import LabelModelGrader
 9from .score_model_grader import ScoreModelGrader
10from .string_check_grader import StringCheckGrader
11from .text_similarity_grader import TextSimilarityGrader
12
13__all__ = ["MultiGrader", "Graders"]
14
15Graders: TypeAlias = Union[StringCheckGrader, TextSimilarityGrader, PythonGrader, ScoreModelGrader, LabelModelGrader]
16
17
18class MultiGrader(BaseModel):
19    calculate_output: str
20    """A formula to calculate the output based on grader results."""
21
22    graders: Graders
23    """
24    A StringCheckGrader object that performs a string comparison between input and
25    reference using a specified operation.
26    """
27
28    name: str
29    """The name of the grader."""
30
31    type: Literal["multi"]
32    """The object type, which is always `multi`."""