Перевод на стороне клиента с использованием ИИ

Мод Налпас
Maud Nalpas
Кенджи Бае
Kenji Baheux
Александра Клеппер
Alexandra Klepper

Опубликовано: 16 мая 2024 г., Последнее обновление: 13 ноября 2024 г.

Пояснительная записка Веб Расширения Статус Chrome Намерение
МДН Хром 138 Хром 138 Вид Намерение отправить

Расширение бизнеса на международные рынки может быть дорогостоящим. Большее количество рынков, вероятно, означает больше языков для поддержки, а большее количество языков может привести к проблемам с интерактивными функциями и процессами, такими как чат послепродажной поддержки. Если в вашей компании работают только англоговорящие агенты поддержки, не носителям английского языка может быть сложно точно объяснить, с какой проблемой они столкнулись.

Как мы можем использовать ИИ для улучшения взаимодействия с пользователями, говорящими на нескольких языках, минимизируя при этом риски и подтверждая целесообразность инвестиций в специалистов службы поддержки, владеющих дополнительными языками?

Некоторые пользователи пытаются преодолеть языковой барьер, используя встроенную функцию перевода страниц в браузере или сторонние инструменты. Однако пользовательский опыт оставляет желать лучшего в случае с интерактивными функциями, такими как чат послепродажной поддержки.

Для чат-инструментов со встроенным переводом важно минимизировать задержки. Обрабатывая язык на устройстве, вы можете переводить в режиме реального времени, еще до того, как пользователь отправит сообщение.

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

Мы работаем над клиентским API-интерфейсом переводчика с моделью, встроенной в Chrome.

Ознакомьтесь с требованиями к оборудованию.

Для разработчиков и пользователей, использующих функции этих API в Chrome, существуют следующие требования. Для других браузеров могут действовать иные требования.

API для определения языка и перевода работают в Chrome на настольных компьютерах. На мобильных устройствах эти API не работают.

API-интерфейсы Prompt , Summarizer , Writer , Rewriter и Proofreader работают в Chrome при соблюдении следующих условий:

  • Операционная система : Windows 10 или 11; macOS 13+ (Ventura и более поздние версии); Linux; или ChromeOS (начиная с платформы 16389.0.0 и далее) на устройствах Chromebook Plus . Chrome для Android, iOS и ChromeOS на устройствах, отличных от Chromebook Plus, пока не поддерживаются API, использующими Gemini Nano.
  • Место на диске : не менее 22 ГБ свободного места на томе, где находится ваш профиль Chrome.
  • GPU или CPU : Встроенные модели могут работать как с GPU, так и с CPU.
    • Графический процессор : строго более 4 ГБ видеопамяти.
    • Процессор : 16 ГБ оперативной памяти или больше и 4 ядра или больше.
  • Сеть : Безлимитный трафик или безлимитное подключение.

Точный размер Gemini Nano может измениться после обновления браузером модели. Чтобы узнать текущий размер, посетите chrome://on-device-internals .

Демонстрационный чат

Мы разработали чат поддержки клиентов, который позволяет пользователям вводить текст на своем родном языке и получать перевод в режиме реального времени для оператора службы поддержки.

Используйте API переводчика

Чтобы определить, поддерживается ли API переводчика, выполните следующий фрагмент кода для определения наличия необходимых функций.

if ('Translator' in self) {
  // The Translator API is supported.
}

Проверить поддержку языковых пар

Перевод осуществляется с помощью языковых пакетов, загружаемых по запросу. Языковой пакет — это как словарь для данного языка.

  • sourceLanguage : Текущий язык текста.
  • targetLanguage : Конечный язык, на который должен быть переведен текст.

Используйте короткие коды языков BCP 47 в виде строк. Например, 'es' для испанского или 'fr' для французского.

Определите доступность модели и следите за downloadprogress :

const translator = await Translator.create({
  sourceLanguage: 'es',
  targetLanguage: 'fr',
  monitor(m) {
    m.addEventListener('downloadprogress', (e) => {
      console.log(`Downloaded ${e.loaded * 100}%`);
    });
  },
});

Если загрузка не удалась, события downloadprogress прекращаются, и обещание ready отклоняется.

Создайте и запустите переводчик.

Для создания переводчика вызовите асинхронную функцию create() . Она требует параметр options с двумя полями: одним для sourceLanguage и одним для targetLanguage .

// Create a translator that translates from English to French.
const translator = await Translator.create({
  sourceLanguage: 'en',
  targetLanguage: 'fr',
});

После того как у вас появится переводчик, вызовите асинхронную функцию translate() для перевода текста.

await translator.translate('Where is the next bus stop, please?');
// "Où est le prochain arrêt de bus, s'il vous plaît ?"

Следующие шаги

Мы хотим увидеть, что вы создаёте с помощью API переводчика. Поделитесь с нами своими веб-сайтами и веб-приложениями на X , YouTube и LinkedIn .

Вы можете зарегистрироваться в программе раннего предварительного просмотра, чтобы протестировать этот и другие API с помощью локальных прототипов.