metric / types.py
Elron's picture
Upload folder using huggingface_hub
fe70438 verified
raw
history blame
690 Bytes
from typing import Any, List, Literal, NewType, TypedDict, Union
from .type_utils import register_type
Text = NewType("Text", str)
Number = NewType("Number", Union[float, int])
class Turn(TypedDict):
role: Literal["system", "user", "agent"]
content: Text
Dialog = NewType("Dialog", List[Turn])
class Image(TypedDict):
image: Any
format: str
Video = NewType("Video", List[Image])
class Audio(TypedDict):
audio: Any
class Table(TypedDict):
header: List[str]
rows: List[List[Any]]
register_type(Text)
register_type(Number)
register_type(Turn)
register_type(Dialog)
register_type(Table)
register_type(Audio)
register_type(Image)
register_type(Video)