Proofreader API

Dipublikasikan: 12 September 2025

Penjelasan Web Ekstensi Status Chrome Intent
GitHub Uji coba developer Uji coba developer Uji coba developer Uji coba developer View Intent to Experiment

Proofreading adalah proses mencari dan mengoreksi kesalahan dalam tata bahasa, ejaan, dan tanda baca. Browser dan sistem operasi semakin sering menawarkan proofreading ke alat penyusunnya, seperti di Google Dokumen.

Dengan Proofreader API, Anda dapat menyediakan proofreading interaktif ke aplikasi atau ekstensi web Anda, dengan AI bawaan. API ini menawarkan fungsi berikut:

  • Koreksi: Mengoreksi input pengguna untuk tata bahasa, ejaan, dan tanda baca.
  • Label: Memberi label pada setiap koreksi berdasarkan jenis error.
  • Penjelasan: Menentukan apa yang salah atau mengapa koreksi diperlukan dalam bahasa yang mudah dipahami.

Kasus penggunaan

Ada banyak alasan mengapa Anda mungkin ingin menggunakan Proofreader API Misalnya:

  • Menyarankan koreksi untuk pesan forum, komentar pada artikel, dan email, sebelum postingan dikirimkan.
  • Memberikan koreksi selama pencatatan aktif.

Apakah kasus penggunaan Anda tidak ada? Bergabunglah dengan program pratinjau awal untuk memberikan masukan.

Mulai

Bergabunglah dengan uji coba origin Proofreader API, yang berjalan di Chrome 141 hingga 145.

Meninjau persyaratan hardware

Persyaratan berikut berlaku untuk developer dan pengguna yang mengoperasikan fitur menggunakan API ini di Chrome. Browser lain mungkin memiliki persyaratan operasi yang berbeda.

Language Detector dan Translator API berfungsi di Chrome di desktop. API ini tidak berfungsi di perangkat seluler.

The Prompt API, Summarizer API, Writer API, Rewriter API, dan Proofreader API berfungsi di Chrome jika kondisi berikut terpenuhi:

  • Sistem operasi: Windows 10 atau 11; macOS 13+ (Ventura dan yang lebih baru); Linux; atau ChromeOS (dari Platform 16389.0.0 dan yang lebih baru) di Chromebook Plus perangkat. Chrome untuk Android, iOS, dan ChromeOS di perangkat non-Chromebook Plus belum didukung oleh API yang menggunakan model dasar.
  • Penyimpanan: Minimal 22 GB ruang kosong di volume yang berisi profil Chrome Anda.
  • GPU atau CPU: Model bawaan dapat berjalan dengan GPU atau CPU.
    • GPU: Lebih dari 4 GB VRAM.
    • CPU: RAM 16 GB atau lebih dan 4 core CPU atau lebih.
    • Catatan: Prompt API dengan input audio memerlukan GPU.
  • Jaringan: Data tidak terbatas atau koneksi tidak berkuota.

Ukuran pasti Gemini Nano dapat bervariasi saat browser mengupdate model. Untuk menentukan ukuran saat ini, buka chrome://on-device-internals.

Menambahkan dukungan ke localhost

Semua API AI bawaan tersedia di localhost di Chrome. Tetapkan flag berikut ke Enabled:

  • chrome://flags/#proofreader-api

Kemudian, klik Relaunch atau mulai ulang Chrome. Jika Anda mengalami error, lakukan pemecahan masalah localhost.

Mendaftar ke uji coba origin

Untuk mulai menggunakan Proofreader API, ikuti langkah-langkah berikut:

  1. Buka uji coba origin Proofreader API.
  2. Klik Register dan isi formulir. Di kolom Web origin, berikan origin atau ID ekstensi Anda, chrome-extension://YOUR_EXTENSION_ID.
  3. Untuk mengirim, klik Register.
  4. Salin token yang diberikan, dan tambahkan ke setiap halaman web yang berpartisipasi di origin Anda atau sertakan dalam manifes Ekstensi Anda.
  5. Mulai gunakan Proofreader API.

Pelajari lebih lanjut cara memulai uji coba origin.

Menggunakan Proofreader API

Untuk menentukan apakah model siap digunakan, panggil Proofreader.availability(). Jika respons terhadap availability() adalah "downloadable", dengarkan progres download dan beri tahu pengguna, karena download mungkin memerlukan waktu.

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

Untuk memicu download dan membuat instance proofreader, periksa aktivasi pengguna. Kemudian, panggil fungsi Proofreader.create() asinkron.

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

Membuat objek Proofreader

Untuk membuat Proofreader, gunakan fungsi Proofreader.create().

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

Metode create() mencakup opsi berikut:

  • expectedInputLanguages: Array bahasa input yang diharapkan.

Opsi includeCorrectionTypes dan includeCorrectionExplanation dari penjelasan tidak didukung.

Mulai proofreading teks pengguna

Panggil proofread() untuk mendapatkan koreksi untuk teks input:

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

Koreksi adalah jenis ProofreadResult. Temukan input yang dikoreksi sepenuhnya di atribut correctedInput dan daftar koreksi di array 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);
}

Kebijakan Izin, iframe, dan Web Worker

Secara default, Proofreader API hanya tersedia untuk jendela tingkat atas dan iframe asal yang sama. Akses ke API dapat didelegasikan ke iframe lintas origin menggunakan atribut Kebijakan Izin 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>

Proofreader API tidak tersedia di Web Worker. Hal ini disebabkan oleh kompleksitas pembuatan dokumen yang bertanggung jawab untuk setiap pekerja, guna memeriksa status Kebijakan Izin.

Demo

Coba playground Proofreader API dan lihat kode sumbernya.

Berinteraksi dan memberikan masukan

Proofreader API sedang dalam tahap pembahasan aktif dan dapat berubah di masa mendatang. Jika Anda mencoba API ini dan memiliki masukan, kami ingin mendengarnya.

Temukan semua API AI bawaan yang menggunakan model, termasuk model bahasa besar, di browser.