A Mozilla lançou uma ferramenta para tradução automática autossuficiente de um idioma para outro, funcionando no sistema local do usuário sem a necessidade de serviços externos. O projeto está sendo desenvolvido como parte da iniciativa Bergamot em colaboração com pesquisadores de várias universidades do Reino Unido, Estônia e República Tcheca, com apoio financeiro da União Europeia. Os desenvolvimentos estão sendo distribuídos sob a licença MPL 2.0.
O projeto inclui o motor bergamot-translator, ferramentas para treinamento autônomo do sistema de aprendizado de máquina e modelos prontos para 14 idiomas, incluindo modelos experimentais para tradução entre inglês e russo. O nível de tradução pode ser avaliado em uma demonstração online.
O motor é escrito em C++ e representa uma camada sobre o framework de tradução automática Marian, que utiliza redes neurais recorrentes (RNN) e modelos de linguagem baseados em transformadores. Para acelerar o aprendizado e a tradução, pode ser utilizado um GPU. O framework Marian também é utilizado para suportar o serviço de tradução Microsoft Translator e é desenvolvido principalmente por engenheiros da Microsoft, junto com pesquisadores das universidades de Edimburgo e Poznań.
Para os usuários do Firefox, foi preparado um complemento para tradução de páginas da web, que realiza a tradução no lado do navegador sem recorrer a serviços em nuvem. Anteriormente, o complemento só podia ser instalado em versões beta e builds noturnos, mas agora está disponível também para as versões estáveis do Firefox. No complemento do navegador, o motor, originalmente escrito em C++, é compilado para uma representação binária intermediária WebAssembly através do compilador Emscripten. Entre as novas funcionalidades do complemento, destaca-se a capacidade de tradução durante o preenchimento de formulários web (o usuário digita texto em seu idioma nativo e ele é traduzido em tempo real para o idioma do site atual) e avaliação da qualidade da tradução com marcação automática de traduções duvidosas para informar o usuário sobre possíveis erros.
Fonte: opennet.ru
