Перевод со встроенным ИИ

Опубликовано: 13 ноября 2024 г.

Объяснитель Веб Расширения Статус Хрома Намерение
GitHub За флагом Исходный суд За флагом Исходный суд Вид Намерение экспериментировать

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

Ваш веб-сайт может уже предлагать контент на нескольких языках, чтобы сделать его доступным для глобальной аудитории. С API переводчика пользователи могут вносить свой вклад на своем родном языке. Например, пользователи могут участвовать в чатах поддержки на своем родном языке, и ваш сайт может перевести его на язык, который используют ваши агенты поддержки, прежде чем он покинет устройство пользователя. Это создает плавный, быстрый и инклюзивный опыт для всех пользователей.

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

Начать

Присоединяйтесь к пробной версии API переводчика , работающей в Chrome 131–138.

Хотя вы всегда знаете целевой язык для переводов, вы не всегда можете знать исходный язык, например, в пользовательском контенте. Для таких случаев предложение Translator API включает как Translator API, так и Language Detector API , также доступные в пробной версии origin . Зарегистрируйтесь для обеих пробных версий origin, чтобы использовать эти API вместе.

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

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

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

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

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

Зарегистрируйтесь для пробной версии Origin

Чтобы начать использовать API переводчика, выполните следующие действия:

  1. Примите Политику Google в отношении запрещенного использования генеративного ИИ .
  2. Перейти к пробной версии API переводчика .
  3. Нажмите «Зарегистрироваться» и заполните форму.
    • В поле «Веб-источник» укажите идентификатор источника или расширения, chrome-extension://YOUR_EXTENSION_ID .
  4. Для отправки нажмите «Зарегистрироваться» .
  5. Скопируйте предоставленный токен и добавьте его на каждую веб-страницу в вашем источнике или файле для вашего расширения, на котором вы хотите включить пробную версию.
  6. Начните использовать API переводчика .

Узнайте больше о том, как начать работу с пробными версиями Origin .

Добавить поддержку на localhost

Чтобы получить доступ к API переводчика на localhost во время пробной версии Origin, необходимо обновить Chrome до последней версии. Затем выполните следующие действия:

  1. Перейдите по адресу chrome://flags/#translation-api .
  2. Выберите Включено .
    • Чтобы попробовать больше языковых пар, выберите Включено без ограничения языковых пакетов .
  3. Нажмите «Перезапустить» или перезапустите Chrome.

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

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

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

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

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

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

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

const translatorCapabilities = await Translator.availability({
  sourceLanguage: 'es',
  targetLanguage: 'fr',
});
// 'available'

Функция availability() возвращает обещание со следующими значениями:

  • "unavailable" означает, что реализация не поддерживает перевод или определение языка для данного языка(ов).
  • "downloadable" означает, что реализация поддерживает перевод или определение языка для заданного языка(ов), но для создания соответствующего объекта ей придется что-то загрузить (например, модель машинного обучения).
  • "downloading" означает, что реализация поддерживает перевод или определение языка для заданного языка(ов), но для этого необходимо будет завершить текущую загрузку в рамках создания связанного объекта.
  • "available" означает, что реализация поддерживает перевод или определение языка для указанного языка(ов) без выполнения каких-либо загрузок.

Вы можете отслеживать ход загрузки модели с помощью события 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 ?"

Ограничения в исходном исследовании

В течение пробного периода действуют следующие ограничения.

Поддерживаемые языковые пары

В настоящее время для перевода можно загрузить до трех языковых пакетов. Мы стремимся расширить диапазон поддерживаемых языков в будущих выпусках, сохраняя при этом высокие стандарты конфиденциальности пользователей. Вы можете подтвердить, поддерживается ли нужная вам языковая пара, с помощью функции languagePairAvailable() .

Возможно, что определенные, менее распространенные языковые пары могут использоваться для снятия отпечатков пальцев . Например, чаще переводят между английским и испанским, чем между менее распространенными языками, такими как гэльский и каталонский. Менее распространенная языковая пара может считаться точкой данных для идентификации пользователя.

В ходе тестирования Origin мы ограничиваем потенциальные переводимые языковые пары для защиты конфиденциальности пользователей. Языковые пары должны соответствовать следующим критериям:

  • В Chrome как исходный, так и целевой язык устанавливаются в качестве предпочитаемых языков .
  • Или один из языков установлен как предпочитаемый язык в Chrome, а другой входит в число следующих популярных языков :
    • Английский ( en )
    • Мандаринский китайский ( zh ; упрощенный) или тайваньский мандаринский ( zh-Hant ; традиционный)
    • Японский (яп. ja )
    • Португальский ( pt )
    • Русский ( ru )
    • Испанский ( es )
    • Турецкий ( tr )
    • Хинди ( hi )
    • вьетнамский ( vi )
    • Бенгальский ( bn )

Обойти языковые ограничения для локального тестирования

Для локального прототипирования вы можете обойти эти проверки, запустив Chrome с параметром командной строки --disable-features=TranslationAPIAcceptLanguagesCheck . В качестве альтернативы установите chrome://flags/#translation-api на Enable without language pack limit .

Посетите chrome://on-device-translation-internals/ чтобы вручную установить и удалить языковые пакеты.

Последовательные переводы

Переводы обрабатываются последовательно. Если вы отправляете большие объемы текста на перевод, последующие переводы блокируются до тех пор, пока не будут завершены предыдущие.

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

Доступность веб-работника

В то время как в исходном пробном периоде API Translator поддерживается только из основного потока. Мы намерены поддерживать его в веб-работниках, как только API станет широко доступным.

Демо

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

Усилия по стандартизации

Мы работаем над стандартизацией API переводчика, чтобы обеспечить кроссбраузерную совместимость.

Наше предложение API получило поддержку сообщества и было перемещено в группу сообщества W3C Web Incubator для дальнейшего обсуждения. Команда Chrome запросила обратную связь от группы технической архитектуры W3C и попросила Mozilla и WebKit высказать свои позиции по стандартам.

Участвуйте и делитесь отзывами

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

,

Опубликовано: 13 ноября 2024 г.

Объяснитель Веб Расширения Статус Хрома Намерение
GitHub За флагом Исходный суд За флагом Исходный суд Вид Намерение экспериментировать

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

Ваш веб-сайт может уже предлагать контент на нескольких языках, чтобы сделать его доступным для глобальной аудитории. С API переводчика пользователи могут вносить свой вклад на своем родном языке. Например, пользователи могут участвовать в чатах поддержки на своем родном языке, и ваш сайт может перевести его на язык, который используют ваши агенты поддержки, прежде чем он покинет устройство пользователя. Это создает плавный, быстрый и инклюзивный опыт для всех пользователей.

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

Начать

Присоединяйтесь к пробной версии API переводчика , работающей в Chrome 131–138.

Хотя вы всегда знаете целевой язык для переводов, вы не всегда можете знать исходный язык, например, в пользовательском контенте. Для таких случаев предложение Translator API включает как Translator API, так и Language Detector API , также доступные в пробной версии origin . Зарегистрируйтесь для обеих пробных версий origin, чтобы использовать эти API вместе.

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

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

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

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

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

Зарегистрируйтесь для пробной версии Origin

Чтобы начать использовать API переводчика, выполните следующие действия:

  1. Примите Политику Google в отношении запрещенного использования генеративного ИИ .
  2. Перейти к пробной версии API переводчика .
  3. Нажмите «Зарегистрироваться» и заполните форму.
    • В поле «Веб-источник» укажите идентификатор источника или расширения, chrome-extension://YOUR_EXTENSION_ID .
  4. Для отправки нажмите «Зарегистрироваться» .
  5. Скопируйте предоставленный токен и добавьте его на каждую веб-страницу в вашем источнике или файле для вашего расширения, на котором вы хотите включить пробную версию.
  6. Начните использовать API переводчика .

Узнайте больше о том, как начать работу с пробными версиями Origin .

Добавить поддержку на localhost

Чтобы получить доступ к API переводчика на localhost во время пробной версии Origin, необходимо обновить Chrome до последней версии. Затем выполните следующие действия:

  1. Перейдите по адресу chrome://flags/#translation-api .
  2. Выберите Включено .
    • Чтобы попробовать больше языковых пар, выберите Включено без ограничения языковых пакетов .
  3. Нажмите «Перезапустить» или перезапустите Chrome.

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

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

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

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

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

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

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

const translatorCapabilities = await Translator.availability({
  sourceLanguage: 'es',
  targetLanguage: 'fr',
});
// 'available'

Функция availability() возвращает обещание со следующими значениями:

  • "unavailable" означает, что реализация не поддерживает перевод или определение языка для данного языка(ов).
  • "downloadable" означает, что реализация поддерживает перевод или определение языка для заданного языка(ов), но для создания соответствующего объекта ей придется что-то загрузить (например, модель машинного обучения).
  • "downloading" означает, что реализация поддерживает перевод или определение языка для заданного языка(ов), но для этого необходимо будет завершить текущую загрузку в рамках создания связанного объекта.
  • "available" означает, что реализация поддерживает перевод или определение языка для указанного языка(ов) без выполнения каких-либо загрузок.

Вы можете отслеживать ход загрузки модели с помощью события 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 ?"

Ограничения в исходном исследовании

В течение пробного периода действуют следующие ограничения.

Поддерживаемые языковые пары

В настоящее время для перевода можно загрузить до трех языковых пакетов. Мы стремимся расширить диапазон поддерживаемых языков в будущих выпусках, сохраняя при этом высокие стандарты конфиденциальности пользователей. Вы можете подтвердить, поддерживается ли нужная вам языковая пара, с помощью функции languagePairAvailable() .

Возможно, что определенные, менее распространенные языковые пары могут использоваться для снятия отпечатков пальцев . Например, чаще переводят между английским и испанским, чем между менее распространенными языками, такими как гэльский и каталонский. Менее распространенная языковая пара может считаться точкой данных для идентификации пользователя.

В ходе тестирования Origin мы ограничиваем потенциальные переводимые языковые пары для защиты конфиденциальности пользователей. Языковые пары должны соответствовать следующим критериям:

  • В Chrome как исходный, так и целевой язык устанавливаются в качестве предпочитаемых языков .
  • Или один из языков установлен как предпочитаемый язык в Chrome, а другой входит в число следующих популярных языков :
    • Английский ( en )
    • Мандаринский китайский ( zh ; упрощенный) или тайваньский мандаринский ( zh-Hant ; традиционный)
    • Японский (яп. ja )
    • Португальский ( pt )
    • Русский ( ru )
    • Испанский ( es )
    • Турецкий ( tr )
    • Хинди ( hi )
    • вьетнамский ( vi )
    • Бенгальский ( bn )

Обойти языковые ограничения для локального тестирования

Для локального прототипирования вы можете обойти эти проверки, запустив Chrome с параметром командной строки --disable-features=TranslationAPIAcceptLanguagesCheck . В качестве альтернативы установите chrome://flags/#translation-api на Enable without language pack limit .

Посетите chrome://on-device-translation-internals/ чтобы вручную установить и удалить языковые пакеты.

Последовательные переводы

Переводы обрабатываются последовательно. Если вы отправляете большие объемы текста на перевод, последующие переводы блокируются до тех пор, пока не будут завершены предыдущие.

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

Доступность веб-работника

В то время как в исходном пробном периоде API Translator поддерживается только из основного потока. Мы намерены поддерживать его в веб-работниках, как только API станет широко доступным.

Демо

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

Усилия по стандартизации

Мы работаем над стандартизацией API переводчика, чтобы обеспечить кроссбраузерную совместимость.

Наше предложение API получило поддержку сообщества и было перемещено в группу сообщества W3C Web Incubator для дальнейшего обсуждения. Команда Chrome запросила обратную связь от группы технической архитектуры W3C и попросила Mozilla и WebKit высказать свои позиции по стандартам.

Участвуйте и делитесь отзывами

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