Por que a tradução de voz em tempo real em uma chamada telefônica é tão difícil
Se você já usou um aplicativo de tradução que exige que você pressione um botão, espere e pressione outro, você conhece a diferença entre *tradução* e *tradução em tempo real*. A primeira é uma ferramenta. A segunda é uma conversa. Reduzir essa diferença em uma chamada telefônica comum é mais difícil do que parece, porque a rede telefônica nunca foi projetada para isso.
Este post é a versão para o usuário de por que isso é difícil — sem entrar em detalhes sobre as escolhas específicas de implementação.
O que "tempo real" realmente significa
Tempo real significa que a conversa flui no ritmo de uma conversa humana. Na prática, isso significa cerca de meio segundo de atraso entre o momento em que uma pessoa para de falar e o momento em que a outra começa a ouvir a tradução. Qualquer coisa além disso, e a chamada começa a parecer um walkie-talkie. Qualquer coisa abaixo de 500 ms é rara, mesmo para humanos.
Atingir esse objetivo exige que uma cadeia de operações ocorra rapidamente:
1. O sistema precisa saber quando uma frase termina. Isso parece trivial, mas não é. Os telefones captam respiração, ruído ambiente e sons incidentais que, para um detector menos experiente, podem ser confundidos com fala.
2. O sistema precisa entender o que foi dito. O reconhecimento de fala é muito melhor do que há dez anos, mas sotaques, dialetos regionais e condições de conexão ruins ainda confundem os modelos.
3. O sistema precisa traduzir com precisão. A tradução palavra por palavra geralmente produz resultados sem sentido em idiomas com ordens de palavras diferentes. A tradução em nível de frase é mais precisa, mas mais lenta.
4. O sistema precisa reproduzir o resultado em voz alta com uma voz que não soe como a de um robô lendo notícias.
Cada uma dessas quatro etapas consome parte da latência disponível. O sistema tem aproximadamente meio segundo para executar todas as quatro etapas de ponta a ponta.
Por que uma chamada telefônica é mais difícil do que uma chamada de vídeo
Aplicativos que lidam com chamadas de vídeo entre dois navegadores possuem diversas ferramentas que uma chamada telefônica não tem:
- Qualidade de áudio superior. O áudio do navegador tem qualidade de estúdio. As chamadas telefônicas utilizam a especificação de áudio de fidelidade inferior para a qual a rede foi projetada na década de 1980 — faixa de frequência mais estreita, mais artefatos de compressão. O reconhecimento de voz tem mais recursos disponíveis no áudio do navegador do que no áudio do telefone.
- Processamento no lado do cliente. Os aplicativos de navegador podem pré-processar o áudio no dispositivo do usuário — cancelamento de eco, supressão de ruído, detecção de limites de frases. Os telefones não oferecem nada disso para quem está hospedando a chamada.
- Um caminho de rede controlado. Os navegadores negociam a rota entre dois pontos de extremidade. As chamadas telefônicas utilizam o caminho escolhido pela operadora.
- Uma segunda tela para fallback. As chamadas de vídeo podem exibir legendas, seletor de idioma e botões de mudo. As chamadas telefônicas têm apenas áudio.
- A maior limitação da rede telefônica é também sua maior vantagem: o destinatário não precisa de um aplicativo. Essa é a principal razão pela qual as chamadas telefônicas traduzidas são úteis para contatar avós, fornecedores, atendentes de suporte e qualquer outra pessoa que não vá instalar nada. O diferencial está em esconder a complexidade técnica por trás da simplicidade de "atender o telefone normalmente".
Onde a latência se esconde
Uma chamada traduzida em tempo real e sem problemas utiliza aproximadamente o seguinte tempo por direção:
- Detecção do fim da frase: ~500 ms (ajustado propositalmente — um tempo muito curto interrompe a chamada, um tempo muito longo causa atrasos)
- Reconhecimento do que foi dito: ~100 ms após o fim da frase
- Tradução para o idioma de destino: ~100 ms
- Sintetização da voz traduzida: ~150 ms
- Sobrecarga de rede e orquestração: ~100 ms
Total: aproximadamente 600 ms em média, podendo chegar a 1 segundo em chamadas com ruído. É por isso que as chamadas traduzidas em tempo real parecem uma chamada via satélite com um pequeno atraso.
Como é uma boa tradução
Alguns sinais de que o sistema está funcionando:
- Ambos os lados falam naturalmente. Não é necessário nenhum tutorial de "fale devagar". Sem pausas entre cada palavra.
- Cada interlocutor mantém sua própria voz. Uma tradução que soa como um robô lendo legendas parece uma chamada internacional. Uma tradução que corresponde ao tom de voz do interlocutor parece uma conversa real.
- Você pode interromper. Conversas reais têm sobreposições. O sistema lida com isso sem interromper o áudio.
- A alternância de códigos funciona. Pessoas que falam dois idiomas frequentemente os misturam. O sistema acompanha.
Onde a tradução falha
A tradução por IA em tempo real não é mágica. Algumas coisas ainda degradam a qualidade:
- Dialetos regionais fortes. A fala padrão dos principais idiomas é traduzida bem. Dialetos locais fortes ainda causam problemas ao sistema.
- Vários interlocutores simultâneos. O sistema pressupõe apenas uma voz por vez. Um ambiente barulhento prejudica a tradução.
- Fala sussurrada ou gritada. Os modelos de reconhecimento são ajustados para volumes normais. Volumes atípicos comprometem a precisão.
- Jargão altamente técnico. Uma chamada informal funciona bem. Uma chamada sobre procedimentos cirúrgicos cardiotorácicos ou engenharia aeroespacial pode exigir um intérprete humano especializado na área.
A melhor abordagem é: a tradução por IA em tempo real lida brilhantemente com a maior parte das conversas. As duas extremidades — chamadas informais e chamadas sobre assuntos de alta complexidade — às vezes exigem um humano.