المترجم 3.0: ترجمة

يترجم النص.

URL للطلب

POST إرسال طلب إلى:

https://api.cognitive.microsofttranslator.com/translate?api-version=3.0

معلمات الطلب

معلمات الطلب التي تم تمريرها على سلسلة الاستعلام هي:

المعلمات المطلوبة

معلمة الاستعلام الوصف
api-version المعلمة المطلوبة.
إصدار واجهة برمجة التطبيقات التي طلبها العميل. يجب أن تكون القيمة 3.0.
إلى المعلمة المطلوبة.
تحديد لغة نص الإخراج. يجب أن تكون اللغة الهدف إحدى اللغات المدعومة المضمنة في translation النطاق. على سبيل المثال، استخدم to=de للترجمة إلى الألمانية.
من الممكن الترجمة إلى لغات متعددة في وقت واحد عن طريق تكرار المعلمة في سلسلة الاستعلام. على سبيل المثال، استخدم to=de&to=it للترجمة إلى الألمانية والإيطالية.

المعلمات الاختيارية

معلمة الاستعلام الوصف
معلمة الاستعلام الوصف
من معلمة اختيارية.
تحديد لغة نص الإدخال. ابحث عن اللغات المتوفرة للترجمة منها من خلال البحث عن اللغات المدعومةtranslation باستخدام النطاق. إذا لم يتم تحديد المعلمة from ، يتم تطبيق الكشف التلقائي عن اللغة لتحديد اللغة المصدر.

يجب استخدام المعلمة from بدلا من الكشف التلقائي عند استخدام ميزة القاموس الديناميكي .
نوع النص معلمة اختيارية.
يحدد ما إذا كان النص الذي تتم ترجمته نصا عاديا أو نص HTML. يجب أن يكون أي HTML عنصرا كاملا ومكونا بشكل جيد. القيم المحتملة هي: plain (افتراضي) أو html.
الفئة معلمة اختيارية.
سلسلة تحدد فئة (مجال) الترجمة. يتم استخدام هذه المعلمة للحصول على ترجمات من نظام مخصص تم إنشاؤه باستخدام المترجم المخصصة. أضف معرف الفئة من تفاصيل مشروع المترجم المخصص إلى هذه المعلمة لاستخدام النظام المخصص المنشور. القيمة الافتراضية هي: general.
عمل الألفاظ النابية معلمة اختيارية.
يحدد كيفية التعامل مع الألفاظ النابية في الترجمات. القيم المحتملة هي: NoAction (افتراضي)، Marked أو Deleted. لفهم طرق التعامل مع الألفاظ النابية، راجع التعامل مع الألفاظ النابية.
علامة الألفاظ النابية معلمة اختيارية.
يحدد كيفية وضع علامة على الألفاظ النابية في الترجمات. القيم المحتملة هي: Asterisk (افتراضي) أو Tag. لفهم طرق التعامل مع الألفاظ النابية، راجع التعامل مع الألفاظ النابية.
تضمين المحاذاة معلمة اختيارية.
تحديد ما إذا كان يجب تضمين إسقاط المحاذاة من النص المصدر إلى النص المترجم. القيم المحتملة هي: true أو false (افتراضي).
includeSentenceLength معلمة اختيارية.
تحديد ما إذا كان يجب تضمين حدود الجملة لنص الإدخال والنص المترجم. القيم المحتملة هي: true أو false (افتراضي).
مقترح من معلمة اختيارية.
تحديد لغة احتياطية إذا تعذر تحديد لغة نص الإدخال. يتم تطبيق الاستخراج التلقائي للغة عند حذف المعلمة from . إذا فشل الكشف، suggestedFrom فسيتم افتراض اللغة.
fromScript معلمة اختيارية.
تحديد البرنامج النصي لنص الإدخال.
toScript معلمة اختيارية.
تحديد البرنامج النصي للنص المترجم.
allowFallback معلمة اختيارية.
يحدد السماح للخدمة بالرجوع إلى نظام عام عندما لا يكون هناك نظام مخصص. القيم المحتملة هي: true (افتراضي) أو false.

allowFallback=false يحدد أن الترجمة يجب أن تستخدم الأنظمة المدربة فقط على category المحدد من قبل الطلب. إذا كانت ترجمة اللغة X إلى اللغة Y تتطلب التسلسل من خلال لغة محورية E، فستحتاج جميع الأنظمة في السلسلة (X-E> وE-Y>) إلى أن تكون مخصصة وأن يكون لها نفس الفئة. إذا لم يتم العثور على نظام مع الفئة المحددة، فسيرجع الطلب رمز حالة 400. allowFallback=true يحدد السماح للخدمة بالرجوع إلى نظام عام عندما لا يكون هناك نظام مخصص.

تتضمن رؤوس الطلبات ما يلي:

الرؤوس الوصف
رأس (رؤوس) المصادقة رأس الطلب المطلوب.
راجع الخيارات المتاحة للمصادقة.
نوع المحتوى رأس الطلب المطلوب.
يحدد نوع محتوى الحمولة.
القيمة المقبولة هي: application/json; charset=UTF-8.
طول المحتوى رأس الطلب المطلوب.
طول نص الطلب.
X-ClientTraceId اختياري.
معرّف GUID تم إنشاؤه بواسطة العميل لتعريف الطلب بشكل فريد. يمكنك حذف هذا الرأس إذا قمت بتضمين معرف التتبع في سلسلة الاستعلام باستخدام معلمة الاستعلام المسماة ClientTraceId.

نص الطلب

نص الطلب هو صفيف JSON. كل عنصر صفيف هو كائن JSON مع خاصية سلسلة تسمى Text، والتي تمثل السلسلة المراد ترجمتها.

[
    {"Text":"I would really like to drive your car around the block a few times."}
]

تنطبق القيود التالية:

  • يمكن أن يحتوي الصفيف على 100 عنصر على الأكثر.
  • لا يمكن أن يتجاوز النص بأكمله المضمن في الطلب 10000 حرف بما في ذلك المسافات.

هيئة الاستجابة

الاستجابة الناجحة هي صفيف JSON مع نتيجة واحدة لكل سلسلة في صفيف الإدخال. يتضمن كائن النتيجة الخصائص التالية:

  • detectedLanguage: كائن يصف اللغة المكتشفة من خلال الخصائص التالية:

    • language: سلسلة تمثل التعليمات البرمجية للغة المكتشفة.

    • score: قيمة عائمة تشير إلى الثقة في النتيجة. النتيجة بين صفر وواحد والنتيجة المنخفضة تشير إلى انخفاض الثقة.

      detectedLanguage الخاصية موجودة فقط في كائن النتيجة عند طلب الاسترجاع التلقائي للغة.

  • translations: صفيف من نتائج الترجمة. يطابق حجم الصفيف عدد اللغات المستهدفة المحددة من خلال معلمة to الاستعلام. يتضمن كل عنصر في الصفيف ما يلي:

    • to: سلسلة تمثل رمز اللغة للغة الهدف.

    • text: سلسلة تعطي النص المترجم.

  • transliteration: كائن يعطي النص المترجم في البرنامج النصي المحدد بواسطة المعلمة toScript .

    • script: سلسلة تحدد البرنامج النصي الهدف.

    • text: سلسلة تعطي النص المترجم في البرنامج النصي الهدف.

      transliteration لا يتم تضمين الكائن إذا لم يتم نقل البيانات.

      • alignment: كائن بخاصية سلسلة واحدة تسمى proj، والذي يعين نص الإدخال إلى نص مترجم. يتم توفير معلومات المحاذاة فقط عندما تكون معلمة includeAlignment الطلب هي true. يتم إرجاع المحاذاة كقيمة سلسلة بالتنسيق التالي: [[SourceTextStartIndex]:[SourceTextEndIndex]–[TgtTextStartIndex]:[TgtTextEndIndex]]. تفصل النقطتين بين فهرس البدء والنهاية، وتفصل الشرطة بين اللغات، وتفصل المسافة بين الكلمات. قد تتم محاذاة كلمة واحدة مع صفر أو كلمة واحدة أو عدة كلمات في اللغة الأخرى، وقد تكون الكلمات التي تمت محاذاتها غير متقاربة. عندما لا تتوفر معلومات محاذاة، سيكون عنصر المحاذاة فارغا. راجع الحصول على معلومات المحاذاة للحصول على مثال وقيود.
  • sentLen: كائن يرجع حدود الجملة في نصوص الإدخال والإخراج.

    • srcSentLen: صفيف عدد صحيح يمثل أطوال الجمل في نص الإدخال. طول الصفيف هو عدد الجمل، والقيم هي طول كل جملة.

    • transSentLen: صفيف عدد صحيح يمثل أطوال الجمل في النص المترجم. طول الصفيف هو عدد الجمل، والقيم هي طول كل جملة.

      يتم تضمين حدود الجملة فقط عندما تكون معلمة includeSentenceLength الطلب هي true.

  • sourceText: كائن بخاصية سلسلة واحدة تسمى text، والذي يعطي نص الإدخال في البرنامج النصي الافتراضي للغة المصدر. sourceText الخاصية موجودة فقط عندما يتم التعبير عن الإدخال في برنامج نصي ليس البرنامج النصي المعتاد للغة. على سبيل المثال، إذا كانت المدخلات باللغة العربية مكتوبة بخط لاتيني، فسيكون sourceText.text النص العربي نفسه الذي تم تحويله إلى نص عربي.

يتم توفير أمثلة على استجابات JSON في قسم الأمثلة .

رؤوس الاستجابة

الرؤوس الوصف
X-RequestId القيمة التي تم إنشاؤها بواسطة الخدمة لتحديد الطلب. يتم استخدامه لأغراض استكشاف الأخطاء وإصلاحها.
X-MT-System يحدد نوع النظام الذي تم استخدامه للترجمة لكل لغة 'إلى' المطلوبة للترجمة. القيمة هي قائمة سلاسل مفصولة بفواصل. تشير كل سلسلة إلى نوع:

* مخصص - يتضمن الطلب نظاما مخصصا وتم استخدام نظام مخصص واحد على الأقل أثناء الترجمة.
* الفريق - جميع الطلبات الأخرى

رموز حالة الاستجابة

فيما يلي رموز حالة HTTP المحتملة التي يرجعها الطلب.

كود الحالة الوصف
200 نجاح
400 إحدى معلمات الاستعلام مفقودة أو غير صالحة. تصحيح معلمات الطلب قبل إعادة المحاولة.
401 تعذرت مصادقة الطلب. تحقق من أن بيانات الاعتماد محددة وصالحة.
403 الطلب غير مصرح به. تحقق من رسالة خطأ التفاصيل. غالبا ما يشير رمز الحالة هذا إلى أنه تم استخدام جميع الترجمات المجانية المقدمة مع اشتراك تجريبي.
408 تعذر استيفاء الطلب لأن موردا مفقودا. تحقق من رسالة خطأ التفاصيل. عندما يتضمن الطلب فئة مخصصة، غالبا ما يشير رمز الحالة هذا إلى أن نظام الترجمة المخصص غير متوفر بعد لخدمة الطلبات. يجب إعادة محاولة الطلب بعد فترة انتظار (على سبيل المثال، دقيقة واحدة).
429 رفض الخادم الطلب لأن العميل قد تجاوز حدود الطلب.
500 حدث خطأ غير متوقع. إذا استمر الخطأ، فبلغ عنه مع: تاريخ ووقت الفشل، ومعرف الطلب من عنوان الاستجابة X-RequestId، ومعرف العميل من عنوان الطلب X-ClientTraceId.
503 الخادم غير متوفر مؤقتا. أعد محاولة الطلب. إذا استمر الخطأ، فبلغ عنه مع: تاريخ ووقت الفشل، ومعرف الطلب من عنوان الاستجابة X-RequestId، ومعرف العميل من عنوان الطلب X-ClientTraceId.

إذا حدث خطأ، فسيرجع الطلب أيضا استجابة خطأ JSON. رمز الخطأ هو رقم مكون من 6 أرقام يجمع بين رمز حالة HTTP المكون من 3 أرقام متبوعا برقم مكون من 3 أرقام لتصنيف الخطأ بشكل أكبر. يمكن العثور على رموز الخطأ الشائعة في الصفحة المرجعية المترجم v3.

أمثلة

ترجمة إدخال واحد

يوضح هذا المثال كيفية ترجمة جملة واحدة من الإنجليزية إلى الصينية المبسطة.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=zh-Hans" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}]"

نص الاستجابة هو:

[
    {
        "translations":[
            {"text":"你好, 你叫什么名字?","to":"zh-Hans"}
        ]
    }
]

translations يتضمن الصفيف عنصرا واحدا، والذي يوفر ترجمة جزء واحد من النص في الإدخال.

ترجمة إدخال واحد باستخدام تحويل تلقائي للغة

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

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=zh-Hans" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}]"

نص الاستجابة هو:

[
    {
        "detectedLanguage": {"language": "en", "score": 1.0},
        "translations":[
            {"text": "你好, 你叫什么名字?", "to": "zh-Hans"}
        ]
    }
]

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

الترجمة باستخدام الترجمة

دعونا نوسع المثال السابق عن طريق إضافة التهريب. يطلب الطلب التالي ترجمة صينية مكتوبة في نص لاتيني.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&to=zh-Hans&toScript=Latn" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}]"

نص الاستجابة هو:

[
    {
        "detectedLanguage":{"language":"en","score":1.0},
        "translations":[
            {
                "text":"你好, 你叫什么名字?",
                "transliteration":{"script":"Latn", "text":"nǐ hǎo , nǐ jiào shén me míng zì ?"},
                "to":"zh-Hans"
            }
        ]
    }
]

تتضمن نتيجة الترجمة الآن خاصية transliteration ، والتي تعطي النص المترجم باستخدام الأحرف اللاتينية.

ترجمة أجزاء متعددة من النص

ترجمة سلاسل متعددة في وقت واحد هو ببساطة مسألة تحديد صفيف من السلاسل في نص الطلب.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=zh-Hans" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}, {'Text':'I am fine, thank you.'}]"

تحتوي الاستجابة على ترجمة جميع أجزاء النص بالترتيب نفسه تماما كما في الطلب. نص الاستجابة هو:

[
    {
        "translations":[
            {"text":"你好, 你叫什么名字?","to":"zh-Hans"}
        ]
    },
    {
        "translations":[
            {"text":"我很好,谢谢你。","to":"zh-Hans"}
        ]
    }
]

الترجمة إلى لغات متعددة

يوضح هذا المثال كيفية ترجمة نفس الإدخال إلى عدة لغات في طلب واحد.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=zh-Hans&to=de" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'Hello, what is your name?'}]"

نص الاستجابة هو:

[
    {
        "translations":[
            {"text":"你好, 你叫什么名字?","to":"zh-Hans"},
            {"text":"Hallo, was ist dein Name?","to":"de"}
        ]
    }
]

التعامل مع الألفاظ النابية

عادة ما تحتفظ خدمة المترجم بالألفاظ النابية الموجودة في المصدر في الترجمة. درجة الألفاظ النابية والسياق الذي يجعل الكلمات النابية تختلف بين الثقافات، ونتيجة لذلك يمكن تضخيم درجة الألفاظ النابية في اللغة الهدف أو تقليلها.

إذا كنت ترغب في تجنب الحصول على الألفاظ النابية في الترجمة، بغض النظر عن وجود الألفاظ النابية في النص المصدر، يمكنك استخدام خيار تصفية الألفاظ النابية. يسمح لك الخيار باختيار ما إذا كنت تريد رؤية الألفاظ النابية محذوفة، أو ما إذا كنت تريد وضع علامة على الألفاظ النابية بالعلامات المناسبة (مما يمنحك خيار إضافة المعالجة اللاحقة الخاصة بك)، أو تريد عدم اتخاذ أي إجراء. القيم المقبولة هي ProfanityActionDeletedو MarkedNoAction (افتراضي).

عمل الألفاظ النابية إجراء
NoAction NoAction هو السلوك الافتراضي. سيتم تمرير الألفاظ النابية من المصدر إلى الهدف.

مثال على المصدر (اليابانية): 彼はジャッカスです。
مثال على الترجمة (الإنجليزية): إنه مقبس---.
Deleted ستتم إزالة الكلمات النابية من الإخراج دون استبدال.

مثال على المصدر (اليابانية): 彼はジャッカスです。
مثال على الترجمة (الإنجليزية): هو.
Marked يتم استبدال الكلمات النابية بعلامة في الإخراج. تعتمد العلامة على المعلمة ProfanityMarker .

بالنسبة إلى ProfanityMarker=Asterisk، يتم استبدال الكلمات النابية ب ***:
مثال على المصدر (اليابانية): 彼はジャッカスです。
مثال على الترجمة (الإنجليزية): هو \\\*.

بالنسبة إلى ProfanityMarker=Tag، تكون الكلمات النابية محاطة بعلامات <XML الألفاظ النابية> و </الألفاظ النابية>:
مثال على المصدر (اليابانية): 彼はジャッカスです。
مثال على الترجمة (الإنجليزية): إنه <بذيئة>---</ألفاظ> نابية.

على سبيل المثال:

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=de&profanityAction=Marked" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'This is an <expletive> good idea.'}]"

يرجع هذا الطلب:

[
    {
        "translations":[
            {"text":"Das ist eine *** gute Idee.","to":"de"}
        ]
    }
]

مقارنة مع:

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=de&profanityAction=Marked&profanityMarker=Tag" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'This is an <expletive> good idea.'}]"

يرجع هذا الطلب الأخير:

[
    {
        "translations":[
            {"text":"Das ist eine <profanity>verdammt</profanity> gute Idee.","to":"de"}
        ]
    }
]

ترجمة المحتوى باستخدام العلامات وتحديد ما تتم ترجمته

من الشائع ترجمة المحتوى الذي يتضمن علامات مثل المحتوى من صفحة HTML أو محتوى من مستند XML. تضمين معلمة textType=html الاستعلام عند ترجمة المحتوى باستخدام العلامات. بالإضافة إلى ذلك، من المفيد أحيانا استبعاد محتوى معين من الترجمة. يمكنك استخدام السمة class=notranslate لتحديد المحتوى الذي يجب أن يبقى بلغته الأصلية. في المثال التالي، لن تتم ترجمة المحتوى داخل العنصر الأول div ، بينما ستتم ترجمة المحتوى في العنصر الثاني div .

<div class="notranslate">This will not be translated.</div>
<div>This will be translated. </div>

فيما يلي نموذج طلب لتوضيحه.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=zh-Hans&textType=html" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'<div class=\"notranslate\">This will not be translated.</div><div>This will be translated.</div>'}]"

الاستجابة هي:

[
    {
        "translations":[
            {"text":"<div class=\"notranslate\">This will not be translated.</div><div>这将被翻译。</div>","to":"zh-Hans"}
        ]
    }
]

الحصول على معلومات المحاذاة

يتم إرجاع المحاذاة كقيمة سلسلة بالتنسيق التالي لكل كلمة من المصدر. يتم فصل المعلومات الخاصة بكل كلمة بمسافة، بما في ذلك اللغات غير المفصولة بالفضاء (البرامج النصية) مثل الصينية:

[[SourceTextStartIndex]:[SourceTextEndIndex]-[TgtTextStartIndex]:[TgtTextEndIndex]] *

مثال على سلسلة المحاذاة: "0:0-7:10 1:2-11:20 3:4-0:3 3:4-4:6 5:5-21:21".

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

لتلقي معلومات المحاذاة، حدد includeAlignment=true على سلسلة الاستعلام.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=fr&includeAlignment=true" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'The answer lies in machine translation.'}]"

الاستجابة هي:

[
    {
        "translations":[
            {
                "text":"La réponse se trouve dans la traduction automatique.",
                "to":"fr",
                "alignment":{"proj":"0:2-0:1 4:9-3:9 11:14-11:19 16:17-21:24 19:25-40:50 27:37-29:38 38:38-51:51"}
            }
        ]
    }
]

تبدأ معلومات المحاذاة ب 0:2-0:1، مما يعني أن الأحرف الثلاثة الأولى في النص المصدر (The) تعين إلى أول حرفين في النص المترجم (La).

التقييدات

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

  • المحاذاة غير متوفرة للنص بتنسيق HTML أي textType=html
  • يتم إرجاع المحاذاة فقط لمجموعة فرعية من أزواج اللغة:
    • الإنجليزية إلى/من أي لغة أخرى باستثناء الصينية التقليدية أو الكانتونية (التقليدية) أو الصربية (السيريلية).
    • من اليابانية إلى الكورية أو من الكورية إلى اليابانية.
    • من اليابانية إلى الصينية المبسطة والصينية المبسطة إلى اليابانية.
    • من الصينية المبسطة إلى الصينية التقليدية والصينية التقليدية إلى الصينية المبسطة.
  • لن تتلقى المحاذاة إذا كانت الجملة ترجمة معلقة. مثال على الترجمة المعلبة هو "هذا اختبار" و"أحبك" وجمل أخرى عالية التردد.
  • لا تتوفر المحاذاة عند تطبيق أي من الأساليب لمنع الترجمة كما هو موضح هنا

الحصول على حدود الجملة

لتلقي معلومات حول طول الجملة في النص المصدر والنص المترجم، حدد includeSentenceLength=true على سلسلة الاستعلام.

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=fr&includeSentenceLength=true" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'The answer lies in machine translation. The best machine translation technology cannot always provide translations tailored to a site or users like a human. Simply copy and paste a code snippet anywhere.'}]"

الاستجابة هي:

[
    {
        "translations":[
            {
                "text":"La réponse se trouve dans la traduction automatique. La meilleure technologie de traduction automatique ne peut pas toujours fournir des traductions adaptées à un site ou des utilisateurs comme un être humain. Il suffit de copier et coller un extrait de code n'importe où.",
                "to":"fr",
                "sentLen":{"srcSentLen":[40,117,46],"transSentLen":[53,157,62]}
            }
        ]
    }
]

الترجمة باستخدام قاموس ديناميكي

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

تستخدم العلامات المراد توفيرها بناء الجملة التالي.

<mstrans:dictionary translation="translation of phrase">phrase</mstrans:dictionary>

على سبيل المثال، ضع في اعتبارك الجملة الإنجليزية "كلمة wordomatic هي إدخال قاموس". للحفاظ على كلمة wordomatic في الترجمة، أرسل الطلب:

curl -X POST "https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=de" -H "Ocp-Apim-Subscription-Key: <client-secret>" -H "Content-Type: application/json; charset=UTF-8" -d "[{'Text':'The word <mstrans:dictionary translation=\"wordomatic\">word or phrase</mstrans:dictionary> is a dictionary entry.'}]"

النتيجة هي:

[
    {
        "translations":[
            {"text":"Das Wort \"wordomatic\" ist ein Wörterbucheintrag.","to":"de"}
        ]
    }
]

تعمل هذه الميزة بنفس الطريقة مع textType=text أو مع textType=html. يجب استخدام الميزة باعتدال. الطريقة المناسبة والأفضل بكثير لتخصيص الترجمة هي باستخدام المترجم المخصصة. تستخدم المترجم المخصصة السياق والاحتمالات الإحصائية بشكل كامل. إذا كان لديك أو يمكنك إنشاء بيانات تدريب تعرض عملك أو العبارة في السياق، فستحصل على نتائج أفضل بكثير. تعرف على المزيد حول المترجم المخصصة.