Реализация бота-переводчика в мобильном приложении

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1735 услуг
Реализация бота-переводчика в мобильном приложении
Простой
~2-3 дня
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    495

Реализация бота-переводчика в мобильном приложении

Бот-переводчик — это не просто вызов Translation API. Интересные сценарии начинаются там, где нужно сохранять контекст диалога, переключаться между языками на лету и работать offline. Именно эти детали разделяют «переводчик, который работает» и «переводчик, который работает хорошо».

Выбор Translation API

DeepL API. Лучшее качество перевода для европейских языков. Free tier — 500K символов/месяц. Поддерживает формальный/неформальный тон (formality параметр) — важно для делового контента. Не поддерживает русский → другие языки на уровне Google/Yandex.

Google Cloud Translation API. 100+ языков, высокое качество для русского. v3 поддерживает glossary — словарь терминов, которые нельзя переводить или нужно переводить строго определённым образом. Для медицины, юридических текстов, брендовых названий — обязательная функция.

Yandex Translate API. Лучшие результаты для русского ↔ европейские языки. Language detection встроен. Хороший выбор для приложений с русскоязычной аудиторией.

LLM (GPT-4o / Claude). Контекстуальный перевод с учётом тона и стиля. Выигрывает на специализированных текстах, идиомах, юморе. Дороже и медленнее специализированных API для простых переводов.

Ключевые технические задачи

Определение языка. Пользователь вводит текст — бот должен понять, с какого языка переводить. Либо явный выбор через пикер, либо автодетект. Google Translation API возвращает detectedSourceLanguage в ответе. Для Yandex — lang в ответе.

Автодетект хорошо работает для длинных текстов, плохо — для одного-двух слов. Короткие запросы: лучше предлагать выбор языка явно.

Контекст диалога. Если пользователь переводит серию связанных сообщений (диалог, документ по частям) — LLM с историей переводов даёт более последовательный результат, чем независимые вызовы к Translation API. Имена, местоимения, специфичные термины сохраняются в контексте.

Терминологический глоссарий. Google Translation v3 Glossary API позволяет создать список терминов, которые модель не должна переводить или переводит строго определённым образом:

from google.cloud import translate_v3

client = translate_v3.TranslationServiceClient()

# Создание глоссария из CSV: original_term,translation
glossary = client.create_glossary(
    parent=f"projects/{project_id}/locations/us-central1",
    glossary=translate_v3.Glossary(
        name=glossary_name,
        language_pair=translate_v3.Glossary.LanguageCodePair(
            source_language_code="en",
            target_language_code="ru"
        ),
        input_config=translate_v3.GlossaryInputConfig(
            gcs_source=translate_v3.GcsSource(input_uri=glossary_gcs_uri)
        )
    )
)

Offline-режим

Для приложений с пользователями в зонах нестабильного интернета — offline-перевод на устройстве.

iOS. MLKit Translation от Google поддерживает скачивание языковых моделей для offline-работы. TranslateLanguage.allLanguages() — список доступных языков. Модель одного языка весит ~30MB.

import MLKitTranslate

let options = TranslatorOptions(
    sourceLanguage: .russian,
    targetLanguage: .english
)
let translator = Translator.translator(options: options)

// Проверка и загрузка модели
let conditions = ModelDownloadConditions(allowsCellularAccess: true)
translator.downloadModelIfNeeded(with: conditions) { error in
    guard error == nil else { return }
    translator.translate("Привет, мир") { result, error in
        print(result ?? "")
    }
}

Android. То же самое через TranslatorOptions и Translator из com.google.mlkit:translate.

Offline-модели работают в режиме секретности — текст пользователя не покидает устройство.

Голосовой ввод и озвучивание перевода

Логичное дополнение переводчика: пользователь говорит → бот переводит → зачитывает перевод вслух.

STT для входного языка: нативные API или Whisper. TTS для языка перевода: AVSpeechSynthesizer на iOS поддерживает AVSpeechSynthesisVoice(language: "fr-FR") — системные голоса для десятков языков. Android TextToSpeech аналогично через setLanguage(Locale("fr", "FR")).

Важно: проверить наличие нужного голоса на устройстве перед озвучкой. AVSpeechSynthesisVoice.speechVoices() — список доступных.

Камера: перевод в реальном времени

Самый впечатляющий сценарий — навести камеру на меню / вывеску / документ и увидеть перевод поверх изображения. Технически: ML Kit Text Recognition (TextRecognizer) → перевод блоков текста → отрисовка поверх camera preview с OCR bounding boxes.

Подводный камень: координаты текста из OCR привязаны к кадру, который изменяется 30 раз в секунду. Стабилизация результатов (сравниваем с предыдущим кадром по IoU bounding boxes) снижает мерцание.

Процесс работы

Выбор Translation API под целевые языки и сценарии использования.

Разработка бэкенда: API-ключи, кэширование переводов, глоссарий.

Мобильный UI: ввод текста, история переводов, кнопки копирования/шеринга.

Опционально: offline-модели, голосовой ввод/вывод, перевод через камеру.

Ориентиры по срокам

Базовый бот-переводчик через cloud API — 2–3 дня. С offline-режимом, голосовым вводом и переводом через камеру — 1,5–2 недели.