Saltar a contenido

Dominio

Esta página documenta los modelos de dominio y tipos de datos del sistema.

Modelos de Datos (Pydantic V2)

Los modelos de datos de Voice2Machine utilizan Pydantic V2 para validación estricta y serialización rápida.

Modelos de API (Schemas)

Se encuentran en v2m.api.schemas y definen los contratos de entrada/salida para la API REST y WebSockets.

Clase Propósito
StatusResponse Estado actual del daemon (idle, recording, etc)
ToggleResponse Resultado de iniciar/detener grabación
TranscriptionUpdate Evento de streaming con texto provisional
LLMResponse Resultado del procesamiento de texto

CorrectionResult

Modelo de salida estructurada para refinamiento de texto (usado por los Workflows de LLM).

class CorrectionResult(BaseModel):
    corrected_text: str = Field(description="Texto corregido")
    explanation: str | None = Field(default=None, description="Cambios realizados")

Excepciones

El sistema utiliza una jerarquía de excepciones basada en ApplicationError.

Excepción Contexto
AudioError Fallos en el hardware o buffer de audio
TranscriptionError Fallos en el modelo Whisper o VRAM
LLMProviderError Error de conexión o cuota con Gemini/Ollama
ConfigError Error de validación en config.toml