Опубликовано: 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 переводчика
- API для определения языка
- API сумматора
- API для записи и API для перезаписи
- API корректора
- 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.
- Перейдите по ссылке
chrome://flags/#optimization-guide-on-device-model. - Выберите «Включено» .
- Нажмите «Перезапустить» или перезапустите Chrome.
Для API, использующих Gemini Nano, необходимо также установить chrome://flags/#prompt-api-for-gemini-nano в значение Enabled или Enabled multilingual . Проверить загрузку и корректную работу модели можно в консоли инструментов разработчика . Выполните команду await LanguageModel.availability(); в консоли.
Устранение неполадок localhost
Если флаги не отображаются в chrome://flags , убедитесь, что вы загрузили последнюю версию Chrome .
Если модель работает не так, как ожидалось, выполните следующие действия:
- Перезапустите Chrome.
- Перейдите по адресу
chrome://on-device-internals. - Выберите вкладку «Состояние модели» и убедитесь в отсутствии ошибок.
- Откройте инструменты разработчика и введите в консоль
LanguageModel.availability();В результате должно отобразиться значениеavailable.
При необходимости подождите некоторое время и повторите эти шаги.
Процесс стандартизации
Мы работаем над стандартизацией этих API , чтобы они работали во всех браузерах. Это означает, что мы предложили API сообществу веб-платформ и передали их в группу сообщества W3C Web Incubator для дальнейшего обсуждения.
Мы запрашиваем отзывы у W3C, Mozilla и WebKit по каждому API.
Принимайте участие и делитесь отзывами.
Если вы попробуете встроенный ИИ и у вас появятся отзывы, мы будем рады их услышать.
- Ознакомьтесь со всеми встроенными API для искусственного интеллекта .
- Присоединяйтесь к программе раннего ознакомления , чтобы первыми увидеть новые API и получить доступ к нашей почтовой рассылке.
- Если у вас есть замечания по реализации в Chrome, создайте сообщение об ошибке в Chromium .
- Изучите веб-стандарты .