تاريخ النشر: 12 ديسمبر 2024، تاريخ آخر تعديل: 20 مايو 2025
باستخدام واجهات برمجة تطبيقات الذكاء الاصطناعي المضمّنة، يمكن لتطبيق الويب تنفيذ مهام مستندة إلى الذكاء الاصطناعي بدون الحاجة إلى نشر نماذج الذكاء الاصطناعي الخاصة به أو إدارتها. نحن نعمل على توحيد هذه واجهات برمجة التطبيقات على جميع المتصفّحات.
لاستخدام الذكاء الاصطناعي المضمَّن، يجب استيفاء متطلبات النموذج والأجهزة.
النماذج المطلوبة
تستخدم واجهتا برمجة التطبيقات Translator وLanguage Detector نماذج خبراء. تستخدم جميع واجهات برمجة التطبيقات الأخرى نموذجًا لغويًا مصمّمًا للعمل محليًا على أجهزة الكمبيوتر المكتبية والمحمولة.
تتيح واجهات برمجة التطبيقات Summarizer API وWriter API وRewriter API وProofreader API استخدام طلبات وردود نصية فقط. تتضمّن Prompt API إمكانات متعدّدة الوسائط.
طُرز Chrome
يستخدم Chrome نماذج لغوية أساسية ونماذج لغوية متخصصة. لا تتوفّر هذه النماذج على الأجهزة الجوّالة.
بدءًا من الإصدار 149 من Chrome، تتوافق النماذج مع اللغات الإنجليزية والإسبانية واليابانية والألمانية والفرنسية في ما يتعلق بالنصوص المدخلة والمخرجة.
الأجهزة المطلوبة
تتوفّر المتطلبات التالية للمطوّرين والمستخدمين الذين يشغّلون الميزات باستخدام واجهات برمجة التطبيقات هذه في Chrome. قد تتطلّب المتصفّحات الأخرى متطلبات تشغيل مختلفة.
تعمل واجهة برمجة التطبيقات الخاصة بخدمة "التعرّف على اللغة" وواجهة برمجة التطبيقات الخاصة بخدمة "ترجمة Google" في متصفّح 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 لا تتوافق واجهات برمجة التطبيقات التي تستخدم النماذج الأساسية بعد مع Chrome لنظام Android وiOS وChromeOS على الأجهزة غير Chromebook Plus.
- مساحة التخزين: يجب توفُّر مساحة خالية لا تقل عن 22 غيغابايت على وحدة التخزين التي تحتوي على ملفك الشخصي على Chrome.
- وحدة معالجة الرسومات أو وحدة المعالجة المركزية: يمكن تشغيل النماذج المضمّنة باستخدام وحدة معالجة الرسومات أو وحدة المعالجة المركزية.
- وحدة معالجة الرسومات: يجب أن تكون ذاكرة الوصول العشوائي للفيديو (VRAM) أكبر من 4 غيغابايت.
- وحدة المعالجة المركزية: ذاكرة وصول عشوائي (RAM) بسعة 16 غيغابايت أو أكثر و4 نوى لوحدة المعالجة المركزية أو أكثر
- ملاحظة: تتطلّب واجهة Prompt API التي تستخدم الإدخال الصوتي وحدة معالجة الرسومات.
- الشبكة: بيانات غير محدودة أو اتصال لا تفرض تكلفة استخدام.
قد يختلف حجم Gemini Nano الدقيق مع تحديث المتصفّح للنموذج. لمعرفة الحجم الحالي، انتقِل إلى chrome://on-device-internals.
بدء الإنشاء
تتوفّر العديد من واجهات برمجة التطبيقات المضمّنة المستندة إلى الذكاء الاصطناعي في مراحل مختلفة من التطوير. بعضها متاح في إصدار Chrome الثابت، وبعضها الآخر متاح للمشاركين في التجارب الأصلية، وبعضها الآخر متاح فقط للمشاركين في برنامج الاستخدام المبكر.
تتضمّن كل واجهة برمجة تطبيقات مجموعة التعليمات الخاصة بها لبدء الاستخدام وتنزيل النموذج، سواء لإنشاء نماذج أوّلية محلية أو في بيئات الإنتاج باستخدام التجارب الأصلية.
- Translator API
- Language Detector API
- Summarizer API
- Writer API وRewriter API
- Proofreader API
- Prompt API
يمكن استخدام جميع واجهات برمجة التطبيقات هذه عند إنشاء إضافات Chrome.
تنزيل النموذج
تكون واجهات برمجة التطبيقات مضمَّنة في Chrome، وكذلك النماذج. في المرة الأولى التي يتفاعل فيها المستخدم مع واجهات برمجة التطبيقات هذه، يجب تنزيل النموذج إلى المتصفّح.
لتحديد ما إذا كانت واجهة برمجة التطبيقات قابلة للاستخدام وجاهزة، استدعِ الدالة غير المتزامنة availability()، التي تعرض وعدًا يتضمّن إحدى القيم التالية:
-
"unavailable": لا يتوافق جهاز المستخدم أو خيارات الجلسة المطلوبة مع هذه الميزة. قد لا يتوفّر للجهاز طاقة أو مساحة تخزين كافية. "downloadable": يجب تنزيل ملفات إضافية لإنشاء جلسة، وقد يشمل ذلك نموذجًا متخصصًا أو نموذجًا لغويًا أو عملية ضبط دقيق. قد يكون من الضروري تفعيل المستخدم لطلب الإجراءcreate()."downloading": عمليات التنزيل قيد التقدّم ويجب إكمالها قبل أن تتمكّن من استخدام جلسة."available": يمكنك إنشاء جلسة على الفور.
تتطلّب بعض واجهات برمجة التطبيقات خيارات إضافية عند طلب معلومات التوفّر. على سبيل المثال، تتطلّب Prompt API الإفصاح عن اللغات المتوافقة:
// Makes sure the model is available for English and Japanese input text,
// supports image input, and can generate English output.
await LanguageModel.availability({
expectedInputs: [{type: "text", languages: ["en", "ja"]}, {type: "image"}],
expectedOutputs: [{type: "text", languages: ["en"]}],
});
تفعيل حساب المستخدم
إذا كان الجهاز يتوافق مع واجهات برمجة التطبيقات المضمّنة للذكاء الاصطناعي، ولكن لم يتم تنزيل النموذج بعد (أي عندما يؤدي طلب availability() إلى عرض "downloadable" أو "downloading")، يجب أن يتفاعل المستخدم بشكل مفيد مع صفحتك لكي يبدأ تطبيقك جلسة مع create().
استخدِم السمة UserActivation.isActive
للتأكّد من أنّ المستخدم تفاعل مباشرةً مع الصفحة منذ أن انتهى تحميلها. ويمكن أن يشمل ذلك نقرة أو ضغطة أو ضغطة مفتاح أو mousedown أو غير ذلك من أحداث التفعيل الثابتة.
// Check for user activation.
if (navigator.userActivation.isActive) {
// Create an instance of a built-in API
}
على سبيل المثال، باستخدام Summarizer API، يمكنك أن تطلب من المستخدمين النقر على زر "تلخيص" لتفعيل Summarizer.create()، أو يمكنك إنشاء الملخّص بعد أن يبدأ المستخدم في الكتابة، وهو حدث keydown.
تحديد المشاكل في localhost وحلّها
إذا لم يعمل النموذج على النحو المتوقّع، اتّبِع الخطوات التالية:
- أعِد تشغيل Chrome.
- الانتقال إلى
chrome://on-device-internals - انقر على علامة التبويب حالة وسيط التداول وتأكَّد من عدم وجود أي أخطاء.
- افتح "أدوات مطوّري البرامج" واكتب
LanguageModel.availability();في وحدة التحكّم. من المفترض أن تعرض هذه الدالة القيمةavailable.
انتظِر بعض الوقت وكرِّر هذه الخطوات إذا لزم الأمر.
عملية المعايير
نحن نعمل على توحيد هذه واجهات برمجة التطبيقات، لكي تعمل على جميع المتصفّحات. يعني ذلك أنّنا اقترحنا واجهات برمجة التطبيقات على منتدى منصات الويب، ونقلناها إلى مجموعة W3C Web Incubator Community Group لمناقشتها بشكل أكبر.
نطلب الحصول على ملاحظات من W3C وMozilla وWebKit بشأن كل واجهة برمجة تطبيقات.
التفاعل ومشاركة الملاحظات
إذا جرّبت الذكاء الاصطناعي المضمّن ولديك ملاحظات، يسعدنا تلقّيها.
- استكشاف جميع واجهات برمجة تطبيقات الذكاء الاصطناعي المدمجة
- الانضمام إلى برنامج الاستخدام المبكر للاطّلاع على واجهات برمجة التطبيقات الجديدة قبل إطلاقها والاستفادة من القائمة البريدية
- إذا كان لديك ملاحظات حول طريقة تنفيذ Chrome لهذه الميزة، يمكنك الإبلاغ عن خطأ في Chromium.
- مزيد من المعلومات حول معايير الويب