from pydantic import BaseModel, validator
from typing import Any, Dict, Union, Optional,List


class ChatRequest(BaseModel):
    hilo_conversacion: str
    prompt: str
    idcliente: int
    id_asistente: str
    volume_up: str
    
# Definir la estructura de salida
class ChatResponse(BaseModel):
    Exito: str
    Respuesta: str
    Tarea_Creada: str
    input_tokens: int
    output_tokens: int
    total_tokens: int
    inference_time_ms: int
    thread_id: str
    ruta_audio: Optional[str] = None


class DownloadRequest(BaseModel):
    model_repos: list[str]

class DownloadResponse(BaseModel):
    status: str
    downloaded_models: list[str]
    errors: list[str]