The Proofreader API

تاريخ النشر: 4 سبتمبر 2025

شرح الويب الإضافات حالة Chrome النيّة بالشراء
Github مرحلة التجربة والتقييم مرحلة التجربة والتقييم مرحلة التجربة والتقييم مرحلة التجربة والتقييم العرض Intent to Prototype

التدقيق اللغوي هو عملية البحث عن الأخطاء النحوية والإملائية وأخطاء علامات الترقيم وتصحيحها. أتاحت المتصفحات وأنظمة التشغيل بشكل متزايد ميزة التدقيق اللغوي في أدوات الإنشاء، مثل مستندات Google.

باستخدام Proofreader API، يمكنك توفير تدقيق إملائي تفاعلي لتطبيقك على الويب أو الإضافة، مع تضمين الذكاء الاصطناعي. توفّر واجهة برمجة التطبيقات هذه الوظائف التالية:

  • التصحيح: تصحيح الأخطاء النحوية والإملائية وأخطاء علامات الترقيم في البيانات التي يُدخلها المستخدم
  • التصنيفات: صنِّف كل تصحيح حسب نوع الخطأ.
  • التفسير: تحديد ماهية الخطأ أو سبب ضرورة التصحيح بلغة بسيطة

حالات الاستخدام

هناك العديد من الأسباب التي قد تدفعك إلى استخدام واجهة برمجة التطبيقات Proofreader API، مثل:

  • اقتراح تصحيحات لرسائل المنتدى والتعليقات على المقالات ورسائل البريد الإلكتروني، قبل إرسال المشاركة
  • تقديم تصحيحات أثناء تدوين الملاحظات

هل حالة الاستخدام غير متوفّرة؟ يمكنك الانضمام إلى برنامج الاستخدام المبكر لمشاركة ملاحظاتك.

البدء

يمكنك الانضمام إلى مرحلة التجربة والتقييم لواجهة برمجة التطبيقات Proofreader API التي ستتوفّر في الإصدارات من 141 إلى 145 من Chrome.

مراجعة متطلبات الأجهزة

تتوفّر المتطلبات التالية للمطوّرين والمستخدمين الذين يشغّلون الميزات باستخدام واجهات برمجة التطبيقات هذه في Chrome. قد تتطلّب المتصفّحات الأخرى متطلبات تشغيل مختلفة.

تعمل واجهتا برمجة التطبيقات Language Detector وTranslator في متصفّح Chrome على الكمبيوتر. ولا تعمل واجهات برمجة التطبيقات هذه على الأجهزة الجوّالة. تعمل واجهات برمجة التطبيقات Prompt API وSummarizer API وWriter API وRewriter API وProofreader API في Chrome عند استيفاء الشروط التالية:

  • نظام التشغيل: Windows 10 أو 11 أو macOS 13 (Ventura والإصدارات الأحدث) أو Linux أو ChromeOS (الإصدار 16389.0.0 والإصدارات الأحدث) على أجهزة Chromebook Plus لا تتوافق واجهات برمجة التطبيقات التي تستخدم Gemini Nano بعد مع Chrome على Android وiOS وChromeOS على الأجهزة غير Chromebook Plus.
  • مساحة التخزين: يجب توفّر مساحة خالية لا تقل عن 22 غيغابايت على وحدة التخزين التي تحتوي على ملفك الشخصي على Chrome.
  • وحدة معالجة الرسومات (GPU): يجب أن تكون ذاكرة الوصول العشوائي للفيديو (VRAM) أكبر من 4 غيغابايت.
  • الشبكة: بيانات غير محدودة أو اتصال غير محدود.

قد يختلف حجم Gemini Nano الدقيق مع تحديث المتصفّح للنموذج. لمعرفة الحجم الحالي، انتقِل إلى chrome://on-device-internals.

إضافة دعم إلى localhost

للوصول إلى واجهة برمجة التطبيقات Proofreader API على المضيف المحلي أثناء مرحلة التجربة والتقييم، عليك تحديث Chrome إلى أحدث إصدار. ثم اتبع الخطوات التالية:

  1. الانتقال إلى chrome://flags/#proofreader-api-for-gemini-nano
  2. اختَر مفعّل.
  3. انقر على إعادة التشغيل أو أعِد تشغيل Chrome.

الاشتراك في التجربة الأصلية

لبدء استخدام Proofreader API، اتّبِع الخطوات التالية:

  1. الموافقة على سياسة الاستخدام المحظور للذكاء الاصطناعي التوليدي من Google
  2. انتقِل إلى مرحلة التجربة والتقييم في Proofreader API.
  3. انقر على تسجيل واملأ النموذج. في حقل "مصدر الويب"، أدخِل المصدر أو رقم تعريف الإضافة، chrome-extension://YOUR_EXTENSION_ID.
  4. لإرسال الطلب، انقر على تسجيل.
  5. انسخ الرمز المميّز المقدَّم، وأضِفه إلى كل صفحة ويب مشارِكة في مصدرك أو أدرِجه في بيان Extension.
  6. ابدأ باستخدام واجهة برمجة التطبيقات Proofreader API.

مزيد من المعلومات حول كيفية بدء استخدام التجارب الأصلية

استخدام Proofreader 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. ابحث عن الإدخال المصحّح بالكامل في السمة corrected وقائمة التصحيحات في مصفوفة 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 وWeb Workers

تتوفّر واجهة برمجة التطبيقات Proofreader API تلقائيًا للنوافذ ذات المستوى الأعلى ولإطارات iframe التي لها المصدر نفسه. يمكن تفويض إذن الوصول إلى واجهة برمجة التطبيقات إلى إطارات iframe من مصادر متعددة باستخدام السمة allow="" في Permission Policy:

<!--
  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 في Web Workers. ويرجع ذلك إلى صعوبة إنشاء مستند مسئول لكل عامل من أجل التحقّق من حالة "سياسة الأذونات".

عرض توضيحي

يمكنك تجربة بيئة الاختبار الخاصة بواجهة Proofreader API.

التفاعل مع الملاحظات ومشاركتها

تخضع واجهة برمجة التطبيقات Proofreader API حاليًا لمناقشات نشطة، وقد تتغيّر في المستقبل. إذا جرّبت واجهة برمجة التطبيقات هذه وكانت لديك ملاحظات، يسعدنا تلقّيها.

استكشِف جميع واجهات برمجة التطبيقات المضمَّنة للذكاء الاصطناعي التي تستخدم نماذج، بما في ذلك النماذج اللغوية الكبيرة، في المتصفّح.