ميزة "التعرّف على اللغة" باستخدام تكنولوجيات الذكاء الاصطناعي المدمجة

تاريخ النشر: 24 سبتمبر 2024، تاريخ آخر تعديل: 20 مايو 2025

Browser Support

  • Chrome: 138.
  • Edge: 148.
  • Firefox: not supported.
  • Safari: not supported.

Source

قبل ترجمة نص من لغة إلى أخرى، عليك أولاً تحديد اللغة المستخدمة في النص المحدّد. في السابق، كانت الترجمة تتطلّب تحميل النص إلى خدمة سحابية، ثم إجراء الترجمة على الخادم، ثم تنزيل النتائج.

تعمل واجهة برمجة التطبيقات Language Detector API من جهة العميل، ما يعني أنّه يمكنك حماية خصوصية المستخدم. على الرغم من إمكانية شحن مكتبة معيّنة تنفّذ هذه العملية، إلا أنّها ستتطلّب موارد إضافية لتنزيلها.

حالات استخدام ميزة "اكتشاف اللغة"

تكون واجهة برمجة التطبيقات Language Detector API مفيدة بشكل أساسي في الحالات التالية:

  • تحديد لغة النص المُدخَل، حتى يمكن ترجمته
  • تحديد لغة النص المُدخَل، حتى يمكن تحميل النموذج الصحيح للمهام الخاصة باللغة، مثل رصد اللغة السامة
  • تحديد لغة النص المدخل، حتى يمكن تصنيفه بشكل صحيح، على سبيل المثال، في مواقع التواصل الاجتماعي على الإنترنت
  • تحديد لغة النص المدخل، حتى يمكن تعديل واجهة التطبيق وفقًا لذلك على سبيل المثال، على موقع إلكتروني بلجيكي، لعرض الواجهة ذات الصلة بالمستخدمين الذين يتحدثون الفرنسية فقط.

البدء

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

نفِّذ عملية رصد الميزات لمعرفة ما إذا كان المتصفّح يتيح استخدام Language Detector API.

if ('LanguageDetector' in self) {
  // The Language Detector API is available.
}

تنزيل النموذج

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

لتحديد ما إذا كان النموذج جاهزًا للاستخدام، استدعِ الدالة غير المتزامنة LanguageDetector.availability(). إذا كان الردّ على availability() هو downloadable، استمع إلى مستوى التقدّم في عملية التنزيل وأبلِغ المستخدم بذلك، لأنّ عملية التنزيل قد تستغرق بعض الوقت.

لتشغيل عملية التنزيل وإنشاء مثيل لأداة رصد اللغة، تحقَّق من تفعيل المستخدم. بعد ذلك، استدعِ الدالة غير المتزامنة LanguageDetector.create().

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

تشغيل أداة رصد اللغة

تستخدم واجهة برمجة التطبيقات Language Detector API نموذج ترتيب لتحديد اللغة التي من المرجّح استخدامها في نص معيّن. الترتيب هو نوع من أنواع التعلّم الآلي، ويكون الهدف منه ترتيب قائمة من العناصر. في هذه الحالة، ترتّب واجهة برمجة التطبيقات Language Detector API اللغات من الاحتمال الأعلى إلى الاحتمال الأدنى.

يمكن أن تعرض الدالة detect() إما النتيجة الأولى أو الجواب الأرجح أو تتكرّر على المرشحين المرتبين حسب مستوى الثقة. يتم عرض هذه البيانات كقائمة بعناصر {detectedLanguage, confidence}. يتم التعبير عن مستوى confidence كقيمة بين 0.0 (أدنى مستوى ثقة) و1.0 (أعلى مستوى ثقة).

const someUserText = 'Hallo und herzlich willkommen!';
const results = await detector.detect(someUserText);
for (const result of results) {
  // Show the full list of potential languages with their likelihood, ranked
  // from most likely to least likely. In practice, one would pick the top
  // language(s) that cross a high enough threshold.
  console.log(result.detectedLanguage, result.confidence);
}
// (Output truncated):
// de 0.9993835687637329
// en 0.00038279531872831285
// nl 0.00010798392031574622
// ...

استوديو الذكاء الاصطناعي

يمكنك تجربة Language Detector API في ساحة تجارب واجهات برمجة التطبيقات. أدخِل نصًا مكتوبًا بلغات مختلفة في مساحة النص.

سياسة الأذونات وإطارات iframe وWeb Workers

تتوفّر واجهة برمجة التطبيقات Language Detector API تلقائيًا للنوافذ ذات المستوى الأعلى ولإطارات iframe من المصدر نفسه. يمكن تفويض إمكانية الوصول إلى واجهة برمجة التطبيقات إلى إطارات 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 Language Detector API by
  setting the `allow="language-detector"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="language-detector"></iframe>

لا تتوفّر واجهة برمجة التطبيقات Language Detector API في Web Workers. ويرجع ذلك إلى صعوبة إنشاء مستند مسؤول لكل عامل من أجل التحقّق من حالة &quot;سياسة الأذونات&quot;.

مشاركة ملاحظاتك

نريد أن نرى ما تنشئه باستخدام Language Detector API. يمكنك مشاركة مواقعك الإلكترونية وتطبيقات الويب معنا على X وYouTube وLinkedIn.

إذا كانت لديك ملاحظات حول طريقة تنفيذ Chrome لهذه الميزة، يُرجى إرسال تقرير عن خلل Chromium.

الانضمام إلى برنامج الاستخدام المبكر لإلقاء نظرة مبكرة على واجهات برمجة التطبيقات الجديدة المدمجة المستندة إلى الذكاء الاصطناعي والمشاركة في مناقشات على قائمتنا البريدية