API корректора

Опубликовано: 12 сентября 2025 г.

Пояснительная записка Веб Расширения Статус Chrome Намерение
GitHub Испытание происхождения Испытание происхождения Испытание происхождения Испытание происхождения Вид Намерение провести эксперимент

Корректура — это процесс поиска и исправления ошибок в грамматике, орфографии и пунктуации. Браузеры и операционные системы все чаще предлагают функцию проверки орфографии в своих инструментах для создания текстов, например, в Google Docs .

С помощью API Proofreader вы можете добавить интерактивную проверку орфографии в ваше веб-приложение или расширение, используя встроенный искусственный интеллект. Этот API предлагает следующие функции:

  • Исправление : Исправить введенные пользователем данные, устранив грамматические, орфографические и пунктуационные ошибки.
  • Метки : Укажите тип ошибки для каждого исправления.
  • Пояснение : Объяснить простым языком, в чем заключается ошибка или почему необходимо исправить ошибку.

Варианты использования

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

  • Перед отправкой публикации предлагайте внести исправления в сообщения на форуме, комментарии к статьям и электронные письма.
  • Вносите исправления в процессе активного ведения записей.

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

Начать

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

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

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

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

Все встроенные API для ИИ доступны на localhost в Chrome. Установите следующие флаги в значение «Включено» :

  • chrome://flags/#optimization-guide-on-device-model
  • chrome://flags/#prompt-api-for-gemini-nano-multimodal-input
  • chrome://flags/#proofreader-api-for-gemini-nano

Затем нажмите «Перезапустить» или перезапустите Chrome. Если возникнут ошибки, выполните диагностику localhost .

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

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

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

Узнайте больше о том, как начать работу с экспериментальными проектами по изучению происхождения .

Используйте API корректора

Чтобы определить, готова ли модель к использованию, вызовите метод Proofreader.availability() . Если ответ на вызов availability() был "downloadable" , отслеживайте ход загрузки и сообщите пользователю, так как загрузка может занять время.

const options = {
  expectedInputLanguages: ['en'],
};
const available = if (Proofreader.availability("downloadable") === true);

Чтобы запустить загрузку и создать экземпляр корректора, проверьте активацию пользователя . Затем вызовите асинхронную функцию Proofreader.create() .

const session = await Proofreader.create({
  monitor(m) {
    m.addEventListener('downloadprogress', (e) => {
      console.log(`Downloaded ${e.loaded * 100}%`);
    });
  },
  ...options,
});

Создайте объект «Проверщик орфографии».

Для создания объекта Proofreader используйте функцию Proofreader.create() .

const proofreader = await Proofreader.create({
  expectedInputLanguages: ["en"],
  monitor(m) {
    m.addEventListener("downloadprogress", e => {
      console.log(Downloaded ${e.loaded * 100}%);
    });
  }
};

Метод create() включает следующие параметры:

  • expectedInputLanguages : Массив ожидаемых языков ввода.

Параметры includeCorrectionTypes и includeCorrectionExplanation из пояснительного кода не поддерживаются.

Начать проверку текста пользователя

Вызовите функцию proofread() , чтобы получить исправления для входного текста:

const proofreadResult = await proofreader.proofread(
  'I seen him yesterday at the store, and he bought two loafs of bread.',
);

Исправления относятся к типу ProofreadResult . Полностью исправленный текст можно найти в атрибуте correctedInput , а список исправлений — в массиве corrections :

let inputRenderIndex = 0;

console.log(proofreadResult.correction);

for (const correction of proofreadResult.corrections) {
  // Render part of input that has no error.
  if (correction.startIndex > inputRenderIndex) {
    const unchangedInput = document.createElement('span');
    unchangedInput.textContent = input.substring(inputRenderIndex, correction.startIndex);
    editBox.append(unchangedInput);
  }
  // Render part of input that has an error and highlight as such.
  const errorInput = document.createElement('span');
  errorInput.textContent = input.substring(correction.startIndex, correction.endIndex);
  errorInput.classList.add('error');
  editBox.append(errorInput);
  inputRenderIndex = correction.endIndex;
}

// Render the rest of the input that has no error.
if (inputRenderIndex !== input.length){
  const unchangedInput = document.createElement('span');
  unchangedInput.textContent = input.substring(inputRenderIndex, input.length);
  editBox.append(unchangedInput);
}

Политика разрешений, iframe и веб-воркеры

По умолчанию API корректора доступен только окнам верхнего уровня и их iframe-элементам того же источника. Доступ к API можно делегировать iframe-элементам другого источника, используя атрибут политики разрешений allow="":

<!--
  The hosting site at https://main.example.com can grant a cross-origin iframe
  at https://cross-origin.example.com/ access to the Proofreader API by
  setting the `allow="proofreader"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="proofreader"></iframe>

API корректора недоступен в Web Workers. Это связано со сложностью создания ответственного документа для каждого Workers, необходимого для проверки статуса политики разрешений.

Демо

Поэкспериментируйте с тестовой площадкой API Proofreader и изучите исходный код .

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

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

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