| from typing import List, Optional, Union | |
| from .artifact import Artifact | |
| from .collections import Collection | |
| from .dataclass import OptionalField | |
| from .loaders import Loader | |
| from .operator import StreamingOperator | |
| from .splitters import RandomSampler, Sampler | |
| from .task import FormTask | |
| class TaskCard(Artifact): | |
| loader: Loader | |
| task: FormTask | |
| preprocess_steps: Optional[List[Union[StreamingOperator, str]]] = None | |
| templates: Collection = None | |
| instructions: Collection = None | |
| sampler: Sampler = OptionalField(default_factory=RandomSampler) | |
| class ICLCard(Artifact): | |
| demos_pool_name: str = "demos_pool" | |
| demos_pool_size: int = None | |
| demos_field: str = "demos" | |
| num_demos: int = None | |
| sampler_type: str = "random" | |
| instruction_item: Union[str, int] = None | |
| template_item: Union[str, int] = None | |