transcricao

transcricao

Transcrição de áudio com Whisper (e opcionalmente diarização com pyannote).

Modo nuvem

Whisper Large V3 Turbo (rápido) ou WhisperX (timestamps a nível de palavra + diarização integrada).

Modo local

Usa faster-whisper em CPU ou GPU. Diarização local não é suportada por default — o extra [transcricao] traz só faster-whisper para manter o footprint pequeno. A formatação dos arquivos SRT/VTT/TXT vem do labdados_core.transcricao — mesmas funções rodadas pelo serviço no escritório, sem chance de divergir.

Functions

Name Description
transcricao Transcreve áudio para texto/legenda.

transcricao

transcricao.transcricao(
    arquivos,
    *,
    saida=None,
    api_key=None,
    modelo='whisper-large-v3-turbo',
    idioma='pt',
    diarizacao=False,
    num_falantes=0,
    formato='srt',
    timestamps=True,
    beam_size=5,
    local=False,
    modelo_local='large-v3',
    client=None,
    progress=True,
)

Transcreve áudio para texto/legenda.

Parameters

Name Type Description Default
arquivos PathLike | list[PathLike] Arquivo único, lista, ou pasta com áudios. required
saida PathLike | None Pasta de saída. None
api_key str | None Chave de API (modo nuvem). None
modelo str Modelo na nuvem: "whisper-large-v3-turbo" (rápido) ou "whisperx" (timestamps + diarização). 'whisper-large-v3-turbo'
idioma str ISO 639-1 ou "auto". Default: português. 'pt'
diarizacao bool Se True, separa falantes (SPEAKER_00, SPEAKER_01…). Requer modelo="whisperx" na nuvem. False
num_falantes int Estimativa de quantas pessoas falam (0 = detectar). Só vale com diarizacao=True. 0
formato OUTPUT_FORMAT "txt", "srt" (default), ou "vtt". 'srt'
timestamps bool Inclui [hh:mm:ss] no início de cada trecho (txt apenas — srt/vtt sempre têm timestamps). True
beam_size int Beam search do Whisper. Default 5; só mexa se houver erros sistemáticos. 5
local bool Se True, usa faster-whisper no próprio computador. Requer pip install labdados[transcricao]. Diarização local não suportada (use modo nuvem ou pyannote separado). False
modelo_local str Modelo do faster-whisper ("tiny", "base", "small", "medium", "large-v3"). Mais alto = mais preciso e mais lento; large-v3 precisa de ~10GB de VRAM em GPU ou bastante RAM. 'large-v3'
client Client | None Cliente reaproveitado (modo nuvem). None
progress bool Spinner no stderr. True

Returns

Name Type Description
Path Pasta de saída.

Examples

Modo nuvem com diarização:

>>> import labdados
>>> labdados.transcricao(
...     arquivos="audios/",
...     api_key="sk_lab_...",
...     modelo="whisperx",
...     diarizacao=True,
...     formato="srt",
... )

Modo local com modelo small em CPU:

>>> labdados.transcricao(
...     arquivos="reuniao.mp3",
...     local=True,
...     modelo_local="small",
...     idioma="pt",
... )