À propos du projet

RTranslator est une application Android de traduction en temps réel qui fonctionne entièrement sur l'appareil, sans envoyer de données à des serveurs externes. Elle est décrite comme presque entièrement open source, le projet notant que certains composants externes portent des licences moins permissives. Modes principaux : - Mode conversation : deux téléphones ou plus exécutant l'application se connectent entre eux. La parole est capturée (microphone du téléphone ou écouteur Bluetooth), convertie en texte, envoyée à l'autre appareil, traduite là-bas, et prononcée à voix haute via le haut-parleur ou l'écouteur de l'autre utilisateur. Cela fonctionne dans les deux sens et prend en charge plus de deux participants dans diverses combinaisons. - Mode talkie-walkie : conçu pour de courts échanges comme demander son chemin ou parler à un vendeur. Il fonctionne avec un seul téléphone, écoutant dans deux langues sélectionnables à la fois, détectant quelle langue est parlée, traduisant et prononçant le résultat. Les utilisateurs parlent à tour de rôle ; les écouteurs Bluetooth ne sont pas pris en charge dans ce mode. - Mode traduction de texte : un traducteur de texte conventionnel, avec des boutons de lecture et de copie ajoutés dans la version 2.1. L'application peut continuer à fonctionner en arrière-plan, y compris lorsque le téléphone est en veille ou que d'autres applications sont utilisées, bien que le README note que certains téléphones restreignent l'alimentation en arrière-plan et qu'il peut être préférable de garder l'application ouverte. Modèles et technologie : La version 2.x utilise NLLB de Meta (NLLB-Distilled-600M avec cache KV) pour la traduction et Whisper d'OpenAI (Whisper-Small-244M avec cache KV) pour la reconnaissance vocale, tous deux convertis en ONNX et quantifiés en int8 avec certains poids exclus pour limiter la perte de qualité. Le README rapporte des optimisations réduisant l'utilisation de RAM de NLLB de 2,5 Go à 1,3 Go et le temps d'exécution pour 75 jetons de 8 s à 2 s, et la RAM de Whisper de 1,4 Go à 0,9 Go avec un temps d'exécution pour 11 s d'audio de 1,9 s à 1,6 s. Une configuration Whisper à mémoire réduite utilisant environ 0,5 Go est utilisée sur les téléphones avec moins de 8 Go de RAM. La version bêta 3.0 remplace NLLB par un choix parmi les modèles Mozilla Bergamot, Madlad 400 3B et HY-MT 1.5 1.8B, et remplace MLKit par des alternatives open source (FastText et Lingua), rendant l'application entièrement open source. Elle ajoute également des techniques telles que la recherche par faisceau, les dictionnaires multilingues et l'intégration Tatoeba. Une version web auto-hébergée pour la traduction de texte utilisant les modèles Mozilla est prévue. Les autres composants externes listés incluent BluetoothCommunicator et GalleryImageSelector (tous deux open source du même auteur), OnnxRuntime et SentencePiece. MLKit était utilisé dans la version 2.x pour l'identification de la langue en mode talkie-walkie. Langues : l'ensemble principal pris en charge comprend l'arabe, le bulgare, le catalan, le chinois, le croate, le tchèque, le danois, le néerlandais, l'anglais, le finnois, le français, le galicien, l'allemand, le grec, l'italien, le japonais, le coréen, le macédonien, le polonais, le portugais, le roumain, le russe, le slovaque, l'espagnol, le suédois, le tamoul, le thaï, le turc, l'ukrainien, l'ourdou et le vietnamien. À partir de la version 2.1, un paramètre "Prendre en charge les langues de faible qualité" ajoute de nombreuses autres langues avec une qualité de traduction et de reconnaissance vocale inférieure. La synthèse vocale utilise la TTS système du téléphone, avec Google TTS recommandé. Exigences et installation : le README indique qu'au moins 6 Go de RAM sont nécessaires pour éviter les plantages, ainsi qu'un processeur raisonnablement rapide. L'APK est téléchargé depuis les versions GitHub ; au premier lancement, l'application télécharge environ 1,2 Go de modèles, avec un guide de chargement latéral manuel pour les régions où GitHub est lent. La version 1.0 est proposée pour les téléphones plus faibles mais repose sur les API Google et n'est pas gratuite. Confidentialité : le README indique que l'application ne collecte aucune donnée personnelle et que l'auteur n'exploite aucun serveur. Le projet est sans publicité et financé par des dons, avec la version 3.0 soutenue par le Fonds NGI Mobifree. Les problèmes connus incluent des coupures de connexion Bluetooth occasionnelles, et l'application est décrite comme encore en version bêta.