Spaces:
Running
Running
| from __future__ import annotations | |
| from typing import Any, Literal | |
| from pydantic import BaseModel, ConfigDict, Field | |
| class URLInput(BaseModel): | |
| model_config = ConfigDict(extra="allow") | |
| url: str | |
| filename: str | None = None | |
| class Base64Input(BaseModel): | |
| model_config = ConfigDict(extra="allow") | |
| base64: str | |
| filename: str | None = None | |
| mime_type: str | None = None | |
| class WhisperOptions(BaseModel): | |
| model: Literal["tiny", "base", "small", "medium", "large-v3"] | None = None | |
| task: Literal["transcribe", "translate"] = "transcribe" | |
| language: str | None = None | |
| output_format: Literal["txt", "srt", "vtt", "json", "tsv"] = "json" | |
| beam_size: int = Field(default=5, ge=1, le=20) | |
| vad_filter: bool = True | |
| class YTDLPOptions(BaseModel): | |
| mode: Literal["video", "audio", "thumbnail", "metadata"] = "video" | |
| format: str | None = None | |
| audio_format: Literal["mp3", "m4a", "wav", "opus", "flac"] = "mp3" | |
| JsonDict = dict[str, Any] | |