جرب أحدث إصدار من Azure الذكاء الاصطناعي المترجم. في هذا التشغيل السريع، ابدأ باستخدام خدمة المترجم لترجمة النص باستخدام لغة برمجة من اختيارك أو واجهة برمجة تطبيقات REST. بالنسبة لهذا المشروع، نوصي باستخدام مستوى التسعير المجاني (F0)، أثناء تعلمك للتكنولوجيا، والترقية لاحقا إلى مستوى مدفوع للإنتاج.
العملية الأساسية لخدمة المترجم هي ترجمة النص. في هذا التشغيل السريع، يمكنك إنشاء طلب باستخدام لغة برمجة من اختيارك تأخذ مصدر واحد (from
) وتوفر إخراجين (to
). ثم نراجع بعض المعلمات التي يمكن استخدامها لضبط كل من الطلب والاستجابة.
إعداد مشروع Visual Studio الخاص بك
تأكد من أن لديك الإصدار الحالي من Visual Studio IDE.
افتح Visual Studio.
في صفحة البدء، اختر Create a new project.
في صفحة «Create a new project»، أدخل وحدة التحكم في مربع البحث. اختر قالب تطبيق وحدة التحكم، ثم اختر التالي.
في نافذة الحوار تكوين مشروعك الجديد، أدخل translator_quickstart
في مربع اسم المشروع. اترك مربع الاختيار "Place solution and project in the same directory" غير محدد وحدد Next.
في نافذة الحوار Additional information، تأكد من تحديد .NET 6.0 (دعم طويل الأجل). اترك مربع الاختيار "Don't use top-level statements" غير محدد وحدد Create.
قم بتثبيت حزمة Newtonsoft.json مع NuGet
انقر بزر الماوس الأيمن فوق مشروع translator_تشغيل سريع الخاص بك وحدد Manage NuGet Packages....
حدد علامة التبويب Browse واكتب Newtonsoft.json.
لإضافة الحزمة إلى مشروعك، حدد install من نافذة مدير الحزمة اليمنى.
إنشاء تطبيق C# الخاص بك
إشعار
- بدءاً من .NET 6، تنشئ المشروعات الجديدة التي تستخدم القالب
console
نمط برنامج جديداً يختلف عن الإصدارات السابقة.
- يستخدم الإخراج الجديد ميزات #C الحديثة التي تبسط التعليمة البرمجية الذي تحتاج إلى كتابته.
- عندما تستخدم الإصدار الأحدث، تحتاج فقط إلى كتابة هيكل الأسلوب
Main
. لست بحاجة إلى تضمين بيانات عالية المستوى أو توجيهات عالمية باستخدام توجيهات أو استخدام ضمني للتوجيهات.
- للمزيد من المعلومات، راجع قوالب C# الجديدة تنشئ عبارات ذات مستوى أعلى.
افتح ملف Program.cs.
احذف التعليمة البرمجية الموجود مسبقاً، بما في ذلك السطر 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.
مخرجات الترجمة:
بعد الاستدعاء الناجح، يجب أن تشاهد الاستجابة التالية:
[
{
"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"
}
]
}
]
إعداد بيئة Go الخاصة بك
يمكنك استخدام أي محرر نص لكتابة تطبيقات Go. نوصي باستخدام أحدث إصدار من Visual Studio Code وGo extension.
تلميح
إذا كنت مستخدمًا جديدًا لـ Go، فجرب الوحدة النمطية بدء استخدام Go Learn.
تأكد من تثبيت أحدث إصدار من Go :
قم بتنزيل إصدار Go لنظام التشغيل الخاص بك.
بمجرد اكتمال التنزيل، قم بتشغيل المثبت.
افتح موجه الأوامر وأدخل ما يلي لتأكيد تثبيت Go:
go version
إنشاء تطبيق Go الخاص بك
في نافذة وحدة التحكم (مثل cmd أو PowerShell أو Bash)، أنشئ دليلاً جديداً لتطبيقك يسمى translator-app، وانتقل إليه.
أنشئ ملف GO جديداً باسم translation.go من دليل translator-app.
انسخ نموذج التعليمة البرمجية المقدم والصقه في ملف translation.go. تأكد من تحديث المتغير الرئيسي بالقيمة من مثيل المترجم لمدخل Microsoft Azure:
package main
import (
"bytes"
"encoding/json"
"fmt"
"log"
"net/http"
"net/url"
)
func main() {
key := "<YOUR-TRANSLATOR-KEY>"
endpoint := "https://api.cognitive.microsofttranslator.com/"
uri := endpoint + "/translate?api-version=3.0"
// 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.
location := "<YOUR-RESOURCE-LOCATION>"
// Build the request URL. See: https://go.dev/pkg/net/url/#example_URL_Parse
u, _ := url.Parse(uri)
q := u.Query()
q.Add("from", "en")
q.Add("to", "fr")
q.Add("to", "zu")
u.RawQuery = q.Encode()
// Create an anonymous struct for your request body and encode it to JSON
body := []struct {
Text string
}{
{Text: "I would really like to drive your car around the block a few times."},
}
b, _ := json.Marshal(body)
// Build the HTTP POST request
req, err := http.NewRequest("POST", u.String(), bytes.NewBuffer(b))
if err != nil {
log.Fatal(err)
}
// Add required headers to the request
req.Header.Add("Ocp-Apim-Subscription-Key", key)
// location required if you're using a multi-service or regional (not global) resource.
req.Header.Add("Ocp-Apim-Subscription-Region", location)
req.Header.Add("Content-Type", "application/json")
// Call the Translator API
res, err := http.DefaultClient.Do(req)
if err != nil {
log.Fatal(err)
}
// Decode the JSON response
var result interface{}
if err := json.NewDecoder(res.Body).Decode(&result); err != nil {
log.Fatal(err)
}
// Format and print the response to terminal
prettyJSON, _ := json.MarshalIndent(result, "", " ")
fmt.Printf("%s\n", prettyJSON)
}
تشغيل تطبيق Go الخاص بك
بمجرد إضافة نموذج تعليمة برمجية إلى التطبيق الخاص بك، يمكن تنفيذ برنامج Go الخاص بك في موجه الأوامر أو المحطة الطرفية. تأكد من تعيين مسار الموجه على المجلد translator-app واستخدم الأمر التالي:
go run translation.go
مخرجات الترجمة:
بعد الاستدعاء الناجح، يجب أن تشاهد الاستجابة التالية:
[
{
"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"
}
]
}
]
إعداد بيئة Java الخاصة بك
إنشاء مشروع Gradle جديد
في نافذة وحدة التحكم (مثل cmd أو PowerShell أو Bash)، أنشئ دليلاً جديداً لتطبيقك يسمى translator-text-app، وانتقل إليه.
mkdir translator-text-app && translator-text-app
mkdir translator-text-app; cd translator-text-app
قم بتشغيل الأمر gradle init
من دليل تطبيق النص المترجم. ينشئ هذا الأمر ملفات بناء أساسية ل Gradle، بما في ذلك build.gradle.kts، والذي يستخدم في وقت التشغيل لإنشاء التطبيق وتكوينه.
gradle init --type basic
عند طلب اختيار DSL، حدد Kotlin.
اقبل اسم المشروع الافتراضي (مترجم-نص-تطبيق) بتحديد عودة أو إدخال.
تحديث build.gradle.kts
بالتعليمة البرمجية التالي:
plugins {
java
application
}
application {
mainClass.set("TranslatorText")
}
repositories {
mavenCentral()
}
dependencies {
implementation("com.squareup.okhttp3:okhttp:4.10.0")
implementation("com.google.code.gson:gson:2.9.0")
}
إنشاء تطبيق Java الخاص بك
من دليل تطبيق النص المترجم، قم بتشغيل الأمر التالي:
mkdir -p src/main/java
يمكنك إنشاء بنية الدليل التالية:
انتقل إلى الدليل java
وأنشئ ملفاً باسم TranslatorText.java
.
تلميح
بإمكانك إنشاء ملف جديد باستخدام PowerShell.
افتح نافذة PowerShell في دليل المشروع الخاص بك عن طريق الضغط باستمرار على مفتاح Shift والنقر بزر الماوس الأيمن فوق المجلد.
اكتب الأمر التالي New-Item TranslatorText.java.
يمكنك أيضاً إنشاء ملف جديد في IDE باسم TranslatorText.java
وحفظه في دليلjava
.
افتح ملف TranslatorText.java
في IDE الخاص بك وانسخ عينة التعليمة البرمجية التالية ثم الصقها في تطبيقك. تأكد من تحديث المفتاح بإحدى القيم الأساسية من مثيل المترجم لمدخل Microsoft Azure:
import java.io.IOException;
import com.google.gson.*;
import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class TranslatorText {
private static String key = "<your-translator-key";
// 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 String location = "<YOUR-RESOURCE-LOCATION>";
// Instantiates the OkHttpClient.
OkHttpClient client = new OkHttpClient();
// This function performs a POST request.
public String Post() throws IOException {
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType,
"[{\"Text\": \"I would really like to drive your car around the block a few times!\"}]");
Request request = new Request.Builder()
.url("https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=en&to=fr&to=zu")
.post(body)
.addHeader("Ocp-Apim-Subscription-Key", key)
// location required if you're using a multi-service or regional (not global) resource.
.addHeader("Ocp-Apim-Subscription-Region", location)
.addHeader("Content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
return response.body().string();
}
// This function prettifies the json response.
public static String prettify(String json_text) {
JsonParser parser = new JsonParser();
JsonElement json = parser.parse(json_text);
Gson gson = new GsonBuilder().setPrettyPrinting().create();
return gson.toJson(json);
}
public static void main(String[] args) {
try {
TranslatorText translateRequest = new TranslatorText();
String response = translateRequest.Post();
System.out.println(prettify(response));
} catch (Exception e) {
System.out.println(e);
}
}
}
إنشاء وتشغيل تطبيق Java الخاص بك
بمجرد إضافة نموذج تعليمة برمجية إلى التطبيق الخاص بك، انتقل مرة أخرى إلى دليل المشروع الرئيسي الخاص بك - translator-text-app، وافتح نافذة وحدة التحكم، وأدخل الأوامر التالية:
أنشئ تطبيقك مستخدماً الأمر build
:
gradle build
شغل تطبيقك مستخدماً الأمر run
:
gradle run
مخرجات الترجمة:
بعد الاستدعاء الناجح، يجب أن تشاهد الاستجابة التالية:
[
{
"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"
}
]
}
]
إعداد مشروع Node.js Express الخاص بك
تأكد من تثبيت أحدث إصدار من Node.js . يتم تضمين Node Package Manager (npm) في تثبيت Node.js.
في نافذة وحدة التحكم (مثل cmd أو PowerShell أو Bash)، أنشئ دليلاً جديداً لتطبيقك باسم translator-app
وانتقل إليه.
mkdir translator-app && cd translator-app
mkdir translator-app; cd translator-app
قم بتشغيل الأمر npm init لتهيئة التطبيق وسقالة مشروعك.
npm init
حدد سمات مشروعك باستخدام المطالبات المقدمة في terminal.
- تمثل أهم السمات الاسم ورقم الإصدار ونقطة الدخول.
- نوصي بالاحتفاظ بـ
index.js
لاسم نقطة الإدخال. الوصف وأمر الاختبار ومستودع GitHub والكلمات الأساسية والمؤلف ومعلومات الترخيص هي سمات اختيارية—بإمكانك تخطيها لهذا المشروع.
- اقبل الاقتراحات الواردة بين قوسين عن طريق تحديد Return أو Enter.
- بعد إكمال المطالبات،
package.json
سيتم إنشاء ملف في دليل translator-app.
افتح نافذة وحدة التحكم واستخدم npm لتثبيت axios
مكتبة HTTP وحزمة uuid
:
npm install axios uuid
قم بإنشاء ملف index.js
في دليل التطبيق.
تلميح
بإمكانك إنشاء ملف جديد باستخدام PowerShell.
افتح نافذة PowerShell في دليل المشروع الخاص بك عن طريق الضغط باستمرار على مفتاح Shift والنقر بزر الماوس الأيمن فوق المجلد.
اكتب الأمر التالي New-Item index.js.
يمكنك أيضاً إنشاء ملف جديد باسم index.js
في IDE الخاص بك وحفظه في دليل translator-app
.
إنشاء تطبيق JavaScript الخاص بك
أضف نموذج التعليمة البرمجية التالية إلى ملف index.js
الخاص بك. تأكد من تحديث متغير المفتاح بالقيمة من مثيل المترجم لمدخل Microsoft Azure:
const axios = require('axios').default;
const { v4: uuidv4 } = require('uuid');
let key = "<your-translator-key>";
let 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.
let location = "<YOUR-RESOURCE-LOCATION>";
axios({
baseURL: endpoint,
url: '/translate',
method: 'post',
headers: {
'Ocp-Apim-Subscription-Key': key,
// location required if you're using a multi-service or regional (not global) resource.
'Ocp-Apim-Subscription-Region': location,
'Content-type': 'application/json',
'X-ClientTraceId': uuidv4().toString()
},
params: {
'api-version': '3.0',
'from': 'en',
'to': 'fr,zu'
},
data: [{
'text': 'I would really like to drive your car around the block a few times!'
}],
responseType: 'json'
}).then(function(response){
console.log(JSON.stringify(response.data, null, 4));
})
شغّل تطبيق JavaScript
بمجرد إضافة نموذج التعليمات البرمجية إلى التطبيق الخاص بك، قم بتشغيل البرنامج الخاص بك:
انتقل إلى دليل تطبيقك (translator-app).
اكتب الأمر التالي في المحطة الطرفية:
node index.js
مخرجات الترجمة:
بعد الاستدعاء الناجح، يجب أن تشاهد الاستجابة التالية:
[
{
"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"
}
]
}
]
إعداد مشروع Python الخاص بك
تأكد من تثبيت أحدث إصدار من Python 3.x . يتم تضمين حزمة مثبّت Python (نقطة) مع تثبيت Python.
افتح نافذة طرفية واستخدم النقطة لتثبيت مكتبة الطلبات وحزمة uuid0:
pip install requests uuid
إشعار
سنستخدم أيضاً حزمة Python المضمنة تسمى json. يتم استخدامه للعمل مع بيانات JSON.
إنشاء تطبيق Python الخاص بك
قم بإنشاء ملف Python جديد يسمى translator-app.py في المحرر المفضل لديك أو IDE.
أضف نموذج التعليمة البرمجية التالية إلى ملف translator-app.py
الخاص بك. تأكد من تحديث المفتاح بإحدى القيم من مثيل Translator Azure portal Microsoft Azure.
import requests, uuid, json
# Add your key and endpoint
key = "<your-translator-key>"
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.
location = "<YOUR-RESOURCE-LOCATION>"
path = '/translate'
constructed_url = endpoint + path
params = {
'api-version': '3.0',
'from': 'en',
'to': ['fr', 'zu']
}
headers = {
'Ocp-Apim-Subscription-Key': key,
# location required if you're using a multi-service or regional (not global) resource.
'Ocp-Apim-Subscription-Region': location,
'Content-type': 'application/json',
'X-ClientTraceId': str(uuid.uuid4())
}
# You can pass more than one object in body.
body = [{
'text': 'I would really like to drive your car around the block a few times!'
}]
request = requests.post(constructed_url, params=params, headers=headers, json=body)
response = request.json()
print(json.dumps(response, sort_keys=True, ensure_ascii=False, indent=4, separators=(',', ': ')))
تشغيل تطبيق python الخاص بك
بمجرد إضافة نموذج التعليمات البرمجية إلى التطبيق الخاص بك، قم بإنشاء وتشغيل البرنامج الخاص بك:
انتقل إلى ملف translator-app.py الخاص بك.
اكتب الأمر التالي في وحدة التحكم الخاصة بك:
python translator-app.py
مخرجات الترجمة:
بعد الاستدعاء الناجح، يجب أن تشاهد الاستجابة التالية:
[
{
"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"
}
]
}
]
كان هذا كل شيء، تهانينا! لقد تعلمت للتو استخدام خدمة المترجم لترجمة النص.