Начните работу со встроенным искусственным интеллектом

Александра Клеппер
Alexandra Klepper

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

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

Требования

Для использования встроенного ИИ существуют требования к модели и аппаратному обеспечению.

Модели

API-интерфейсы «Переводчик» и «Определитель языка» используют экспертные модели. Все остальные API-интерфейсы используют языковую модель, предназначенную для локальной работы на настольных компьютерах и ноутбуках.

API для создания кратких текстов (Summarizer API), API для написания текстов (Writer API), API для переписывания текстов (Rewriter API) и API для проверки орфографии (Proofreader API) поддерживают только преобразование текста в текст. API для создания подсказок (Prompt API) обладает возможностями работы с несколькими текстами одновременно .

Gemini Nano в Chrome

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

Начиная с Chrome 140, Gemini Nano поддерживает ввод и вывод текста на английском, испанском и японском языках.

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

Аппаратное обеспечение

Для разработчиков и пользователей, использующих функции этих 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 для искусственного интеллекта, находящихся на разных этапах разработки. Некоторые из них уже включены в стабильную версию Chrome, некоторые доступны участникам первоначальных пробных версий, а другие — только участникам программы раннего предварительного просмотра .

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

Все эти API можно использовать при создании расширений для Chrome.

Загрузка модели

В Chrome встроены API и модели. При первом взаимодействии пользователя с этими API модель должна быть загружена в браузер.

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

  • "unavailable" : Устройство пользователя или запрошенные параметры сессии не поддерживаются. Возможно, устройству не хватает питания или места на диске.
  • "downloadable" : Для создания сессии необходимы дополнительные загрузки, которые могут включать экспертную модель, языковую модель или тонкую настройку. Для вызова функции create() может потребоваться активация пользователя .
  • "downloading" : Загрузка продолжается и должна завершиться, прежде чем вы сможете использовать сессию.
  • "available" : Вы можете создать сессию немедленно.

Для некоторых API при вызове функции available требуются дополнительные параметры. Например, API Prompt требует указания поддержки языка:

// Makes sure the model is available for English and Japanese.
await LanguageModel.availability({ languages: ["en", "ja"] });

Активация пользователя

Если устройство поддерживает встроенные API ИИ, но модель еще не загружена, пользователь должен осмысленно взаимодействовать с вашей страницей, чтобы ваше приложение могло начать сессию с помощью create() .

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

// Check for user activation.
if (navigator.userActivation.isActive) {
  // Create an instance of a built-in API
}

Например, с помощью API Summarizer вы можете попросить пользователей взаимодействовать с кнопкой «Summarize», чтобы активировать Summarizer.create() , или вы можете создать Summarizer после того, как пользователь начнет печатать, по событию keydown .

Используйте API на локальном компьютере.

Все API доступны на localhost в Chrome.

  1. Перейдите по ссылке chrome://flags/#optimization-guide-on-device-model .
  2. Выберите «Включено» .
  3. Нажмите «Перезапустить» или перезапустите Chrome.

Для API, использующих Gemini Nano, необходимо также установить chrome://flags/#prompt-api-for-gemini-nano в значение Enabled или Enabled multilingual . Проверить загрузку и корректную работу модели можно в консоли инструментов разработчика . Выполните команду await LanguageModel.availability(); в консоли.

Устранение неполадок localhost

Если флаги не отображаются в chrome://flags , убедитесь, что вы загрузили последнюю версию Chrome .

Если модель работает не так, как ожидалось, выполните следующие действия:

  1. Перезапустите Chrome.
  2. Перейдите по адресу chrome://on-device-internals .
  3. Выберите вкладку «Состояние модели» и убедитесь в отсутствии ошибок.
  4. Откройте инструменты разработчика и введите в консоль LanguageModel.availability(); В результате должно отобразиться значение available .

При необходимости подождите некоторое время и повторите эти шаги.

Процесс стандартизации

Мы работаем над стандартизацией этих API , чтобы они работали во всех браузерах. Это означает, что мы предложили API сообществу веб-платформ и передали их в группу сообщества W3C Web Incubator для дальнейшего обсуждения.

Мы запрашиваем отзывы у W3C, Mozilla и WebKit по каждому API.

Принимайте участие и делитесь отзывами.

Если вы попробуете встроенный ИИ и у вас появятся отзывы, мы будем рады их услышать.