from pydantic import BaseModel, Field from typing import Optional, Dict, Any from datetime import datetime import uuid class AiConclusionBase(BaseModel): audio_id: uuid.UUID conclusion: Optional[Dict[str, Any]] = None class AiConclusionCreate(AiConclusionBase): pass class AiConclusionResponse(BaseModel): id: uuid.UUID audio_id: uuid.UUID conclusion: Dict[str, Any] index_date: Optional[datetime] = None end_date: Optional[datetime] = None class Config: from_attributes = True class RecognitionStatus(BaseModel): task_id: str audio_id: uuid.UUID status: str # pending, processing, completed, error result: Optional[Dict[str, Any]] = None error: Optional[str] = None class RecognitionStartResponse(BaseModel): status: str message: str task_id: str audio_id: uuid.UUID class MessageResponse(BaseModel): message: str class ErrorResponse(BaseModel): detail: str