التشغيل السريع: مترجم الخدمات المعرفية في Azure

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

ملاحظة

  • بالنسبة إلى هذا التشغيل السريع، يوصى باستخدام مورد عالمي أحادي الخدمة لنص المترجم.
  • باستخدام المورد العالمي أحادي الخدمة، ستضمّن عنوان ترخيص واحداً (Ocp-Apim-Subscription-key) مع طلب واجهة برمجة تطبيقات REST. قيمة Ocp-Apim-Subscription-key هي مفتاحك السري في Azure لاشتراك Translator Text الخاص بك.
  • إذا اخترت استخدام الخدمات المعرفية متعددة الخدمات أو مورد المترجم الإقليمي، فسيكون هناك حاجة إلى عنواني مصادقة: (Ocp-Api-Subscription-KeyوOcp-Apim-Subscription-Region). قيمة Ocp-Apim-Subscription-Region هي المنطقة المرتبطة باشتراكك.
  • لمزيد من المعلومات حول كيفية استخدام عنوان Ocp-Apim-Subscription-Region، راجعرؤوس واجهة برمجة تطبيقات REST لمترجم النص.

المتطلبات الأساسية

لبدء الاستخدام، ستحتاج إلى اشتراك Azure نشط. إذا لم يكن لديك اشتراك Azure، يمكنك إنشاء اشتراك مجاناً

  • بمجرد حصولك على اشتراك Azure، تقوم بإنشاء مورد مترجم في مدخل Microsoft Azure.

  • بعد توزيع المورد، حدد Go to resource واسترد المفتاح ونقطة النهاية.

    • أنت بحاجة إلى المفتاح ونقطة النهاية من المورد لتوصيل تطبيقك بخدمة المترجم. ستقوم بلصق المفتاح ونقطة النهاية في التعليمة البرمجية لاحقاً في التشغيل السريع. يمكنك العثور على هذه القيم على صفحة Keys and Endpoint

      لقطة شاشة: مفاتيح مدخل Azure وصفحة نقطة النهاية.

  • استخدم طبقة الأسعار المجانية (F0) لتجربة الخدمة والترقية لاحقاً إلى طبقة مدفوعة للتشغيل.

الرؤوس

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

لمزيد من المعلومات حول خيارات مصادقة المترجم، راجع دليل مرجع المترجم الإصدار 3.

الرأس القيمة الشرط
Ocp-Apim-Subscription-Key مفتاح خدمة المترجم من مدخل Microsoft Azure. مطلوب
Ocp-Apim-Subscription-Region المنطقة التي تم فيها إنشاء المورد الخاص بك. مطلوب عند استخدام خدمات معرفية متعددة الخدمات أو مورد إقليمي (غير عالمي).
اختياري عند استخدام مورد المترجم العمومي لخدمة واحدة.
نوع المحتوى نوع محتوى الحمولة. القيمة المقبولة هي application/json أو charset = UTF-8. مطلوب
طول المحتوى طول نص الطلب. اختياري

هام

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

ترجمة النص

العملية الأساسية لخدمة المترجم هي ترجمة النص. في هذا التشغيل السريع، ستنشئ طلباً باستخدام لغة برمجة من اختيارك تأخذ مصدراً واحداً (from) وتعرض ناتجين(to). ثم، سنقوم بمراجعة بعض المعلمات التي يمكن استخدامها لضبط كل من الطلب والاستجابة.

إعداد مشروع Visual Studio الخاص بك

  1. تأكد من أن لديك الإصدار الحالي من Visual Studio IDE.

    تلميح

    إذا كنت جديدًا على Visual Studio، فجرب مقدمة إلى وحدة Visual Studio النمطية Learn.

  2. افتح Visual Studio.

  3. في صفحة البدء، اختر Create a new project.

    لقطة شاشة: نافذة البدء لـ Visual Studio.

  4. في صفحة إنشاء مشروع جديد، أدخل وحدة التحكم في مربع البحث. اختر قالب تطبيق وحدة التحكم، ثم اختر التالي.

    لقطة الشاشة: إنشاء صفحة مشروع جديد دخال Visual Studio.

  5. في نافذة الحوار تكوين مشروعك الجديد، أدخل translator_quickstart في مربع اسم المشروع. اترك مربع الاختيار "Place solution and project in the same directory" غير محدد وحدد Next.

    لقطة شاشة: يقوم Visual Studio بتكوين نافذة حوار مشروع جديد.

  6. في نافذة الحوار Additional information، تأكد من تحديد .NET 6.0 (دعم طويل الأجل). اترك مربع الاختيار "Don't use top-level statements" غير محدد وحدد Create.

    لقطة شاشة: نافذة حوار المعلومات الإضافية لبرنامج Visual Studio.

قم بتثبيت حزمة Newtonsoft.json مع NuGet

  1. انقر بزر الماوس الأيمن فوق مشروع translator_تشغيل سريع الخاص بك وحدد Manage NuGet Packages....

    لقطة شاشة لمربع بحث حزمة NuGet.

  2. حدد علامة التبويب Browse واكتب Newtonsoft.json.

    لقطة شاشة لنافذة تثبيت حزمة NuGet.

  3. حدد التثبيت من نافذة مدير الحزم الصحيحة لإضافة الحزمة إلى مشروعك.

    لقطة شاشة لزر تثبيت حزمة NuGet.

إنشاء تطبيق C# الخاص بك

ملاحظة

  • بدءًا من إصدار .NET 6، تنشئ المشروعات الجديدة التي تستخدم النموذج consoleقالب برنامج جديدًا يختلف عن الإصدارات السابقة.
  • يستخدم الإخراج الجديد ميزات لغة C# الحديثة التي تبسط التعليمة البرمجية الذي تحتاج إلى كتابتها.
  • عند استخدام الإصدار الأحدث، ما عليك سوى كتابة نص الأسلوب Main. لا تحتاج إلى تضمين عبارات المستوى الأعلى، أو التوجيهات العامة باستخدام التوجيهات، أو استخدام التوجيهات الضمنية.
  • لمزيد من المعلومات، راجع قوالب C# الجديدة تنشئ عبارات ذات مستوى أعلى.
  1. افتح الملف Program.cs.

  2. احذف التعليمة البرمجية الموجود مسبقاً، بما في ذلك الخط Console.Writeline("Hello World!"). انسخ نموذج التعليمة البرمجية والصقه في ملف Program.cs الخاص بالتطبيق. تأكد من تحديث المتغير الرئيسي بالقيمة من مثيل المترجم لمدخل Microsoft Azure:

using System.Text;
using Newtonsoft.Json;

class Program
{
    private static readonly string key = "<your-translator-key>";
    private static readonly string endpoint = "https://api.cognitive.microsofttranslator.com";

    // location, also known as region.
    // required if you're using a multi-service or regional (not global) resource. It can be found in the Azure portal on the Keys and Endpoint page.
    private static readonly string location = "<YOUR-RESOURCE-LOCATION>";

    static async Task Main(string[] args)
    {
        // Input and output languages are defined as parameters.
        string route = "/translate?api-version=3.0&from=en&to=fr&to=zu";
        string textToTranslate = "I would really like to drive your car around the block a few times!";
        object[] body = new object[] { new { Text = textToTranslate } };
        var requestBody = JsonConvert.SerializeObject(body);

        using (var client = new HttpClient())
        using (var request = new HttpRequestMessage())
        {
            // Build the request.
            request.Method = HttpMethod.Post;
            request.RequestUri = new Uri(endpoint + route);
            request.Content = new StringContent(requestBody, Encoding.UTF8, "application/json");
            request.Headers.Add("Ocp-Apim-Subscription-Key", key);
            // location required if you're using a multi-service or regional (not global) resource.
            request.Headers.Add("Ocp-Apim-Subscription-Region", location);

            // Send the request and get response.
            HttpResponseMessage response = await client.SendAsync(request).ConfigureAwait(false);
            // Read response as a string.
            string result = await response.Content.ReadAsStringAsync();
            Console.WriteLine(result);
        }
    }
}

تشغيل تطبيق C#‎

بمجرد إضافة عينة التعليمة البرمجية إلى تطبيقك، اختر زر البدء الأخضر بجوار formRecognizer_quickstart لإنشاء البرنامج وتشغيله، أو اضغط على F5.

لقطة شاشة لزر تشغيل البرنامج في Visual Studio.

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

بعد الاستدعاء الناجح، يجب أن تشاهد الاستجابة التالية:

[
    {
        "detectedLanguage": {
            "language": "en",
            "score": 1.0
        },
        "translations": [
            {
                "text": "J'aimerais vraiment conduire votre voiture autour du pâté de maisons plusieurs fois!",
                "to": "fr"
            },
            {
                "text": "Ngingathanda ngempela ukushayela imoto yakho endaweni evimbelayo izikhathi ezimbalwa!",
                "to": "zu"
            }
        ]
    }
]

الخطوات التالية

هذا كل شيء، تهانينا! لقد تعلمت استخدام خدمة المترجم لترجمة النص.

استكشف وثائقنا الإرشادية وتعمق في إمكانات خدمات الترجمة: