Ao vivo 18/11 · Turma 318 nov às 19:00 MSK — aula prática gratuita de agentes de IA · Turma 3 ao vivo começa 23/11Aula 18/11 →Turma 3 (23/11)

Desenvolvedor criou em 9 dias, com o Claude Code, transcrição local de chamadas para Mac

Um desenvolvedor com seis projetos paralelos criou em nove dias, junto com o Claude Code, um aplicativo para macOS: ele grava a chamada em duas faixas, transcreve e divide as falas por voz diretamente no Mac. Sem bot na chamada e sem servidores de terceiros; o código é aberto. O maior valor é a lista de armadilhas: do silêncio digital no ScreenCaptureKit a mil «Thank you» do Whisper em trechos vazios.

Processado por IA de Хабр: Машинное обучение; editado por Hamidun News
Desenvolvedor criou em 9 dias, com o Claude Code, transcrição local de chamadas para Mac
Fonte: Хабр: Машинное обучение. Colagem: Hamidun News.
Ouvir artigo
Ficha técnica e números-chave
ParâmetroDados
Fonte originalХабр: Машинное обучение ↗
Editor-chefe
Dado-chave #1No silêncio, o Whisper gera «Thank you», então as pausas precisam ser cortadas antes
Dado-chave #2Sem fones de ouvido surge eco, e o deslocamento muda 69 vezes durante uma chamada
Dado-chave #3O pipeline chega a consumir 17 GB de memória em um Mac de 16 GB

Os serviços de transcrição de chamadas na nuvem costumam funcionar do mesmo jeito: um bot entra na chamada e a gravação segue para servidores de terceiros. Para muitas equipes isso é desconfortável, sobretudo se a conversa envolve código de clientes, preços ou questões de pessoal. A alternativa é óbvia: fazer tudo localmente. Mas, como mostra uma análise recente no Habr, entre «pegar o Whisper» e «ter uma ferramenta funcional» existe um conjunto de armadilhas pouco óbvias.

O que o autor montou

O desenvolvedor, que toca cerca de seis projetos e vive em chamadas, escreveu em nove dias, junto com o Claude Code, um aplicativo para macOS. Ele grava a chamada em duas faixas (provavelmente o microfone próprio separado do áudio dos interlocutores), transcreve e separa por vozes. Tudo isso roda no próprio Mac: não há bot na chamada nem servidores externos. O código-fonte é aberto, então pode ser estudado e usado como base.

O simples fato de que uma ferramenta assim possa ser montada em nove dias com um assistente de IA é revelador. Mas o mais interessante é outra coisa: o autor pôs no artigo não números triunfais, e sim uma lista de armadilhas. Para quem faz algo parecido, essa é a parte mais útil.

As armadilhas listadas no anúncio

Segundo a descrição, há vários problemas, e eles vêm de camadas diferentes do stack.

Captura de áudio. O ScreenCaptureKit pode entregar silêncio digital em vez de áudio real, e o som do FaceTime não é ouvido. São erros da plataforma, não do modelo, e é improvável que estejam na documentação.

Eco sem fones de ouvido. Se o áudio do interlocutor toca nas caixas de som, ele entra no microfone. As duas faixas viram duas cópias da mesma conversa. O autor escreve que o deslocamento entre elas muda 69 vezes em uma única chamada, ou seja, um simples atraso fixo não elimina o eco.

Alucinações do Whisper. No silêncio, o modelo gera «Thank you», e no fim se acumulam cerca de mil. É um comportamento conhecido dos modelos dessa família: eles precisam escrever algo e escrevem a frase mais frequente dos dados de treinamento. Resolve-se no nível do pipeline: é preciso detectar a fala antes do reconhecimento e não entregar trechos vazios ao modelo.

Diarização. O autor observa que a separação por vozes às vezes divide as pessoas pelo tipo de fala, e não pela identidade. Por exemplo, falas calmas e emocionais podem ir para locutores diferentes.

Memória. Em certo momento o aplicativo ocupava 17 GB em um Mac de 16 GB. Isso significa que o sistema recorria ao swap, o que é inaceitável para um aplicativo ao vivo que roda em paralelo a uma chamada. Modelos locais facilmente consomem tudo o que há, e a memória precisa ser calculada de antemão.

À parte, o artigo traz uma comparação de modelos em fala russa. Para equipes russófonas, é talvez a seção prática mais importante, porque os benchmarks públicos são em sua maioria sobre inglês.

O que tirar disso

Primeiro: se você faz transcrição local, não confie no áudio de entrada. Verifique se as faixas não estão vazias e adicione um filtro de silêncio antes de iniciar o reconhecimento.

Segundo: o eco e os deslocamentos entre faixas é melhor tratar dinamicamente ou simplesmente recomendar fones de ouvido. Para um produto de usuário, a segunda opção costuma ser mais barata.

Terceiro: reserve um orçamento de memória. Em 16 GB, o modelo, a diarização e a própria chamada disputam o mesmo recurso.

Quarto: teste os modelos no seu idioma e nas suas gravações, e não por leaderboards.

Limitações

No anúncio há apenas teses, sem números de qualidade e velocidade. Qual modelo venceu em russo e como exatamente os problemas foram resolvidos só se vê no artigo completo e no repositório. O aplicativo, pela descrição, é voltado ao macOS, e o autor não apresenta métricas de precisão no teaser. Ainda assim, como checklist de armadilhas, o material vale a leitura antes de começar a sua própria versão.

História

Perguntas frequentes sobre a notícia

O que o autor montou?

O desenvolvedor, que toca cerca de seis projetos e vive em chamadas, escreveu em nove dias, junto com o Claude Code, um aplicativo para macOS. Ele grava a chamada em duas faixas (provavelmente o microfone próprio separado do áudio dos interlocutores), transcreve e separa por vozes. Tudo isso roda no próprio Mac: não há bot na chamada nem servidores externos. O código-fonte é aberto, então pode ser estudado e usado como base.

O que se sabe sobre As armadilhas listadas no anúncio?

Segundo a descrição, há vários problemas, e eles vêm de camadas diferentes do stack. Captura de áudio. O ScreenCaptureKit pode entregar silêncio digital em vez de áudio real, e o som do FaceTime não é ouvido. São erros da plataforma, não do modelo, e é improvável que estejam na documentação. Eco sem fones de ouvido. Se o áudio do interlocutor toca nas caixas de som, ele entra no microfone. As duas faixas viram duas cópias da mesma conversa.

O que tirar disso?

Primeiro: se você faz transcrição local, não confie no áudio de entrada. Verifique se as faixas não estão vazias e adicione um filtro de silêncio antes de iniciar o reconhecimento. Segundo: o eco e os deslocamentos entre faixas é melhor tratar dinamicamente ou simplesmente recomendar fones de ouvido. Para um produto de usuário, a segunda opção costuma ser mais barata. Terceiro: reserve um orçamento de memória. Em 16 GB, o modelo, a diarização e a própria chamada disputam o mesmo recurso.

ZK
Zhemal Khamidun — CPO da Alpina Digital, gerente de produto do AlpinaGPT. Cria produtos de IA desde 2019. O Hamidun News é um projeto pessoal que virou um agregador em produção com mais de 6.000 leitores.
✦ Hands-On AI Engineering · Hamidun Academy

Build & Ship Production AI Agents Without Boilerplate Code

Start your free 72-hour trial at Hamidun Academy (academy.hamidun.com) — interactive lessons on Claude Code & Cursor, live Tech Radar, and production agent templates.

Start 72h Free Trial →Vibe-Coding Intensive
O que você acha?
Carregando comentários…