Сервис для хранения файлов аудио, индексации файлов, записи и выдачи результатов распознавания
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

45 lines
961 B

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