Content translation/Machine Translation/MT Clients/ar

يمكن الوصول إلى خدمات الترجمة الآلية باستخدام وحدات عميلة برمجية في ترجمة المحتوى. لدينا عملاء Apertium وYandex مكتوبة بالفعل في الكود المصدري. يمكن إضافة أي عدد من عملاء خدمات الترجمة الآلية وربطها بالأزواج اللغوية. يوضح هذا التوثيق بنية عميل الترجمة الآلية.



متطلبات تقنية
يمكن استضافة عميل ترجمة آلية جديد إما في صفة نظام ترجمة آلية محلي أو الوصول إلى نظام ترجمة آلية بعيد باستخدام واجهة برمجة تطبيقات. نحبّذ باستخدام الخدمات التي تستند إلى واجهات برمجة التطبيقات منذ أنها تسمح بعزلها في صفة حدمة. لو كان العميل مرخص بموجب ترخيص حر مجاني أو محزوم لأغراض توزيعات لينوكس، يمكننا التفكير جديًا في استضافته في عنقود ويكيميديا. على سبيل المثال، نستضيف Apertium في wmflabs. من ناحية أخرى، Yandex لا تستضيفه ويكيميديا. كلا من Apertium وYandex يمكن الوصول إليهما باستخدام واجهات برمجة تطبيقات عن طريق الوب.



واجهة برمجة التطبيقات للترجمة
تأخذ واجهة برمجة تطبيقات الترجمة الآلية اللغة المصدر واللغة الهدف ومحتوى المصدر وتخرج محتوى مترجم. يجب أن تكون واجهة برمجة التطبيقات موثقة على العامة ويشمل ذلك أكواد الخطأ.
 * لو كانت واجهة برمجة التطبيقات غير عمومية، يمكنها قبول رموز التصديق، التي تكون في الغالب مفتاح.
 * يمكن أن تكون صيغة الخرج هي جسون لتيسير الأمور.
 * يجب أن تقبل واجهة برمجة التطبيقات أوامر POST.
 * يجب ألا تطلب واجهة برمجة التطبيقات معلومات تحدد هوية المستخدم مثل اسم المستخدم. لا يقدم CXServer تلك المعلومات إلى عميل الترجمة الآلية.
 * يجب أن تكون واجهة برمجة التطبيقات قادرة على قبول عدد معقول من الطلبات في الدقيقة.
 * يجب أن تقبل واجهة برمجة التطبيقات مقدار معقول من المحتوى لكل طلب.
 * نحبّذ وجود لوحة تحكم لتحليل استخدام واجهة برمجة التطبيقات التي تشمل عدد الطلبات لكل يوم/أسبوع/شهر وعدد المحارف المترجمة يوميًا/أسبوعيًا/شهريًا.



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


 * 10,000 طلب على الأقل يوميًا
 * 10 مليون محرف على الأقل يوميًا
 * 5000 محرف على الأقل لكل طلب



صيغة المدخلات
يكون المحتوى المطلوب الترجمة منه في CX بصيغة إتش تي إم إل. تعد ترجمة إتش تي إم إل وفي ذات الوقت الحفاظ على الوسم البرمجي تحديًا، إلا أن بعض محركات الترجمة الآلية قادرة على هذا الأمر (مثال: Yandex). لا يتعامل Apertium مع وسم إتش تي إم إل البرمجي. استنادًا إلى الإمكانات، يمكن لخادم CX إرسال نسخة نص خام أو إتش تي إم إل من المحتوى.



جودة الترجمة
نتولى تقييم جودة الترجمة الآلية عن طريق طلب آراء وملاحظات مساهمي ويكيبيديا من اللغة المطلوبة. يستخدم CX الترجمة الآلية في صفة قالب ترجمة مبدئي ويحث المترجمين على تحسينها. بسبب ذلك، وحينما تكون الجودة سيئة للغاية حسب الآراء والملاحظات التي نحصل عليها، يمكننا استخدام الترجمة الآلية.



تصميم وحدة برمجية عميلة جديدة للترجمة الآلية
أفضل طريقة لمعرفة هذا هي الرجوع إلى وحدة عميلة برمجية قائمة مثل Yandex أو Apertium. الوحدات البرمجية العميلة موجودة في مجلد lib/mt الخاص بخادم cxserver. لما لا نطلق على عميلنا اسم BabelFish MT Client. أنشئ ملف باسم BabelFish.js في مجلد lib/mt. لو كانت خدمة BabelFish لديك غير قادرة على ترجمة إتش تي إم إل عن طريق إبقاء كافة الوسم البرمجية في مكانها الملائم في الترجمة، بدلا من ، سوف يتعين عليك كتابة طريقة   في الكود سالف الذكر. ارجع إلى Apertium.js لهذا المثال. إن Yandex.js مثال على عميل ترجمة آلية قادر على التعامل مع المحتوى بكلا من إتش تي إم إل ونص صرف.

يجب عليك إضافة مدخلة في lib/mt/index.js لعميلك الجديد.

To map a language pair to use this client, create a config file in config folder. You may refer exiting configuration files for examples. Then enable this MT engine in the cxserver config.yaml. Here also follow the existing entries for examples.

Restart the cxserver and test your client. You may want to read some unit tests existing for Apertium to write your own tests.



عملاء الترجمة الآلية
The following are machine translation clients that support Content Translation in different languages:
 *  (اللغات المدعومة)
 * OpusMT (اللغات المدعومة)
 *  (اللغات المدعومة)
 *  (اللغات المدعومة)
 *  (اللغات المدعومة)
 *  (اللغات المدعومة)
 * Elia (كان يعرف من قبل باسم Matxin) (اللغات المدعومة)
 * NLLB-200 (كان يعرف من قبل باسم Flores) (اللغات المدعومة)