RTranslator — это (почти) бесплатное автономное приложение для перевода в режиме реального времени с открытым исходным кодом для Android.
Подключитесь к тому, у кого есть приложение, подключите наушники Bluetooth, положите телефон в карман, и вы сможете разговаривать так, как если бы другой человек говорил на вашем языке.
Режим разговора — главная особенность RTranslator. В этом режиме вы можете подключиться к другому телефону, на котором используется это приложение. Если пользователь принимает ваш запрос на подключение:
Когда вы разговариваете, ваш телефон (или гарнитура Bluetooth , если она подключена) записывает звук.
Захваченный звук будет преобразован в текст и отправлен на телефон собеседника.
Телефон собеседника переведет полученный текст на его язык.
Телефон собеседников преобразует переведенный текст в аудио и воспроизводит его через свой динамик (или через Bluetooth-гарнитуру собеседника, если она подключена к его телефону).
Все это в обе стороны.
У каждого пользователя может быть более одного подключенного телефона, поэтому вы можете переводить разговоры между более чем двумя людьми и в любой комбинации.
Если режим разговора полезен для долгого разговора с кем-то, то этот режим предназначен для быстрого разговора, например, для запроса информации на улице или разговора с продавцом.
Этот режим переводит только разговоры между двумя людьми, он не работает с Bluetooth-гарнитурами, и говорить приходится по очереди. Это не настоящий синхронный перевод, но он может работать только с одним телефоном .
В этом режиме микрофон смартфона будет одновременно прослушивать разговор на двух языках (выбираемых на одном экране режима рации).
Приложение определит, на каком языке говорит собеседник, переведет звук на другой язык, преобразует текст в аудио, а затем воспроизведет его через динамик телефона. Когда TTS завершится, прослушивание автоматически возобновится.
Этот режим представляет собой классический переводчик текста, но всегда полезен.
RTranslator использует NLLB Meta для перевода и Whisper OpenAi для распознавания речи. Оба являются (почти) открытыми и современными искусственными интеллектами, имеют превосходное качество и запускаются непосредственно на телефоне, обеспечивая абсолютную конфиденциальность и возможность использования RTranslator даже в автономном режиме без потеря качества.
Кроме того, RTranslator работает даже в фоновом режиме, когда телефон находится в режиме ожидания или при использовании других приложений (только при использовании режимов «Разговор» или «Рация»). Однако некоторые телефоны ограничивают мощность в фоновом режиме, поэтому в этом случае лучше избегать этого и оставлять приложение открытым с включенным экраном.
Новый графический интерфейс! Разработан Кьярой Чиндамо.
В режим перевода текста добавлены кнопки «говорить» и «копировать».
Добавлена возможность вручную управлять микрофонами в режиме WalkieTalkie.
Добавлена возможность использовать некачественные языки.
Исправлены некоторые ошибки.
Полный список изменений смотрите здесь.
Я значительно оптимизировал модели искусственного интеллекта, чтобы минимизировать потребление оперативной памяти и время выполнения, однако, несмотря на это, чтобы иметь возможность использовать приложение без риска сбоя, вам нужен телефон с как минимум 6 ГБ оперативной памяти и достаточно хорошим временем выполнения. вам нужен телефон с достаточно быстрым процессором.
Если у вас довольно дрянной телефон (или вам нужна максимальная скорость), вы всегда можете использовать версию RTranslator 1.0 (но, поскольку она использует API Google, она не бесплатна и требует некоторой начальной настройки).
Чтобы установить приложение, загрузите последнюю версию apk-файла приложения с https://github.com/niedev/RTranslator/releases/ и установите его (игнорируйте другие файлы, они будут загружены приложением автоматически при первом запуске). ).
При первом запуске RTranslator автоматически загрузит модели для перевода и распознавания речи (1,2 ГБ), и после этого вы сможете приступить к переводу.
При первоначальной загрузке модели будут получены с GitHub, однако в некоторых регионах GitHub работает очень медленно, те, у кого возникают проблемы такого рода, могут загрузить модели отдельно с компьютера (или вообще любым удобным для них способом) и вручную вставить их в файл. приложение, следуя этому руководству.
Если у вас есть учетная запись GitHub и вы хотите получать уведомления о выходе нового выпуска, вы можете сделать это, нажав в верхней части страницы «Смотреть» -> «Пользовательский» -> «Релизы» -> «Применить». .
Поддерживаются следующие языки:
Арабский, болгарский, каталанский, китайский, хорватский, чешский, датский, голландский, английский, финский, французский, галисийский, немецкий, греческий, итальянский, японский, корейский, македонский, польский, португальский, румынский, русский, словацкий, испанский, шведский, Тамильский, тайский, турецкий, украинский, урду, вьетнамский.
Если вашего языка нет в списке, начиная с версии 2.1 RTranslator вы можете зайти в настройки и включить « Поддержка языков низкого качества », чтобы добавить следующие языки (которые имеют более низкое качество перевода и распознавания речи):
африкаанс, акан (только текст), амхарский, ассамский, бамбарский (только текст), бангла, башкирский, баскский, белорусский, боснийский, дзонгка (только текст), эсперанто (только текст), эстонский, эве (только текст), фарерский, Фиджийский (только текст), грузинский, гуарани (только текст), гуджарати, хауса, иврит, хинди, венгерский, яванский (только текст), каннада, кашмири (только текст), казахский, кикую (только текст), киньяруанда (только текст), корейский, кыргызский (только текст), лаосский, лимбургский (только текст), лингала, литовский, люксембургский, македонский , тагальский (только текст), тибетский.
Грубо говоря, RTranslator использует системный TTS вашего телефона, поэтому качество последнего и поддерживаемых языков зависит от системного TTS вашего телефона.
Все поддерживаемые языки, указанные выше, совместимы с Google TTS, который является рекомендуемым TTS (хотя вы можете использовать тот TTS, который вам нужен).
Чтобы изменить системный TTS (и, следовательно, TTS, используемый RTranslator), загрузите TTS, который вы хотите использовать, из Play Store или из источника, который вы предпочитаете, и откройте RTranslator, затем откройте его настройки (вверху справа) и в В разделе «Вывод» нажмите «Текст в речь», на этом этапе настройки системы откроются в разделе, где вы можете выбрать предпочитаемый системный движок TTS (среди установленных), на этом этапе, если вы изменили предпочтительный движок , перезапустить RTranslator чтобы применить изменения.
Конфиденциальность является фундаментальным правом. Именно поэтому RTranslator не собирает никаких личных данных (у меня даже нет сервера). Для получения дополнительной информации прочтите политику конфиденциальности (на данный момент это та же политика конфиденциальности, что и в RTranslator 1.0, но я обновлю ее в будущем).
Код RTranslator полностью с открытым исходным кодом, но некоторые из используемых им внешних библиотек имеют менее разрешительные лицензии, это все внешние библиотеки, используемые приложением (с указанием их лицензии):
BluetoothCommunicator (с открытым исходным кодом): используется для связи Bluetooth LE между устройствами.
GalleryImageSelector (с открытым исходным кодом): используется для выбора и обрезки изображения профиля из галереи.
OnnxRuntime (с открытым исходным кодом): используется в качестве ускорителя для моделей искусственного интеллекта.
SentencePiece (с открытым исходным кодом): используется для токенизации входного текста для NLLB.
Ml Kit (с закрытым исходным кодом): используется для идентификации языка в режиме WalkieTalkie.
И следующие модели ИИ:
NLLB (с открытым исходным кодом, но только для некоммерческого использования): используется модель NLLB-Distilled-600M с KV-кешем.
Whisper (с открытым исходным кодом): используется модель Whisper-Small-244M с KV-кэшем.
Я преобразовал NLLB и Whisper в формат onnx и квантовал их в int8 (исключая некоторые веса, чтобы обеспечить почти нулевую потерю качества), я также отделил некоторые части моделей, чтобы уменьшить потребление оперативной памяти (без этого разделения некоторые веса дублировались во время выполнения, потребляя больше оперативной памяти больше, чем ожидалось) и выполнил другие оптимизации для сокращения времени выполнения.
Вот результаты моей оптимизации:
обычная модель NLLB onnx (полный int8, без kv-кеша) | Модель RTranslator NLLB onnx (частичный int8, с kv-кешем, отдельные части) | |
---|---|---|
Потребление оперативной памяти | 2,5 ГБ | 1,3 ГБ (увеличение в 1,9 раза) |
Время исполнения для 75 токенов | 8 с | 2 с (улучшение в 4 раза) |
Модель Whisper onnx, оптимизированная с помощью Olive (полный int8, с kv-кешем) | Модель RTranslator Whisper onnx (частичный int8, с kv-кешем, отдельные части) | |
---|---|---|
Потребление оперативной памяти | 1,4 ГБ | 0,9 ГБ (увеличение в 1,5 раза) |
Время выполнения для звука 11 с. | 1,9 с | 1,6 с (улучшение в 1,2 раза) |
NB Модель RTranslator Whisper также может потреблять 0,5 ГБ ОЗУ, но со временем выполнения 2,1 с (этот режим используется для телефонов с объемом ОЗУ менее 8 ГБ)
Это приложение с открытым исходным кодом и полностью свободное от рекламы, я не зарабатываю на нем никаких денег.
Итак, если вам нравится приложение и вы хотите сказать спасибо и поддержать проект, вы можете сделать пожертвование через PayPal, нажав кнопку ниже (любая сумма принимается).
Если вы сделаете пожертвование или просто станете звездой, спасибо ❤️
Если вы обнаружили какую-либо ошибку, сообщите об этом, открыв проблему или написав электронное письмо на адрес [email protected].
Наслаждайтесь синхронным переводчиком.