Tradutor IA
Tradutor IA gratuito que roda NLLB-200 no seu navegador. Traduz 15+ idiomas com aceleração WebGPU. Sem upload, sem API key, totalmente privado.
Sobre o Tradutor IA
Tradutor IA é uma ferramenta de tradução automática neural totalmente do lado do cliente que executa o modelo NLLB-200 distilled 600M da Meta diretamente dentro do seu navegador usando Transformers.js e WebGPU. Diferente do Google Tradutor, DeepL ou ChatGPT, nenhum texto sai do seu dispositivo: os pesos do modelo são baixados uma única vez de uma CDN pública e, em seguida, a tradução é realizada localmente na sua CPU ou GPU. Isso significa que advogados, médicos, jornalistas e desenvolvedores podem traduzir rascunhos confidenciais, comentários de código-fonte, NDAs e documentação interna sem enviá-los a terceiros. A ferramenta suporta 15 idiomas mais usados do vocabulário completo de 200 idiomas do NLLB-200, incluindo inglês, vietnamita, espanhol, português, francês, alemão, italiano, russo, chinês simplificado, japonês, coreano, árabe, hindi, tailandês e indonésio. A primeira tradução dispara um download único de cerca de 600 megabytes de pesos quantizados, que o navegador armazena em cache indefinidamente; as traduções seguintes são essencialmente gratuitas em termos de largura de banda e concluem em menos de dois segundos para um parágrafo em um laptop moderno. Textos longos são divididos em fronteiras de frase para caber na janela de contexto de 1024 tokens do modelo, e depois costurados novamente. A ferramenta é apropriada para passagens curtas a médias (menos de 5000 caracteres); para documentos do tamanho de um livro, divida a entrada em lotes ou execute o tradutor em várias abas.
Qual modelo de tradução esta ferramenta usa e quão bom é?
Usamos o NLLB-200 distilled 600M, o modelo open-source da Meta (No-Language-Left-Behind) treinado em 200 idiomas incluindo dezenas de baixos recursos. Em benchmarks padrão como FLORES-200, o NLLB-200 distilled 600M obtém pontuações BLEU a poucos pontos de sistemas comerciais muito maiores para pares de altos recursos (inglês/espanhol, inglês/francês, inglês/chinês) e supera significativamente modelos abertos mais antigos em pares de baixos recursos como inglês/vietnamita, inglês/khmer ou inglês/iorubá. A versão destilada é um modelo aluno menor e mais rápido treinado nas saídas do modelo professor de 54B parâmetros; a qualidade é muito próxima do professor para a maioria dos pares, sendo pequeno o suficiente para rodar localmente. Para jargão técnico denso, expressões idiomáticas ou conteúdo literário exigente você ainda pode preferir DeepL ou um LLM ajustado, mas para e-mails do dia a dia, páginas web, modelos jurídicos e comentários de código o NLLB-200 é mais do que suficiente e singularmente privado.
Por que a primeira tradução demora tanto?
A primeira vez que você clica em Traduzir, o navegador precisa baixar os pesos do NLLB-200 (cerca de 600 MB em forma quantizada) de uma CDN pública e compilá-los em um grafo WebGPU ou WebAssembly. Espere entre 30 segundos e alguns minutos dependendo da conexão. Uma vez cacheados, os pesos ficam no armazenamento do navegador (IndexedDB / Cache API) e carregam em menos de um segundo nas visitas seguintes, de modo que todas as traduções posteriores concluem em 1-3 segundos para um parágrafo. Se você limpar os dados do navegador, o modelo precisará ser baixado novamente. Para verificar, abra o DevTools, vá em Application > Cache Storage; você verá entradas em huggingface.co ou jsdelivr após a primeira execução.
Meu texto é realmente privado? Para onde ele vai?
Sim. Seu texto é processado inteiramente dentro da aba do navegador por JavaScript e WebGPU. Não existe uma API de tradução no servidor nem nenhuma requisição de rede que inclua seu texto. Você pode verificar abrindo a aba Network do DevTools antes de clicar em Traduzir: verá os pesos do modelo sendo baixados de uma CDN, mas nunca seu texto de entrada sendo enviado a lugar algum. Isso torna a ferramenta ideal para tradução jurídica ou médica confidencial, rascunhos corporativos internos, material de fontes jornalísticas, NDAs e qualquer outro conteúdo em que enviar texto para Google ou OpenAI não seja aceitável. Os próprios pesos do modelo são open-source, publicados pela Meta em 2022; nenhum comportamento de telemetria ou call-home está embutido neles.

Por que WebGPU é mais rápido que WASM e como habilitá-lo?
WebGPU é uma API moderna do navegador que permite ao JavaScript executar cálculos diretamente na sua placa gráfica; para um transformer de 600M de parâmetros como o NLLB-200, isso costuma ser 5 a 20 vezes mais rápido que o backend WebAssembly (CPU). A ferramenta detecta automaticamente o suporte a WebGPU e o usa quando disponível; um selo verde 'WebGPU' aparece no topo da página em caso afirmativo. WebGPU vem habilitado no Chrome 113+, Edge 113+, Opera/Brave recentes; no Firefox está atrás de uma flag (about:config -> dom.webgpu.enabled); o Safari suporta em Technology Preview e builds estáveis recentes. Com WebGPU, um parágrafo é traduzido em cerca de 1-2 segundos em uma iGPU de laptop; com WASM puro o mesmo parágrafo leva 8-15 segundos. Se você vir o selo amarelo 'WASM', o navegador não expõe um adaptador GPU ao WebGPU e a ferramenta cai para CPU automaticamente.
Quais idiomas e pares de idiomas são suportados?
O modelo NLLB-200 completo suporta 200 idiomas e qualquer direção entre eles; por simplicidade de UX expomos 15 dos mais pedidos nesta build: inglês, vietnamita, espanhol, português (Brasil e europeu compartilham o tokenizador), francês, alemão, italiano, russo, chinês simplificado, japonês, coreano, árabe, hindi, tailandês e indonésio. Você pode traduzir em qualquer direção entre quaisquer dois, portanto 15 x 14 = 210 pares estão disponíveis sem download extra após o modelo ser cacheado. Passamos códigos de idioma NLLB (eng_Latn, vie_Latn, zho_Hans, etc.) ao modelo internamente; se precisar de um par que ainda não expusemos (suaíli, tagalo, bengali, etc.), abra uma issue e adicionaremos em uma build futura.
Qual é o limite de caracteres e como documentos longos são tratados?
A interface aceita até 5000 caracteres por clique de tradução, o que corresponde a cerca de 700-1000 palavras em inglês. Internamente a ferramenta divide a entrada em fronteiras de frase (pontos, interrogações, pontuação de largura cheia para CJK) em pedaços de cerca de 500 caracteres, envia cada pedaço ao modelo com sua janela de contexto de 1024 tokens e costura as saídas. Isso significa que frases muito longas (acima de ~500 caracteres) podem ser truncadas e você deve dividi-las manualmente; para documentos do tamanho de um livro recomendamos rodar o tradutor em lotes de algumas páginas, copiando os resultados para um arquivo mestre. Escolhemos 5000 caracteres como limite por execução porque o tempo cresce aproximadamente de forma linear com o comprimento e execuções longas demais aumentam significativamente a chance de refresh de aba ou pressão de memória em hardware mais fraco.
