Files
whisperbox-transcribe/app/web/dtos.py
2023-02-08 17:26:03 +01:00

34 lines
869 B
Python

from typing import Any, Dict, Optional
from pydantic import AnyHttpUrl, BaseModel, Field
import app.shared.db.schemas as schemas
class DetailResponse(BaseModel):
detail: str
DEFAULT_RESPONSES: Dict[int | str, Dict[str, Any]] = {
401: {"model": DetailResponse, "description": "Not authenticated"}
}
class PostJobPayload(BaseModel):
url: AnyHttpUrl = Field(
description=(
"URL where the media file is available. This needs to be a direct link."
)
)
type: schemas.JobType = Field(description="Type of this job.")
# TODO: limit to locales selected by whisper.
language: Optional[str] = Field(
description=(
"Spoken language in the media file."
"While optional, this can improve output "
"by selecting a language-specific model. (applies to 'en')"
)
)