Downloads · 30 days
38
100% of all-time downloads
onsdevops/tiago-transcricao
tiago-transcricao is a automatic speech recognition model from onsdevops. Use it when you need speech turned into text. It is set up for transformers. The card lists the license as apache-2.0.
Modelo de reconhecimento de fala (ASR) ajustado a partir do openai/whisper-medium para transcrever comunicação operativa em português do Brasil — o diálogo por rádio e telefone entre centros de operação e agentes do s…
Downloads · 30 days
38
100% of all-time downloads
All-time downloads
38
Public
Parameters
764M
3.1 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors3.1 GB · 100%
From the Hugging Face model README
Modelo de reconhecimento de fala (ASR) ajustado a partir do
openai/whisper-medium para transcrever
comunicação operativa em português do Brasil — o diálogo por rádio e telefone entre
centros de operação e agentes do setor elétrico.
Faz parte do TIAGO Transcrição, o mecanismo de transcrição de áudio da sala de controle do ONS (Operador Nacional do Sistema Elétrico). O código do pipeline completo — API, worker, diarização, enriquecimento por LLM e infraestrutura — está em ONSBR/TIAGO-Transcricao.
Áudio operativo é um caso difícil para ASR de propósito geral: canal estreito e ruidoso, sobreposição de fala, jargão técnico denso (equipamentos, instalações, manobras) e protocolo de comunicação próprio. Um modelo generalista erra justamente nos termos que importam para o registro operativo.
O ajuste corrige isso no vocabulário e no estilo de fala do domínio.
from transformers import pipeline
asr = pipeline(
"automatic-speech-recognition",
model="onsdevops/tiago-transcricao",
return_timestamps=True,
chunk_length_s=30,
)
resultado = asr("audio.wav", generate_kwargs={"language": "portuguese", "task": "transcribe"})
print(resultado["text"])
O repositório é autocontido: traz os pesos, as configurações e os arquivos de tokenizer,
então from_pretrained funciona sem depender do modelo base.
A subpasta segmentation/ traz o modelo de segmentação de falantes (PyanNet) ajustado
no mesmo domínio, usado pelo pipeline para diarização. Ele substitui o componente de
segmentação de um pipeline pyannote; não é um modelo de ASR e não funciona sozinho.
# no pipeline completo, ver o repositorio do codigo
from huggingface_hub import snapshot_download
snapshot_download("onsdevops/tiago-transcricao", allow_patterns="segmentation/*")
Avaliação interna sobre um conjunto de 215 áudios de comunicação operativa real, com transcrição de referência anotada à mão. Comparação com a solução comercial anterior sobre os mesmos áudios, após a mesma normalização de texto (minúsculas, sem acentos nem pontuação):
| Métrica | Solução anterior | Este modelo |
|---|---|---|
| WER ↓ | 0,414 | 0,406 |
| MER ↓ | 0,404 | 0,354 |
| CER ↓ | 0,329 | 0,283 |
| WIL ↓ | 0,483 | 0,475 |
| WIP ↑ | 0,517 | 0,525 |
Leia com cuidado: o modelo fica à frente nas cinco métricas, mas a margem em WER é estreita (0,406 contra 0,414, com desvios-padrão em torno de 0,2) e mais folgada em CER e MER. O comparativo é de um experimento interno, num domínio estreito, e não sustenta afirmação geral sobre nenhuma solução. Não há intervalo de confiança calculado, e os desvios são altos. Trate como ordem de grandeza, não como superioridade estabelecida.
O WER absoluto de ~0,4 reflete a dificuldade do material: áudio de rádio comprimido, com ruído de fundo e sobreposição de vozes.
openai/whisper-medium (764M parâmetros)Nota de reprodutibilidade: 5000 passos com batch 48 correspondem a muitas épocas sobre o conjunto de treino, bem acima do usual para ajuste de ASR, e os splits não fixam semente. Quem for reproduzir deve revisar isso.
whisper-medium, porque o
ajuste especializa o vocabulário.Apache 2.0.
Mantido pela Comunidade de IA do ONS — [email protected]. Defeitos e sugestões: as issues do repositório de código.