Phase 12 - Lesson 19
Modelos de Linguagem de Áudio: O Arco do Whisper ao Audio Flamingo 3
O Whisper (Radford et al., dezembro de 2022) consolidou o reconhecimento de fala — 680 mil horas de fala multilíngue fracamente supervisionada, um transformador codificador-decodificador simples, um benchmark que fez com que todo lançamento subsequente de ASR o citasse. Mas reconhecimento não é raciocínio. Perguntar "quais instrumentos estão nesta gravação" ou "qual emoção o falante está expressando" ou "o que aconteceu no minuto 3" exige compreensão de áudio, não transcrição. Qwen-Audio, SALMONN, LTU e o Audio Flamingo 3 da NVIDIA (AF3, julho de 2025) construíram progressivamente essa pilha: manter codificadores da classe Whisper, acoplar Q-formers, treinar em dados de instrução áudio-texto, adicionar raciocínio de cadeia de pensamento. Esta lição percorre esse arco.
Tipo: Build Linguagens: Python (stdlib, espectrograma log-Mel + esqueleto de Q-former de áudio) Pré-requisitos: Phase 6 (Speech and Audio), Phase 12 · 03 (Q-Former) Tempo: ~180 minutos
Objetivos de Aprendizagem
- Computar um espectrograma log-Mel a partir de uma forma de onda: janelamento, FFT, bancos de filtros, transformação logarítmica.
- Comparar opções de codificador: codificador Whisper, BEATs, híbrido AF-Whisper. Quando cada um vence.
- Construir um Q-former de áudio: N consultas (queries) aprendíveis prestando atenção cruzada (cross-attending) a patches de espectrograma.
- Explicar o treinamento em cascata (Whisper-depois-LLM) vs áudio-LLM de ponta a ponta (end-to-end): por que o end-to-end escala melhor para raciocínio.
O Problema
O reconhecimento de fala foi resolvido pelo Whisper. O OCR de áudio é uma commodity. Mas a "commodity" termina na transcrição. Se o modelo não consegue raciocinar sobre o que ouviu — tempo, falantes, emoção, estrutura musical, sons ambientes — a transcrição por si só não pode impulsionar recursos de produtos.
Três caminhos óbvios:
Cascata: O Whisper transcreve, o LLM raciocina sobre a transcrição. Funciona para cenários de fala pura. Falha para música, áudio ambiental, sobreposição de vários falantes, emoção.
Áudio-LLM de ponta a ponta (end-to-end): um codificador de áudio alimenta tokens de áudio diretamente em um LLM, pulando a transcrição. Preserva informações acústicas (emoção, falante, ambiente). Precisa de novos dados de treinamento.
Híbrido: codificador de áudio + decodificador de texto que pode tanto transcrever quanto raciocinar. O Qwen-Audio e o Audio Flamingo escolhem esse caminho.
O Conceito
Espectrograma log-Mel: a feature de entrada
Todo codificador de áudio começa com a mesma feature: um espectrograma log-Mel.
- Reamostrar para 16 kHz.
- Transformada de Fourier de tempo curto (STFT) com janelas de 25ms, salto (hop) de 10ms.
- Obter a magnitude do resultado da FFT.
- Aplicar bancos de filtros Mel (geralmente 80 filtros espaçados logaritmicamente de 0 a 8000 Hz) para mapear para a frequência perceptual.
- Compressão logarítmica (log(1 + x)) para alcance dinâmico.
Resultado: uma matriz 2D de formato (T, 80) onde T é o número de frames temporais. Para um clipe de 30 segundos a uma taxa de quadros de 100 Hz: (3000, 80).
O codificador do Whisper
O codificador do Whisper é um transformador estilo ViT de 12 camadas que processa o espectrograma log-Mel como uma sequência de frames temporais. Saída: um vetor de estado oculto (hidden-state) por frame temporal.
Para ASR, o decodificador do Whisper é um transformador de atenção cruzada (cross-attention) que gera tokens de texto condicionados à saída do codificador. Codificador-decodificador padrão.
Para ALMs (áudio-LLMs), você quer a saída do codificador como entrada para um LLM diferente. O padrão: codificador Whisper congelado (frozen), Q-former treinável, LLM congelado ou ajustado (tuned).
BEATs e codificadores específicos para áudio
O Whisper foi treinado em dados predominantemente de fala. Ele é mais fraco para música e áudio ambiental.
O BEATs (Chen et al., 2022) é um transformador autossupervisionado treinado no AudioSet. Captura música e sons ambientes melhor do que o Whisper com a mesma quantidade de parâmetros.
AF-Whisper (o híbrido do Audio Flamingo 3): concatena as características (features) do Whisper + BEATs como a entrada de áudio. O Whisper carrega o sinal linguístico, o BEATs carrega o sinal acústico.
Q-former de áudio
Mesmo padrão do Q-former visual do BLIP-2. Um número fixo de consultas aprendíveis (geralmente 32 ou 64) faz atenção cruzada sobre os frames de saída do codificador de áudio. As consultas tornam-se tokens de áudio consumidos pelo LLM.
Etapa de alinhamento do treinamento: apenas o Q-former, perdas contrastivas + de legenda (captioning) em pares áudio-texto (AudioCaps, Clotho). Etapa de instrução: ponta a ponta (end-to-end), descongelar o LLM, treinar em dados de instrução.
O arco — SALMONN, Qwen-Audio, AF3
SALMONN (Tang et al., 2023): Whisper + BEATs + Q-former + LLaMA. O primeiro áudio-LLM aberto com capacidade séria de raciocínio. Benchmarks no MMAU mostram ~0.55 composto.
Qwen-Audio (Chu et al., 2023): arquitetura semelhante, treinado em um conjunto de dados mais rico, ajustado para diálogo multi-turno. MMAU ~0.60.
LTU — Listen, Think, Understand (Gong et al., 2023): dados de raciocínio explícito, foco em cadeia de pensamento sobre clipes de áudio. Menor, mas mais focado.
Audio Flamingo 3 (Goel et al., julho de 2025): o SOTA aberto atual. Backbone de LLM de 8B (Qwen2 7B), codificador Whisper-large concatenado com o BEATs, Q-former de 64 consultas, treinamento em mais de 1 milhão de pares de instrução áudio-texto. MMAU 0.72, iguala-se à fronteira proprietária em algumas subtarefas.
O AF3 também introduz cadeia de pensamento sob demanda para áudio: o modelo pode opcionalmente emitir tokens de pensamento ("deixe-me identificar os instrumentos primeiro: ...") antes da resposta final. A precisão em tarefas de raciocínio complexo aumenta de 3 a 5 pontos quando o pensamento está ativado.
Cascata vs ponta a ponta (end-to-end)
Pipeline em cascata:
- O Whisper transcreve áudio → texto.
- O LLM raciocina sobre o texto.
Funciona perfeitamente para "resuma este podcast". Falha para:
- "Qual é o clima desta música?" — o clima está no som, não nas palavras.
- "Quem está falando, Alice ou Bob?" — requer identificação do falante.
- "Em qual segundo ocorre a explosão?" — a localização temporal é perdida no texto.
- "Este áudio é real ou gerado?" — a detecção de deepfake precisa de características acústicas.
O formato de ponta a ponta (end-to-end) preserva o sinal acústico. O Qwen-Audio e o AF3 lidam com música, ambiente e emoção nativamente.
Receita de produção para 2026
Para um novo produto de compreensão de áudio:
- Cascata se: o objetivo for a transcrição, sem música, sem inferência de emoção.
- AF3 / família Qwen-Audio se: música, emoção, múltiplos falantes ou raciocínio complexo de áudio.
Em cascata é mais barato e simples. Ponta a ponta é mais capaz.
MMAU — o benchmark de raciocínio de áudio
O MMAU (Massive Multimodal Audio Understanding) é o benchmark de raciocínio de áudio para 2024-2025:
- 10.000 pares de perguntas e respostas áudio-texto envolvendo fala, música e sons ambientes.
- Abrange classificação, raciocínio temporal, raciocínio causal e perguntas e respostas abertas.
- Testa o que as pipelines em cascata sistematicamente perdem.
SOTA aberto (AF3) em 0.72; fronteira proprietária ~0.78 (Gemini 2.5 Pro, Claude Opus 4.7). A diferença é menor do que a diferença do VideoMME entre modelos abertos e fechados, indicando que os áudio-LLMs estão amadurecendo.
Use
code/main.py:
- Implementa a computação do espectrograma log-Mel na biblioteca padrão (stdlib): janelamento, DFT ingênua, banco de filtros Mel.
- Esqueleto do Q-former de áudio: dados os frames de saída do codificador, computa Q, K, V, atenção e emite N tokens.
- Comparação entre cascata e ponta a ponta em uma tarefa simples (toy task).
Envie
Esta lição produz outputs/skill-audio-llm-pipeline-picker.md. Dada uma tarefa de áudio (transcrição, marcação de música, inferência de emoção, diarização de múltiplos falantes, classificação ambiental), ela escolhe cascata, AF3 de ponta a ponta ou um híbrido.
Exercícios
Compute a dimensão do espectrograma log-Mel para um clipe de 30 segundos a 16kHz, janela de 25ms, salto de 10ms, 80 faixas Mel. Como isso muda a 48kHz?
Por que o Whisper tem desempenho abaixo do esperado em música? Quais características de áudio o BEATs captura que o Whisper não captura?
Q-former de áudio com 64 consultas vs 32: em qual complexidade de tarefa o uso de 64 compensa? O de 32 economiza computação para quê?
Leia a Seção 4 do AF3 sobre o pensamento sob demanda. Proponha três tarefas de áudio onde a cadeia de pensamento ajuda mais.
Implemente uma pipeline mínima de diarização usando a saída do AF3. Como você sinaliza as mudanças de falante?
Termos-Chave
| Termo | O que as pessoas dizem | O que realmente significa |
|---|---|---|
| Espectrograma log-Mel | "Características Mel" | Matriz 2D (tempo, frequência) de valores de log-magnitude após bancos de filtros Mel |
| Q-former de áudio | "Audio Perceiver" | Gargalo de atenção cruzada da saída do codificador de áudio para consultas de comprimento fixo que alimentam o LLM |
| Em cascata | "ASR-depois-LLM" | Pipeline onde o Whisper transcreve e um LLM de texto raciocina; perde informações acústicas |
| Ponta a ponta | "Áudio-LLM" | As características de áudio entram no LLM diretamente via Q-former; preserva o sinal acústico |
| BEATs | "Codificador de áudio AudioSet" | Transformador SSL treinado no AudioSet; forte em música + sons ambientais |
| MMAU | "Banco de raciocínio de áudio" | 10 mil pares de perguntas e respostas envolvendo fala, música e ambiente; padrão de avaliação de 2024 |
| Pensamento sob demanda | "CoT de Áudio" | O modelo pode opcionalmente emitir tokens de raciocínio antes da resposta final, aumentando a precisão em 3-5 pontos |