بدء استخدام ترجمة المستندات غير المتزامنة
ترجمة المستندات هي ميزة مستندة إلى السحابة لخدمة Azure الذكاء الاصطناعي المترجم التي تترجم بشكل غير متزامن مستندات كاملة باللغات المدعومة وتنسيقات الملفات المختلفة. في هذا التشغيل السريع، تعرف على كيفية استخدام ترجمة المستندات باستخدام لغة برمجة من اختيارك لترجمة مستند مصدر إلى لغة مستهدفة مع الحفاظ على البنية وتنسيق النص.
المتطلبات الأساسية
هام
تتوفر حزم SDK لترجمة مستندات Java وJavaScript حاليا في المعاينة العامة. قد تتغير الميزات والنهج والعمليات، قبل إصدار التوفر العام (GA)، استنادا إلى ملاحظات المستخدم.
C# وPython SDKs هي إصدارات التوفر العام (GA) جاهزة للاستخدام في تطبيقات الإنتاج الخاصة بك
ترجمة المستندات مدعومة حاليا في مورد المترجم (خدمة واحدة) فقط، ولا يتم تضمينها في مورد خدمات Azure الذكاء الاصطناعي (متعدد الخدمات).
يتم دعم Document Translation فقط في خطة الخدمة القياسية S1 (الدفع عند التنقل) أو في خطة خصم حجم D3. راجعتسعير خدمات Azure الذكاء الاصطناعي - المترجم.
لبدء الاستخدام، تحتاج إلى ما يلي:
حساب Azureنشط. إذا لم يكن لديك حساب، يمكنك إنشاء حساب مجاني
حساب Azure Blob Storage. تحتاج أيضا إلى إنشاء حاويات في حساب Azure Blob Storage للملفات المصدر والهدف:
- حاوية المصدر. هذه الحاوية هي المكان الذي تقوم فيه بتحميل ملفاتك للترجمة (مطلوبة).
- الحاوية الهدف. هذه الحاوية هي المكان الذي يتم فيه تخزين الملفات المترجمة (مطلوب).
مورد المترجم خدمة واحدة (وليس مورد خدمات Azure الذكاء الاصطناعي متعدد الخدمات):
أكمل حقلي "Translator project" و"instance details" كما يلي:
«Subscription» (الاشتراك) حدد أحد اشتراكات Azure المتوفرة.
مجموعة الموارد يمكنك إنشاء مجموعة موارد جديدة أو إضافة المورد الخاص بك إلى مجموعة موارد موجودة مسبقًا تشترك في نفس دورة الحياة والأذونات والنُهج.
منطقة المورد. اختر Global ما لم يتطلب عملك أو تطبيقك منطقة معينة. إذا كنت تخطط لاستخدام هوية مدارة معينة من قبل النظام للمصادقة، فاختر منطقة جغرافيةمثل غرب الولايات المتحدة.
الاسم. أدخل الاسم الذي اخترته للمورد الخاص بك. يجب أن يكون الاسم الذي تختاره فريدًا في Azure.
إشعار
تتطلب ترجمة المستندات نقطة نهاية مجال مخصصة. ستكون القيمة التي تدخلها في حقل الاسم هي معلمة اسم المجال المخصص لنقطة النهاية الخاصة بك.
مستوى الأسعار. ترجمة المستندات غير مدعومة في الطبقة المجانية. حدد Standard S1 لتجربة الخدمة.
حدد "استعراض + إنشاء".
راجع شروط الخدمة وحدد Create لتوزيع موردك.
بعد نشر المورد بنجاح، حدد Go to resource.
استرداد نقطة نهاية ترجمة المفتاح والمستند
تتطلب الطلبات إلى خدمة المترجم مفتاح للقراءة فقط ونقطة نهاية مخصصة لمصادقة الوصول. نقطة نهاية المجال المخصصة هي عنوان URL منسق باسم المورد واسم المضيف والدلائل الفرعية المترجم ومتاحة في مدخل Microsoft Azure.
إذا قمت بإنشاء مورد جديد، بعد نشره، فحدد Go to resource. إذا كان لديك مورد Document Translation موجود، انتقل مباشرة إلى صفحة المورد.
في الجهة اليسرى، ضمن إدارة الموارد،حدد مفاتيح ونقطة النهاية.
يمكنك نسخ و
document translation endpoint
و و فيkey
نماذج التعليمات البرمجية لمصادقة طلبك إلى خدمة ترجمة المستندات. مفتاح واحد فقط ضروري لإجراء استدعاء واجهة برمجة التطبيقات.
إنشاء حاويات تخزين Azure Blob
تحتاج إلى إنشاء حاويات في حساب Azure Blob Storage للملفات المصدر والهدف.
- حاوية المصدر. هذه الحاوية هي المكان الذي تقوم فيه بتحميل ملفاتك للترجمة (مطلوبة).
- الحاوية الهدف. هذه الحاوية هي المكان الذي يتم فيه تخزين الملفات المترجمة (مطلوب).
المصادقة المطلوبة
sourceUrl
يجب targetUrl
أن يتضمن الرمز المميز توقيع الوصول المشترك (SAS) وglossaryUrl
ملحقًا كسلسلة استعلام. يمكن تعيين الرمز المميز إلى الحاوية أو النقط المحددة. راجعإنشاء رموز SAS المميزة لعملية ترجمة المستندات.
- يجب أن تعين حاوية المصدر أو الكائن الثنائي كبير الحجم الوصول للقراءة والقائمة.
- يجب أن تعين الحاوية الهدف أو الكائن الثنائي كبير الحجم الوصول للكتابة والقائمة.
- يجب أن يقوم الكائن الثنائي كبير الحجم في مسرد المصطلحات بتعيين الوصول للقراءة والقائمة.
تلميح
- إذا كنت تقوم بترجمة ملفات متعددة (نقط) في عمليةتفويض وصول SAS على مستوى الحاوية.
- إذا كنت تقوم بترجمة ملف (نقطة) واحدفي عمليةتفويض وصول SAS علي مستوى نقطة.
- كبديل الرموز المميزة لـ SAS، يمكنك استخدام هوية مدارة يعينها النظام للمصادقة.
نموذج المستند
لهذا المشروع، تحتاج إلى مستند مصدر تم تحميله إلى الحاوية المصدر. يمكنك تنزيل مستند نموذج ترجمة المستندات لهذا التشغيل السريع. اللغة المصدر هي الإنجليزية.
إعداد بيئة C#/.NET
لهذا التشغيل السريع، نستخدم أحدث إصدار من Visual Studio IDE لإنشاء التطبيق وتشغيله.
ابدأ تشغيل Visual Studio.
في صفحة بدء الاستخدام ، اختر إنشاء مشروع جديد.
في صفحة «Create a new project»، أدخل وحدة التحكم في مربع البحث. اختر قالب تطبيق وحدة التحكم، ثم اختر التالي.
في نافذة الحوار تكوين مشروعك الجديد، أدخل
document-translation-qs
في مربع اسم المشروع. ثم اختر التالي.في نافذة الحوار معلومات إضافية ، حدد .NET 6.0 (دعم طويل الأجل) ، ثم حدد أنشئ .
تثبيت Newtonsoft.Json
انقر بزر الماوس الأيمن فوق مشروع document-translation-qs وحدد Manage NuGet Packages... .
حدد علامة التبويب Browse واكتب NewtonsoftJson.
حدد أحدث إصدار مستقر من القائمة المنسدلة وقم بتثبيت الحزمة في مشروعك.
ترجمة جميع المستندات في حاوية تخزين
إشعار
- بدءاً من .NET 6، تنشئ المشروعات الجديدة التي تستخدم القالب
console
نمط برنامج جديداً يختلف عن الإصدارات السابقة. - يستخدم الإخراج الجديد ميزات #C الحديثة التي تبسط التعليمة البرمجية الذي تحتاج إلى كتابته.
- عندما تستخدم الإصدار الأحدث، تحتاج فقط إلى كتابة هيكل الأسلوب
Main
. لست بحاجة إلى تضمين بيانات عالية المستوى أو توجيهات عالمية باستخدام توجيهات أو استخدام ضمني للتوجيهات. - لمزيد من المعلومات، راجع قوالب C# الجديدة التي تنشئ عبارات المستوى الأعلى.
افتح ملف Program.cs.
احذف التعليمة البرمجية الموجود مسبقاً، بما في ذلك السطر
Console.WriteLine("Hello World!")
.نسخ نموذج التعليمات البرمجية لترجمة المستند ولصقه في ملف Program.cs.
تحديث
{your-document-translation-endpoint}
و{your-key}
بالقيم من مدخل Microsoft Azure الخاص بك المترجم المثيل.تحديث
{your-source-container-SAS-URL}
و{your-target-container-SAS-URL}
بالقيم من مثيل حاويات حساب تخزين مدخل Microsoft Azure.
Code sample
هام
تذكر إزالة المفتاح من التعليمة البرمجية عند الانتهاء، وعدم توزيعها علناً. للإنتاج، استخدم طريقة آمنة لتخزين بيانات الاعتماد والوصول إليها مثل Azure Key Vault. لمزيد من المعلومات، راجع أمان خدمات Azure الذكاء الاصطناعي.
using System.Text;
class Program
{
private static readonly string endpoint = "{your-document-translator-endpoint}/translator/text/batch/v1.1";
private static readonly string key = "{your-key}";
static readonly string route = "/batches";
static readonly string sourceURL = "\" {your-source-container-SAS-URL}\"";
static readonly string targetURL = " \"{your-target-container-SAS-URL}\"";
static readonly string json = ("{\"inputs\": [{\"source\": {\"sourceUrl\":"+sourceURL+" ,\"storageSource\": \"AzureBlob\",\"language\": \"en\"}, \"targets\": [{\"targetUrl\":"+targetURL+",\"storageSource\": \"AzureBlob\",\"category\": \"general\",\"language\": \"es\"}]}]}");
static async Task Main(string[] args)
{
using HttpClient client = new HttpClient();
using HttpRequestMessage request = new HttpRequestMessage();
{
StringContent content = new StringContent(json, Encoding.UTF8, "application/json");
request.Method = HttpMethod.Post;
request.RequestUri = new Uri(endpoint + route);
request.Headers.Add("Ocp-Apim-Subscription-Key", key);
request.Content = content;
HttpResponseMessage response = await client.SendAsync(request);
string result = response.Content.ReadAsStringAsync().Result;
if (response.IsSuccessStatusCode)
{
Console.WriteLine($"Status code: {response.StatusCode}");
Console.WriteLine();
Console.WriteLine($"Response Headers:");
Console.WriteLine(response.Headers);
}
else
Console.Write("Error");
}
}
}
تشغيل التطبيق الخاص بك
بمجرد إضافة نموذج التعليمات البرمجية إلى التطبيق الخاص بك، اختر زر البدء الأخضر بجوار document-translation-qs لإنشاء البرنامج وتشغيله، أو اضغط على F5.
عند الانتهاء بنجاح:
- يمكن العثور على المستندات المترجمة في الحاوية الهدف.
- يقوم أسلوب POST الناجح بإرجاع
202 Accepted
رمز استجابة يشير إلى أن الخدمة أنشأت طلب الدفعة. - يقوم طلب POST أيضا بإرجاع عناوين الاستجابة بما في ذلك
Operation-Location
التي توفر قيمة مستخدمة في طلبات GET اللاحقة.
إعداد بيئة Go الخاصة بك
يمكنك استخدام أي محرر نص لكتابة تطبيقات Go. نوصي باستخدام أحدث إصدار من Visual Studio Code وGo extension.
تلميح
إذا كنت مستخدمًا جديدًا لـ Go، فجرب الوحدة النمطية بدء استخدام Go Learn.
إذا لم تكن قد فعلت ذلك بالفعل، فقم بتنزيل Go وتثبيته.
قم بتنزيل إصدار Go لنظام التشغيل الخاص بك.
بمجرد اكتمال التنزيل، قم بتشغيل المثبت.
افتح موجه الأوامر وأدخل ما يلي لتأكيد تثبيت Go:
go version
ترجمة جميع المستندات في حاوية تخزين
في نافذة وحدة التحكم (مثل cmd أو PowerShell أو Bash)، أنشئ دليلا جديدا لتطبيقك يسمى document-translation-qs، وانتقل إليه.
إنشاء ملف Go جديد باسم document-translation.go في دليل document-translation-qs .
انسخ والصق نموذج التعليمات البرمجية لترجمة المستند في ملف document-translation.go.
تحديث
{your-document-translation-endpoint}
و{your-key}
بالقيم من مدخل Microsoft Azure الخاص بك المترجم المثيل.{your-source-container-SAS-URL}
قم بتحديث و{your-target-container-SAS-URL}
بالقيم من مثيل حاويات حساب تخزين مدخل Microsoft Azure.
Code sample
هام
تذكر إزالة المفتاح من التعليمة البرمجية عند الانتهاء، وعدم توزيعها علناً. للإنتاج، استخدم طريقة آمنة لتخزين بيانات الاعتماد والوصول إليها مثل Azure Key Vault. لمزيد من المعلومات، راجع أمان خدمات Azure الذكاء الاصطناعي.
package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
)
func main() {
httpposturl := "{your-document-translation-endpoint}/translator/text/batch/v1.1/batches"
fmt.Println("Response", httpposturl)
var jsonData = []byte(`{
"inputs": [
{
"source": {
"sourceUrl": "{your-source-container-SAS-URL}"
},
"targets": [
{
"{your-target-container-SAS-URL}",
"language": "fr"
}
]
}
]
}`)
request, error := http.NewRequest("POST", httpposturl, bytes.NewBuffer(jsonData))
request.Header.Set("Content-Type", "application/json")
request.Header.Set("Ocp-Apim-Subscription-Key", "{your-key}")
client := &http.Client{}
response, error := client.Do(request)
if error != nil {
panic(error)
}
defer response.Body.Close()
fmt.Println("response Status:", response.Status)
var printHeader = (response.Header)
prettyJSON, _ := json.MarshalIndent(printHeader, "", " ")
fmt.Printf("%s\n", prettyJSON)
}
تشغيل تطبيق Go الخاص بك
بمجرد إضافة نموذج التعليمة البرمجية إلى تطبيقك، يمكن تنفيذ برنامج Go في مطالبة الأوامر أو موجه أوامر طرفي. تأكد من تعيين مسار المطالبة إلى المجلد document-translation-qs واستخدم الأمر التالي:
go run document-translation.go
عند الانتهاء بنجاح:
- يمكن العثور على المستندات المترجمة في الحاوية الهدف.
- يقوم أسلوب POST الناجح بإرجاع
202 Accepted
رمز استجابة يشير إلى أن الخدمة أنشأت طلب الدفعة. - يقوم طلب POST أيضا بإرجاع عناوين الاستجابة بما في ذلك
Operation-Location
التي توفر قيمة مستخدمة في طلبات GET اللاحقة.
إعداد بيئة Java الخاصة بك
لهذا التشغيل السريع، نستخدم أداة أتمتة بناء Gradle لإنشاء التطبيق وتشغيله.
يجب أن يكون لديك أحدث إصدار من Visual Studio Code أو IDE المفضلة لديك. راجعJava في Visual Studio Code.
تلميح
- يقدم Visual Studio Code حزمة ترميز Java لنظامي التشغيل Windows وmacOS. حزمة الترميز عبارة عن حزمة من VS Code، وJava Development Kit (JDK)، ومجموعة من الملحقات المقترحة من Microsoft. من الممكن أيضًا استخدام حزمة الترميز لإصلاح بيئة التطوير الحالية.
- في حال كنت تستخدم VS Code وCoding Pack For Java، فقم بتثبيت الملحق Gradle for Java.
إذا كنت لا تستخدم Visual Studio Code، فتأكد من تثبيت ما يلي في بيئة التطوير الخاصة بك:
AJava Development Kit (OpenJDK) الإصدار 8 أو أحدث.
Gradle، الإصدار 6.8 أو أحدث.
إنشاء مشروع Gradle جديد
في نافذة وحدة التحكم (مثل cmd أو PowerShell أو Bash)، أنشئ دليلا جديدا لتطبيقك يسمى ترجمة المستندات، وانتقل إليه.
mkdir document-translation && document-translation
mkdir document-translation; cd document-translation
gradle init
قم بتشغيل الأمر من دليل ترجمة المستندات. ينشئ هذا الأمر ملفات بناء أساسية ل Gradle، بما في ذلك build.gradle.kts، والذي يستخدم في وقت التشغيل لإنشاء التطبيق وتكوينه.gradle init --type basic
عند طلب اختيار DSL، حدد Kotlin.
اقبل اسم المشروع الافتراضي (ترجمة المستندات) عن طريق تحديد Return أو Enter.
إشعار
قد يستغرق إنشاء التطبيق بأكمله بضع دقائق، ولكن قريبا يجب أن ترى العديد من المجلدات والملفات بما في ذلك
build-gradle.kts
.تحديث
build.gradle.kts
بالتعليمة البرمجية التالي:
plugins {
java
application
}
application {
mainClass.set("DocumentTranslation")
}
repositories {
mavenCentral()
}
dependencies {
implementation("com.squareup.okhttp3:okhttp:4.10.0")
implementation("com.google.code.gson:gson:2.9.0")
}
ترجمة جميع المستندات في حاوية تخزين
من دليل ترجمة المستندات، قم بتشغيل الأمر التالي:
mkdir -p src/main/java
ينشئ الأمر بنية الدليل التالية:
انتقل إلى الدليل
java
وأنشئ ملفاً باسمDocumentTranslation.java
.تلميح
بإمكانك إنشاء ملف جديد باستخدام PowerShell.
افتح نافذة PowerShell في دليل المشروع الخاص بك عن طريق الضغط باستمرار على مفتاح Shift والنقر بزر الماوس الأيمن فوق المجلد.
أدخل الأمر التالي New-Item DocumentTranslation.java.
يمكنك أيضاً إنشاء ملف جديد في IDE باسم
DocumentTranslation.java
وحفظه في دليلjava
.
انسخ والصق نموذج التعليمات البرمجية لترجمة المستند في ملف DocumentTranslation.java.
تحديث
{your-document-translation-endpoint}
و{your-key}
بالقيم من مدخل Microsoft Azure الخاص بك المترجم المثيل.{your-source-container-SAS-URL}
قم بتحديث و{your-target-container-SAS-URL}
بالقيم من مثيل حاويات حساب تخزين مدخل Microsoft Azure.
Code sample
هام
تذكر إزالة المفتاح من التعليمة البرمجية عند الانتهاء، وعدم توزيعها علناً. للإنتاج، استخدم طريقة آمنة لتخزين بيانات الاعتماد والوصول إليها مثل Azure Key Vault. لمزيد من المعلومات، راجع أمان خدمات Azure الذكاء الاصطناعي.
import java.io.*;
import java.net.*;
import java.util.*;
import okhttp3.*;
public class DocumentTranslation {
String key = "{your-key}";
String endpoint = "{your-document-translation-endpoint}/translator/text/batch/v1.1";
String path = endpoint + "/batches";
String sourceSASUrl = "{your-source-container-SAS-URL}";
String targetSASUrl = "{your-target-container-SAS-URL}";
String jsonInputString = (String.format("{\"inputs\":[{\"source\":{\"sourceUrl\":\"%s\"},\"targets\":[{\"targetUrl\":\"%s\",\"language\":\"fr\"}]}]}", sourceSASUrl, targetSASUrl));
OkHttpClient client = new OkHttpClient();
public void post() throws IOException {
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, jsonInputString);
Request request = new Request.Builder()
.url(path).post(body)
.addHeader("Ocp-Apim-Subscription-Key", key)
.addHeader("Content-type", "application/json")
.build();
Response response = client.newCall(request).execute();
System.out.println(response.code());
System.out.println(response.headers());
}
public static void main(String[] args) {
try {
DocumentTranslation sampleRequest = new DocumentTranslation();
sampleRequest.post();
} catch (Exception e) {
System.out.println(e);
}
}
}
إنشاء وتشغيل تطبيق Java الخاص بك
بمجرد إضافة نموذج تعليمات برمجية إلى التطبيق الخاص بك، انتقل مرة أخرى إلى دليل المشروع الرئيسي، وترجمة المستندات، وافتح نافذة وحدة التحكم، وأدخل الأوامر التالية:
أنشئ تطبيقك مستخدماً الأمر
build
:gradle build
شغل تطبيقك مستخدماً الأمر
run
:gradle run
عند الانتهاء بنجاح:
- يمكن العثور على المستندات المترجمة في الحاوية الهدف.
- يقوم أسلوب POST الناجح بإرجاع
202 Accepted
رمز استجابة يشير إلى أن الخدمة أنشأت طلب الدفعة. - يقوم طلب POST أيضا بإرجاع عناوين الاستجابة بما في ذلك
Operation-Location
التي توفر قيمة مستخدمة في طلبات GET اللاحقة.
إعداد بيئة Node.js
لهذا التشغيل السريع، نستخدم بيئة وقت تشغيل Node.js JavaScript لإنشاء التطبيق وتشغيله.
إذا لم تكن قد قمت بذلك بالفعل، فقم بتثبيت أحدث إصدار من Node.js. يتم تضمين Node Package Manager (npm) في تثبيت Node.js.
تلميح
إذا كنت جديدًا على Node.js، فجرب الوحدة النمطية مقدمة Node.js Learn.
في نافذة وحدة التحكم (مثل cmd أو PowerShell أو Bash)، أنشئ دليلاً جديداً لتطبيقك باسم
document-translation
وانتقل إليه.mkdir document-translation && cd document-translation
mkdir document-translation; cd document-translation
قم بتشغيل الأمر npm init لتهيئة التطبيق وسقالة مشروعك.
npm init
حدد سمات المشروع عن طريق قبول المطالبات المقدمة في المحطة الطرفية.
- تمثل أهم السمات الاسم ورقم الإصدار ونقطة الدخول.
- نوصي بالاحتفاظ بـ
index.js
لاسم نقطة الإدخال. الوصف وأمر الاختبار ومستودع GitHub والكلمات الأساسية والمؤلف ومعلومات الترخيص هي سمات اختيارية—بإمكانك تخطيها لهذا المشروع. - اقبل الاقتراحات الواردة بين قوسين عن طريق تحديد Return أو Enter.
- بعد إكمال المطالبات،
package.json
سيتم إنشاء ملف في دليل ترجمة المستندات.
استخدم npm لتثبيت
axios
مكتبة HTTP وحزمتهاuuid
في دليل تطبيق ترجمة المستندات:npm install axios uuid
ترجمة جميع المستندات في حاوية تخزين
index.js
إنشاء الملف في دليل التطبيق.تلميح
بإمكانك إنشاء ملف جديد باستخدام PowerShell.
افتح نافذة PowerShell في دليل المشروع الخاص بك عن طريق الضغط باستمرار على مفتاح Shift والنقر بزر الماوس الأيمن فوق المجلد.
أدخل الأمر التالي New-Item index.js.
يمكنك أيضاً إنشاء ملف جديد باسم
index.js
في IDE الخاص بك وحفظه في دليلdocument-translation
.
انسخ والصق نموذج التعليمة البرمجية لترجمة المستند في ملفك
index.js
.تحديث
{your-document-translation-endpoint}
و{your-key}
بالقيم من مدخل Microsoft Azure الخاص بك المترجم المثيل.{your-source-container-SAS-URL}
قم بتحديث و{your-target-container-SAS-URL}
بالقيم من مثيل حاويات حساب تخزين مدخل Microsoft Azure.
Code sample
هام
تذكر إزالة المفتاح من التعليمة البرمجية عند الانتهاء، وعدم توزيعها علناً. للإنتاج، استخدم طريقة آمنة لتخزين بيانات الاعتماد والوصول إليها مثل Azure Key Vault. لمزيد من المعلومات، راجع أمان خدمات Azure الذكاء الاصطناعي.
const axios = require('axios').default;
let endpoint = '{your-document-translation-endpoint}/translator/text/batch/v1.1';
let route = '/batches';
let key = '{your-key}';
let sourceSASUrl = "{your-source-container-SAS-URL}";
let targetSASUrl = "{your-target-container-SAS-URL}"
let data = JSON.stringify({"inputs": [
{
"source": {
"sourceUrl": sourceSASUrl,
"storageSource": "AzureBlob",
"language": "en"
},
"targets": [
{
"targetUrl": targetSASUrl,
"storageSource": "AzureBlob",
"category": "general",
"language": "es"}]}]});
let config = {
method: 'post',
baseURL: endpoint,
url: route,
headers: {
'Ocp-Apim-Subscription-Key': key,
'Content-Type': 'application/json'
},
data: data
};
axios(config)
.then(function (response) {
let result = { statusText: response.statusText, statusCode: response.status, headers: response.headers };
console.log()
console.log(JSON.stringify(result, null, 2));
})
.catch(function (error) {
console.log(error);
});
شغّل تطبيق JavaScript
بمجرد إضافة عينة التعليمة البرمجية إلى تطبيقك، قم بتشغيل برنامجك:
انتقل إلى دليل التطبيق (ترجمة المستندات).
أدخل الأمر التالي وقم بتشغيله في المحطة الطرفية:
node index.js
عند الانتهاء بنجاح:
- يمكن العثور على المستندات المترجمة في الحاوية الهدف.
- يقوم أسلوب POST الناجح بإرجاع
202 Accepted
رمز استجابة يشير إلى أن الخدمة أنشأت طلب الدفعة. - يقوم طلب POST أيضا بإرجاع عناوين الاستجابة بما في ذلك
Operation-Location
التي توفر قيمة مستخدمة في طلبات GET اللاحقة.
إعداد مشروع Python الخاص بك
إذا لم تكن قد قمت بذلك بالفعل، فقم بتثبيت أحدث إصدار من Python 3.x. يتم تضمين حزمة مثبّت Python (نقطة) مع تثبيت Python.
تلميح
إذا كنت جديدًا على Python، فجرب مقدمة إلى الوحدة النمطية Python Learn.
افتح نافذة طرفية واستخدم النقطة لتثبيت مكتبة الطلبات وحزمة uuid0:
pip install requests uuid
ترجمة جميع المستندات في حاوية تخزين
باستخدام المحرر المفضل لديك أو IDE، قم بإنشاء دليل جديد لتطبيقك المسمى
document-translation
.إنشاء ملف Python جديد يسمى document-translation.py في دليل ترجمة المستندات.
انسخ والصق نموذج التعليمة البرمجية لترجمة المستند في ملفك
document-translation.py
.تحديث
{your-document-translation-endpoint}
و{your-key}
بالقيم من مدخل Microsoft Azure الخاص بك المترجم المثيل.{your-source-container-SAS-URL}
قم بتحديث و{your-target-container-SAS-URL}
بالقيم من مثيل حاويات حساب تخزين مدخل Microsoft Azure.
Code sample
هام
تذكر إزالة المفتاح من التعليمة البرمجية عند الانتهاء، وعدم توزيعها علناً. للإنتاج، استخدم طريقة آمنة لتخزين بيانات الاعتماد والوصول إليها مثل Azure Key Vault. لمزيد من المعلومات، راجع أمان خدمات Azure الذكاء الاصطناعي.
import requests
endpoint = '{your-document-translation-endpoint}'
key = '{your-key}'
path = 'translator/text/batch/v1.1/batches'
constructed_url = endpoint + path
sourceSASUrl = '{your-source-container-SAS-URL}'
targetSASUrl = '{your-target-container-SAS-URL}'
body= {
"inputs": [
{
"source": {
"sourceUrl": sourceSASUrl,
"storageSource": "AzureBlob",
"language": "en"
},
"targets": [
{
"targetUrl": targetSASUrl,
"storageSource": "AzureBlob",
"category": "general",
"language": "es"
}
]
}
]
}
headers = {
'Ocp-Apim-Subscription-Key': key,
'Content-Type': 'application/json',
}
response = requests.post(constructed_url, headers=headers, json=body)
response_headers = response.headers
print(f'response status code: {response.status_code}\nresponse status: {response.reason}\n\nresponse headers:\n')
for key, value in response_headers.items():
print(key, ":", value)
تشغيل تطبيق python الخاص بك
بمجرد إضافة نموذج التعليمة البرمجية إلى تطبيقك، قم بإنشاء وتشغيل برنامجك:
انتقل إلى دليل ترجمة المستندات.
أدخل الأمر التالي وقم بتشغيله في وحدة التحكم الخاصة بك:
python document-translation.py
عند الانتهاء بنجاح:
- يمكن العثور على المستندات المترجمة في الحاوية الهدف.
- يقوم أسلوب POST الناجح بإرجاع
202 Accepted
رمز استجابة يشير إلى أن الخدمة أنشأت طلب الدفعة. - يقوم طلب POST أيضا بإرجاع عناوين الاستجابة بما في ذلك
Operation-Location
التي توفر قيمة مستخدمة في طلبات GET اللاحقة.
إعداد بيئة البرمجة
في هذا التشغيل السريع، نستخدم أداة سطر الأوامر cURL لإجراء استدعاءات واجهة برمجة تطبيقات REST لترجمة المستندات.
إشعار
يتم تثبيت حزمة cURL مسبقا على معظم Windows 10 وWindows 11 ومعظم توزيعات macOS وLinux. يمكنك التحقق من إصدار الحزمة باستخدام الأوامر التالية: Windows: curl.exe -V
.
macOS curl -V
Linux: curl --version
إذا لم يتم تثبيت cURL، فإليك ارتباطات للنظام الأساسي الخاص بك:
ترجمة المستندات (طلب POST)
باستخدام المحرر المفضل لديك أو IDE، قم بإنشاء دليل جديد لتطبيقك المسمى
document-translation
.إنشاء ملف json جديد يسمى document-translation.json في دليل ترجمة المستندات.
انسخ نموذج طلب ترجمة المستند والصقه في
document-translation.json
الملف. استبدل{your-source-container-SAS-URL}
و{your-target-container-SAS-URL}
بقيم من مثيل حاويات حساب تخزين مدخل Microsoft Azure.نموذج الطلب:
{ "inputs":[ { "source":{ "sourceUrl":"{your-source-container-SAS-URL}" }, "targets":[ { "targetUrl":"{your-target-container-SAS-URL}", "language":"fr" } ] } ] }
إنشاء طلب POST وتشغيله
قبل تشغيل طلب POST، استبدل {your-document-translator-endpoint}
{your-key}
و بالقيم من مدخل Microsoft Azure المترجم المثيل.
هام
تذكر إزالة المفتاح من التعليمة البرمجية عند الانتهاء، وعدم توزيعها علناً. للإنتاج، استخدم طريقة آمنة لتخزين بيانات الاعتماد والوصول إليها مثل Azure Key Vault. لمزيد من المعلومات، راجع أمان خدمات Azure الذكاء الاصطناعي.
بوويرشيل
cmd /c curl "{your-document-translator-endpoint}/translator/text/batch/v1.1/batches" -i -X POST --header "Content-Type: application/json" --header "Ocp-Apim-Subscription-Key: {your-key}" --data "@document-translation.json"
موجه الأوامر / المحطة الطرفية
curl "{your-document-translator-endpoint}/translator/text/batch/v1.1/batches" -i -X POST --header "Content-Type: application/json" --header "Ocp-Apim-Subscription-Key: {your-key}" --data "@document-translation.json"
عند الانتهاء بنجاح:
- يمكن العثور على المستندات المترجمة في الحاوية الهدف.
- يقوم أسلوب POST الناجح بإرجاع
202 Accepted
رمز استجابة يشير إلى أن الخدمة أنشأت طلب الدفعة. - يقوم طلب POST أيضا بإرجاع عناوين الاستجابة بما في ذلك
Operation-Location
التي توفر قيمة مستخدمة في طلبات GET اللاحقة.
كان هذا كل شيء، تهانينا! في هذا التشغيل السريع، استخدمت ترجمة المستندات لترجمة مستند مع الحفاظ على البنية الأصلية وتنسيق البيانات.