from typing import Optional from pydantic import BaseModel, Field class BaseEvaluationRequest(BaseModel): test_size: float = Field(0.2, ge=0.0, le=1.0, description="Size of the test split (between 0 and 1)") test_seed: int = Field(42, ge=0, description="Random seed for reproducibility") class TextEvaluationRequest(BaseEvaluationRequest): dataset_name: str = Field("QuotaClimat/frugalaichallenge-text-train", description="The name of the dataset on HuggingFace Hub") class ImageEvaluationRequest(BaseEvaluationRequest): dataset_name: str = Field("pyronear/pyro-sdis", description="The name of the dataset on HuggingFace Hub") class AudioEvaluationRequest(BaseEvaluationRequest): dataset_name: str = Field("rfcx/frugalai", description="The name of the dataset on HuggingFace Hub")