Share via


Ismerkedés az aszinkron dokumentumfordítással

A dokumentumfordítás az Azure AI Translator szolgáltatás felhőalapú funkciója, amely aszinkron módon lefordítja a teljes dokumentumokat támogatott nyelveken és különböző fájlformátumokban. Ebben a rövid útmutatóban megtanulhatja, hogyan használhatja a dokumentumfordítást egy tetszőleges programozási nyelvvel a forrásdokumentum célnyelvre való fordításához, miközben megőrzi a szerkezetet és a szövegformázást.

Előfeltételek

Fontos

  • A Java- és JavaScript-dokumentumfordítási SDK-k jelenleg nyilvános előzetes verzióban érhetők el. A funkciók, a megközelítések és a folyamatok az általános rendelkezésre állási (GA) kiadás előtt változhatnak a felhasználói visszajelzések alapján.

  • A C# és a Python SDK-k általánosan elérhető (GA) kiadások, amelyek készen állnak az éles alkalmazásokban való használatra

  • A dokumentumfordítás jelenleg csak a Translator (egyszolgáltatásos) erőforrásban támogatott, és nem szerepel az Azure AI-szolgáltatások (többszolgáltatásos) erőforrásában.

  • A dokumentumfordítás csak az S1 Standard szolgáltatáscsomagban (használatalapú fizetés) vagy a D3 mennyiségi kedvezménycsomagban támogatott. Tekintse meg azAzure AI-szolgáltatások díjszabását – Translator.

A kezdéshez a következők szükségesek:

  • Aktív Azure-fiók. Ha nem rendelkezik ilyen fiókkal, létrehozhat egy ingyenes fiókot

  • Egy Azure Blob Storage-fiók. Tárolókat is létre kell hoznia az Azure Blob Storage-fiókban a forrás- és célfájlokhoz:

    • Forrástároló. Ebben a tárolóban töltheti fel a fájlokat fordításra (kötelező).
    • Céltároló. Ez a tároló tárolja a lefordított fájlokat (kötelező).
  • Egyszolgáltatásos Translator-erőforrás (nem többszolgáltatásos Azure AI-szolgáltatási erőforrás):

    Töltse ki a Translator projekt és a példány részleteit tartalmazó mezőket az alábbiak szerint:

    1. Előfizetés. Válasszon egyet az elérhető Azure-előfizetései közül.

    2. Erőforráscsoport. Létrehozhat egy új erőforráscsoportot, vagy hozzáadhatja az erőforrást egy már meglévő erőforráscsoporthoz, amely ugyanazokkal az életciklussal, engedélyekkel és szabályzatokkal rendelkezik.

    3. Erőforrásrégió. Válassza a Globális lehetőséget, kivéve, ha a vállalat vagy az alkalmazás egy adott régiót igényel. Ha rendszer által hozzárendelt felügyelt identitást szeretne használni a hitelesítéshez, válasszon egy olyan földrajzi régiót, mint az USA nyugati régiója.

    4. Név. Adja meg az erőforráshoz választott nevet. A választott névnek egyedinek kell lennie az Azure-ban.

      Feljegyzés

      A dokumentumfordításhoz egyéni tartományvégpont szükséges. A Név mezőben megadott érték lesz a végpont egyéni tartománynév paramétere.

    5. Tarifacsomag. A dokumentumfordítás nem támogatott az ingyenes szinten. A szolgáltatás kipróbálásához válassza a Standard S1 lehetőséget.

    6. Válassza a Felülvizsgálat és létrehozás lehetőséget.

    7. Tekintse át a szolgáltatási feltételeket, és válassza a Létrehozás lehetőséget az erőforrás üzembe helyezéséhez.

    8. Az erőforrás sikeres üzembe helyezése után válassza az Ugrás az erőforrásra lehetőséget.

Kulcs- és dokumentumfordítási végpont lekérése

A Translator szolgáltatáshoz érkező kérésekhez írásvédett kulcsra és egyéni végpontra van szükség a hozzáférés hitelesítéséhez. Az egyéni tartományvégpont az erőforrásnévvel, a gazdagépnévvel és a Translator alkönyvtárakkal formázott URL-cím, amely az Azure Portalon érhető el.

  1. Ha létrehozott egy új erőforrást, az üzembe helyezés után válassza az Ugrás az erőforrásra lehetőséget. Ha már rendelkezik dokumentumfordítási erőforrással, lépjen közvetlenül az erőforráslapra.

  2. A bal oldali korlát Erőforrás-kezelés területén válassza a Kulcsok és végpont lehetőséget.

  3. A dokumentumfordítási szolgáltatásnak küldött kérés hitelesítéséhez másolja és illessze be keydocument translation endpoint a kódmintákba. API-hívás létrehozásához csak egy kulcs szükséges.

    Screenshot showing the get your key field in Azure portal.

Azure Blob Storage-tárolók létrehozása

Tárolókat kell létrehoznia az Azure Blob Storage-fiókban a forrás- és célfájlokhoz.

  • Forrástároló. Ebben a tárolóban töltheti fel a fájlokat fordításra (kötelező).
  • Céltároló. Ez a tároló tárolja a lefordított fájlokat (kötelező).

Kötelező hitelesítés

A sourceUrl , targetUrl és nem kötelező glossaryUrl , tartalmaznia kell egy közös hozzáférésű jogosultságkód (SAS) jogkivonatot, amely lekérdezési sztringként van hozzáfűzve. A jogkivonat hozzárendelhető a tárolóhoz vagy adott blobokhoz. Lásd:SAS-jogkivonatok létrehozása a dokumentumfordítási folyamathoz.

  • A forrástárolónak vagy blobnak olvasási és listahozzáférést kell kijelölnie.
  • A céltárolónak vagy blobnak írási és listahozzáférést kell kijelölnie.
  • A szószedet-blobnak olvasási és listahozzáférést kell kijelölnie.

Tipp.

  • Ha egy műveletben több fájlt (blobot) fordít át, delegálja az SAS-hozzáférést a tároló szintjén.
  • Ha egyetlen fájlt (blobot) fordít egy műveletben, delegálja az SAS-hozzáférést a blob szintjén.
  • Az SAS-jogkivonatok alternatívaként használhatja a rendszer által hozzárendelt felügyelt identitást a hitelesítéshez.

Mintadokumentum

Ehhez a projekthez egy forrásdokumentumot kell feltöltenie a forrástárolóba. Ehhez a rövid útmutatóhoz letöltheti dokumentumfordítási mintadokumentumunkat. A forrásnyelv az angol.

A C#/.NET-környezet beállítása

Ebben a rövid útmutatóban a Visual Studio IDE legújabb verzióját használjuk az alkalmazás létrehozásához és futtatásához.

  1. Indítsa el a Visual Studiót.

  2. Az Első lépések lapon válassza az Új projekt létrehozása lehetőséget.

    Screenshot of Visual Studio 2022 get started window.

  3. Az Új projekt létrehozása lapon adja meg a konzolt a keresőmezőbe. Válassza ki a konzolalkalmazás-sablont, majd válassza a Tovább gombot.

    Screenshot of Visual Studio 2022 create new project page.

  4. Az új projekt konfigurálása párbeszédpanelen írja be document-translation-qs a Projekt neve mezőbe. Ezután válassza a Tovább gombot.

    Screenshot of Visual Studio 2022 configure new project set-up window.

  5. A További információ párbeszédpanelen válassza a .NET 6.0 (Hosszú távú támogatás), majd a Létrehozás lehetőséget.

    Screenshot of Visual Studio 2022 additional information set-up window.

A Newtonsoft.Json telepítése

  1. Kattintson a jobb gombbal a document-translation-qs projektre, és válassza a NuGet-csomagok kezelése... lehetőséget.

    Screenshot of select NuGet package window in Visual Studio.

  2. Válassza a Tallózás lapot, és írja be a NewtonsoftJson parancsot.

    Screenshot of select prerelease NuGet package in Visual Studio.

  3. Válassza ki a legújabb stabil verziót a legördülő menüből, és telepítse a csomagot a projektbe.

    Screenshot of install selected NuGet package window.

Egy tároló összes dokumentumának fordítása

Feljegyzés

  • A .NET 6-tól kezdve a console sablont használó új projektek új programstílust hoznak létre, amely eltér a korábbi verzióktól.
  • Az új kimenet a legutóbbi C#-funkciókat használja, amelyek leegyszerűsítik az írandó kódot.
  • Az újabb verzió használatakor csak a metódus törzsét Main kell megírnia. Nem kell felső szintű utasításokat, globális irányelveket vagy implicit irányelveket használnia.
  • További információ: Új C#-sablonok legfelső szintű utasítások létrehozása.
  1. Nyissa meg a Program.cs fájlt.

  2. Törölje a már meglévő kódot, beleértve a sort Console.WriteLine("Hello World!")is.

  3. Másolja és illessze be a dokumentumfordítási kódmintát a Program.cs fájlba.

    • Frissítse {your-document-translation-endpoint} és {your-key} használja az Azure Portal Translator-példány értékeit.

    • Frissítse {your-source-container-SAS-URL} és {your-target-container-SAS-URL} használja az Azure Portal Storage-fióktárolók példányának értékeit.

Kódminta

Fontos

Ne felejtse el eltávolítani a kulcsot a kódból, amikor elkészült, és soha ne tegye közzé nyilvánosan. Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. További információ: Azure AI-szolgáltatások biztonsága.

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");

        }

    }

}

Az alkalmazás futtatása

Miután hozzáadott egy kódmintát az alkalmazáshoz, válassza a dokumentumfordítási qs melletti zöld Start gombot a program létrehozásához és futtatásához, vagy nyomja le az F5 billentyűt.

Screenshot: run your Visual Studio program.

Sikeres befejezés esetén:

  • A lefordított dokumentumok a céltárolóban találhatók.
  • A sikeres POST metódus egy 202 Accepted válaszkódot ad vissza, amely azt jelzi, hogy a szolgáltatás létrehozta a kötegkérelmet.
  • A POST-kérés válaszfejléceket is visszaad, beleértve Operation-Location a későbbi GET-kérelmekben használt értéket is.

A Go-környezet beállítása

Go-alkalmazások írásához bármilyen szövegszerkesztőt használhat. Javasoljuk, hogy a Visual Studio Code és a Go bővítmény legújabb verzióját használja.

Tipp.

Ha még nem kezdte el a Go-t, próbálja ki a Go Learn első lépései modult.

Ha még nem tette meg, töltse le és telepítse a Go-t.

  1. Töltse le az operációs rendszer Go verzióját.

  2. A letöltés befejezése után futtassa a telepítőt.

  3. Nyisson meg egy parancssort, és írja be a következőket a Go telepítésének megerősítéséhez:

    go version
    

Egy tároló összes dokumentumának fordítása

  1. Egy konzolablakban (például parancsmag, PowerShell vagy Bash) hozzon létre egy új könyvtárat az alkalmazáshoz, a document-translation-qs nevet, és navigáljon hozzá.

  2. Hozzon létre egy új Go-fájlt document-translation.go néven a document-translation-qs könyvtárban.

  3. Másolja és illessze be a dokumentumfordítási kódmintát a document-translation.go fájlba .

    • Frissítse {your-document-translation-endpoint} és {your-key} használja az Azure Portal Translator-példány értékeit.

    • Frissítse az {your-source-container-SAS-URL}{your-target-container-SAS-URL} Azure Portal Storage-fióktárolók példányának értékeit.

Kódminta

Fontos

Ne felejtse el eltávolítani a kulcsot a kódból, amikor elkészült, és soha ne tegye közzé nyilvánosan. Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. További információ: Azure AI-szolgáltatások biztonsága.

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)
}

A Go-alkalmazás futtatása

Miután hozzáadott egy kódmintát az alkalmazáshoz, a Go-program végrehajtható egy parancsban vagy terminálüzenetben. Győződjön meg arról, hogy a parancssor elérési útja a document-translation-qs mappára van állítva, és használja a következő parancsot:

go run document-translation.go

Sikeres befejezés esetén:

  • A lefordított dokumentumok a céltárolóban találhatók.
  • A sikeres POST metódus egy 202 Accepted válaszkódot ad vissza, amely azt jelzi, hogy a szolgáltatás létrehozta a kötegkérelmet.
  • A POST-kérés válaszfejléceket is visszaad, beleértve Operation-Location a későbbi GET-kérelmekben használt értéket is.

A Java-környezet beállítása

Ebben a rövid útmutatóban a Gradle buildautomatizálási eszközt használjuk az alkalmazás létrehozásához és futtatásához.

  • A Visual Studio Code vagy az előnyben részesített IDE legújabb verziójával kell rendelkeznie. Lásd aJava-t a Visual Studio Code-ban.

    Tipp.

    • A Visual Studio Code a Java kódolási csomagját kínálja Windowshoz és macOS-hez. A kódolási csomag a VS Code, a Java Fejlesztői Készlet (JDK) és a Microsoft által javasolt bővítmények gyűjteménye. A kódolási csomag egy meglévő fejlesztési környezet javításához is használható.
    • Ha a VS Code-ot és a Java kódolási csomagját használja, telepítse a Gradle for Java bővítményt.
  • Ha nem a Visual Studio Code-ot használja, győződjön meg arról, hogy telepítve van a következő a fejlesztői környezetben:

Új Gradle-projekt létrehozása

  1. A konzolablakban (például parancsmag, PowerShell vagy Bash) hozzon létre egy új könyvtárat az alkalmazáshoz, amelyet dokumentumfordításnak hívunk, és navigáljon hozzá.

    mkdir document-translation && document-translation
    
    mkdir document-translation; cd document-translation
    
  2. Futtassa a gradle init parancsot a dokumentumfordítási könyvtárból. Ez a parancs alapvető buildfájlokat hoz létre a Gradle számára, beleértve a build.gradle.kts fájlt is, amelyet futásidőben használnak az alkalmazás létrehozásához és konfigurálásához.

    gradle init --type basic
    
  3. Amikor a rendszer kéri, hogy válasszon egy DSL-t, válassza a Kotlin lehetőséget.

  4. Fogadja el az alapértelmezett projektnevet (dokumentumfordítás) a Return vagy az Enter billentyűkombinációval.

    Feljegyzés

    A teljes alkalmazás létrehozása eltarthat néhány percig, de hamarosan több mappát és fájlt is látnia kell, köztük.build-gradle.kts

  5. Frissítsen build.gradle.kts a következő kóddal:

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")
}

Egy tároló összes dokumentumának fordítása

  1. A dokumentumfordítási könyvtárban futtassa a következő parancsot:

    mkdir -p src/main/java
    

    A parancs a következő könyvtárstruktúrát hozza létre:

    Screenshot: Java directory structure.

  2. Lépjen a java könyvtárra, és hozzon létre egy fájlt.DocumentTranslation.java

    Tipp.

    • Új fájlt a PowerShell használatával hozhat létre.

    • Nyisson meg egy PowerShell-ablakot a projektkönyvtárban a Shift billentyűt lenyomva tartva kattintson a jobb gombbal a mappára.

    • Adja meg a következő parancsot : New-Item DocumentTranslation.java.

    • Létrehozhat egy új fájlt is a névvel ellátott DocumentTranslation.java IDE-ben, és mentheti azt a java könyvtárba.

  3. Másolja és illessze be a dokumentumfordítási kódmintát a DocumentTranslation.java fájlba.

    • Frissítse {your-document-translation-endpoint} és {your-key} használja az Azure Portal Translator-példány értékeit.

    • Frissítse az {your-source-container-SAS-URL}{your-target-container-SAS-URL} Azure Portal Storage-fióktárolók példányának értékeit.

Kódminta

Fontos

Ne felejtse el eltávolítani a kulcsot a kódból, amikor elkészült, és soha ne tegye közzé nyilvánosan. Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. További információ: Azure AI-szolgáltatások biztonsága.

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-alkalmazás létrehozása és futtatása

  • Miután hozzáadott egy kódmintát az alkalmazáshoz, lépjen vissza a fő projektkönyvtárhoz, a dokumentumfordításhoz, nyisson meg egy konzolablakot, és adja meg a következő parancsokat:

    1. Az alkalmazás létrehozása a build következő paranccsal:

      gradle build
      
    2. Futtassa az alkalmazást a run következő paranccsal:

      gradle run
      

Sikeres befejezés esetén:

  • A lefordított dokumentumok a céltárolóban találhatók.
  • A sikeres POST metódus egy 202 Accepted válaszkódot ad vissza, amely azt jelzi, hogy a szolgáltatás létrehozta a kötegkérelmet.
  • A POST-kérés válaszfejléceket is visszaad, beleértve Operation-Location a későbbi GET-kérelmekben használt értéket is.

A Node.js környezet beállítása

Ebben a rövid útmutatóban a Node.js JavaScript futtatókörnyezetet használjuk az alkalmazás létrehozásához és futtatásához.

  1. Ha még nem tette meg, telepítse a Node.js legújabb verzióját. A csomópont Csomagkezelő (npm) része a Node.js telepítésének.

    Tipp.

    Ha még nem ismerkedik a Node.js, próbálja ki a Bevezetés a Node.js Learn modulba.

  2. Egy konzolablakban (például parancsmag, PowerShell vagy Bash) hozzon létre és keresse meg az alkalmazás document-translationúj könyvtárát.

    mkdir document-translation && cd document-translation
    
    mkdir document-translation; cd document-translation
    
  3. Futtassa az npm init parancsot az alkalmazás inicializálásához és a projekt létrehozásához.

    npm init
    
  4. Adja meg a projekt attribútumait a terminálban megjelenő kérések elfogadásával.

    • A legfontosabb attribútumok a név, a verziószám és a belépési pont.
    • Javasoljuk, hogy tartsa meg index.js a belépési pont nevét. A leírás, a tesztparancs, a GitHub-adattár, a kulcsszavak, a szerző és a licencadatok opcionális attribútumok– ezek kihagyhatók ehhez a projekthez.
    • Fogadja el a javaslatokat zárójelben a Return vagy az Enter billentyűkombinációval.
    • Miután befejezte az utasításokat, létrejön egy package.json fájl a dokumentumfordítási könyvtárban.
  5. Az npm használatával telepítse a HTTP-kódtárat és uuid -axioscsomagot a dokumentumfordítási alkalmazás könyvtárába:

    npm install axios uuid
    

Egy tároló összes dokumentumának fordítása

  1. Hozza létre a index.js fájlt az alkalmazáskönyvtárban.

    Tipp.

    • Új fájlt a PowerShell használatával hozhat létre.

    • Nyisson meg egy PowerShell-ablakot a projektkönyvtárban a Shift billentyűt lenyomva tartva kattintson a jobb gombbal a mappára.

    • Adja meg a következő parancsot : New-Item index.js.

    • Létrehozhat egy új fájlt is az IDE-ben, index.js és mentheti a document-translation könyvtárba.

  2. Másolja és illessze be a dokumentumfordítási kódmintát a index.js fájlba.

    • Frissítse {your-document-translation-endpoint} és {your-key} használja az Azure Portal Translator-példány értékeit.

    • Frissítse az {your-source-container-SAS-URL}{your-target-container-SAS-URL} Azure Portal Storage-fióktárolók példányának értékeit.

Kódminta

Fontos

Ne felejtse el eltávolítani a kulcsot a kódból, amikor elkészült, és soha ne tegye közzé nyilvánosan. Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. További információ: Azure AI-szolgáltatások biztonsága.

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-alkalmazás futtatása

Miután hozzáadta a kódmintát az alkalmazáshoz, futtassa a programot:

  1. Keresse meg az alkalmazáskönyvtárat (dokumentumfordítás).

  2. Adja meg és futtassa a következő parancsot a terminálban:

    node index.js
    

Sikeres befejezés esetén:

  • A lefordított dokumentumok a céltárolóban találhatók.
  • A sikeres POST metódus egy 202 Accepted válaszkódot ad vissza, amely azt jelzi, hogy a szolgáltatás létrehozta a kötegkérelmet.
  • A POST-kérés válaszfejléceket is visszaad, beleértve Operation-Location a későbbi GET-kérelmekben használt értéket is.

A Python-projekt beállítása

  1. Ha még nem tette meg, telepítse a Python 3.x legújabb verzióját. A Python telepítőcsomag (pip) része a Python-telepítésnek.

    Tipp.

    Ha még nem ismerkedik a Pythonnal, próbálja ki a Python Learn bevezetési modulját.

  2. Nyisson meg egy terminálablakot, és a pip használatával telepítse a Requests könyvtárat és az uuid0 csomagot:

    pip install requests uuid
    

Egy tároló összes dokumentumának fordítása

  1. Az előnyben részesített szerkesztő vagy IDE használatával hozzon létre egy új könyvtárat az alkalmazáshoz.document-translation

  2. Hozzon létre egy document-translation.py nevű új Python-fájlt a dokumentumfordítási könyvtárban.

  3. Másolja és illessze be a dokumentumfordítási kódmintát a document-translation.py fájlba.

    • Frissítse {your-document-translation-endpoint} és {your-key} használja az Azure Portal Translator-példány értékeit.

    • Frissítse az {your-source-container-SAS-URL}{your-target-container-SAS-URL} Azure Portal Storage-fióktárolók példányának értékeit.

Kódminta

Fontos

Ne felejtse el eltávolítani a kulcsot a kódból, amikor elkészült, és soha ne tegye közzé nyilvánosan. Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. További információ: Azure AI-szolgáltatások biztonsága.

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)

A Python-alkalmazás futtatása

Miután hozzáadott egy kódmintát az alkalmazáshoz, hozza létre és futtassa a programot:

  1. Lépjen a dokumentumfordítási könyvtárra.

  2. Adja meg és futtassa a következő parancsot a konzolon:

    python document-translation.py
    

Sikeres befejezés esetén:

  • A lefordított dokumentumok a céltárolóban találhatók.
  • A sikeres POST metódus egy 202 Accepted válaszkódot ad vissza, amely azt jelzi, hogy a szolgáltatás létrehozta a kötegkérelmet.
  • A POST-kérés válaszfejléceket is visszaad, beleértve Operation-Location a későbbi GET-kérelmekben használt értéket is.

A programozási környezet beállítása

Ebben a rövid útmutatóban a cURL parancssori eszközzel indítunk dokumentumfordítási REST API-hívásokat.

Feljegyzés

A cURL-csomag előre telepítve van a Legtöbb Windows 10-ben és Windows 11-ben, valamint a legtöbb macOS- és Linux-disztribúcióban. A csomag verzióját a következő parancsokkal ellenőrizheti: Windows: curl.exe -V. macOS curl -V Linux: curl --version

Ha a cURL nincs telepítve, az alábbi hivatkozásokat találja a platformhoz:

Dokumentumok fordítása (POST-kérelem)

  1. Az előnyben részesített szerkesztő vagy IDE használatával hozzon létre egy új könyvtárat az alkalmazáshoz.document-translation

  2. Hozzon létre egy document-translation.json nevű új json-fájlt a dokumentumfordítási könyvtárban.

  3. Másolja és illessze be a dokumentumfordítási kérelem mintáját a document-translation.json fájlba. Cserélje le és {your-target-container-SAS-URL} cserélje le {your-source-container-SAS-URL} az Azure Portal Storage-fióktárolók példányának értékeit.

    Minta kérése:

    {
      "inputs":[
        {
          "source":{
            "sourceUrl":"{your-source-container-SAS-URL}"
          },
          "targets":[
            {
              "targetUrl":"{your-target-container-SAS-URL}",
              "language":"fr"
            }
          ]
        }
      ]
    }
    

A POST-kérelem létrehozása és futtatása

A POST-kérelem futtatása előtt cserélje le és {your-key} cserélje le {your-document-translator-endpoint} az Azure Portal Translator-példány értékeit.

Fontos

Ne felejtse el eltávolítani a kulcsot a kódból, amikor elkészült, és soha ne tegye közzé nyilvánosan. Éles környezetben biztonságos módon tárolhatja és érheti el a hitelesítő adatait, például az Azure Key Vaultot. További információ: Azure AI-szolgáltatások biztonsága.

PowerShell

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"

parancssor / terminál

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"

Sikeres befejezés esetén:

  • A lefordított dokumentumok a céltárolóban találhatók.
  • A sikeres POST metódus egy 202 Accepted válaszkódot ad vissza, amely azt jelzi, hogy a szolgáltatás létrehozta a kötegkérelmet.
  • A POST-kérés válaszfejléceket is visszaad, beleértve Operation-Location a későbbi GET-kérelmekben használt értéket is.

Ennyi, gratulálok! Ebben a rövid útmutatóban dokumentumfordítással fordított le egy dokumentumot, miközben megőrizte az eredeti struktúrát és adatformátumot.

Következő lépések