Erste Schritte bei der Dokumentübersetzung

Die Dokumentübersetzung ist ein cloudbasiertes Feature des Azure KI Übersetzer-Diensts, das asynchron vollständige Dokumente in unterstützte Sprachen und verschiedene Dateiformate übersetzt. In diesem Schnellstart erfahren Sie, wie Sie die Dokumentübersetzung mit einer Programmiersprache Ihrer Wahl nutzen, um ein Quelldokument in eine Zielsprache zu übersetzen und dabei Struktur und Textformatierung beizubehalten.

Voraussetzungen

Wichtig

  • Java- und JavaScript-SDKs für die Dokumentübersetzung sind derzeit in der öffentlichen Vorschauversion verfügbar. Features, Ansätze und Prozesse können sich aufgrund von Benutzerfeedback vor der Release für die allgemeinen Verfügbarkeit (General Availability, GA) noch ändern.

  • C#- und Python-SDKs sind Releases für die allgemeine Verfügbarkeit (General Availability, GA), die für die Verwendung in Ihren Produktionsanwendungen bereit sind

  • Die Dokumentübersetzung wird derzeit nur für die Übersetzer-Ressource (einzelner Dienst) unterstützt und ist nicht in der Azure KI Services-Ressource (mehrere Dienste) enthalten.

  • Die Dokumentübersetzung wird nur im Diensttarif „S1 Standard“ (nutzungsbasierte Bezahlung) oder im Tarif „D3 Volume Discount“ (Volumenrabatt) unterstützt. Weitere Informationen finden Sie unterPreise für Azure KI Services – Übersetzer.

Zunächst benötigen Sie Folgendes:

  • Ein aktives Azure-Konto. Falls Sie noch kein Konto haben, können Sie ein kostenloses Konto erstellen.

  • Ein Azure Blob Storage-Konto. Für Ihre Quell- und Zieldateien müssen Sie in Ihrem Azure Blob Storage-Konto auch Container erstellen:

    • Quellcontainer: In diesen Container laden Sie Ihre Dateien für die Übersetzung hoch (erforderlich).
    • Zielcontainer: In diesem Container werden Ihre übersetzten Dateien gespeichert (erforderlich).
  • Eine Textübersetzungsressource in Form eines einzelnen Diensts (keine Azure KI Services-Ressource mit mehreren Diensten):

    Füllen Sie die Felder zu Projekt- und Instanzdetails für die Textübersetzung wie folgt aus:

    1. Abonnement: Wählen Sie eines Ihrer verfügbaren Azure-Abonnements aus.

    2. Ressourcengruppe: Sie können eine neue Ressourcengruppe erstellen oder Ihre Ressource zu einer bereits vorhandenen Ressourcengruppe hinzufügen, die denselben Lebenszyklus, dieselben Berechtigungen und dieselben Richtlinien aufweist.

    3. Ressourcenregion: Wählen Sie die Option Global aus, es sei denn, Ihr Unternehmen oder Ihre Anwendung erfordert eine spezifische Region. Wenn Sie planen, eine systemseitig zugewiesene verwaltete Identität für die Authentifizierung zu verwenden, wählen Sie eine geografische Region wie USA, Westen aus.

    4. Name: Geben Sie den Namen ein, den Sie für Ihre Ressource ausgewählt haben. Der ausgewählte Name muss innerhalb von Azure eindeutig sein.

      Hinweis

      Die Dokumentübersetzung erfordert einen benutzerdefinierten Domänenendpunkt. Der Wert, den Sie in das Feld „Name“ eingeben, ist der benutzerdefinierte Domänennamenparameter für Ihren Endpunkt.

    5. Tarif: Die Dokumentübersetzung wird im Free-Tarif nicht unterstützt. Wählen Sie den Tarif „Standard S1“ aus, um den Dienst zu testen.

    6. Klicken Sie auf Überprüfen + erstellen.

    7. Lesen Sie die Nutzungsbedingungen, und klicken Sie auf Erstellen, um Ihre Ressource bereitzustellen.

    8. Nachdem die Ressource erfolgreich bereitgestellt wurde, wählen Sie Zu Ressource wechseln aus.

Abrufen des Schlüssels und des Endpunkts der Dokumentübersetzung

* Für Anforderungen an den Übersetzungsdienst benötigen Sie einen schreibgeschützten Schlüssel und einen benutzerdefinierten Endpunkt zur Authentifizierung des Zugriffs. Der Endpunkt einer benutzerdefinierten Domäne ist eine URL, die mit Ihrem Ressourcennamen, Hostnamen und den Unterverzeichnissen für die Textübersetzung formatiert ist. Die URL ist im Azure-Portal verfügbar.

  1. Wählen Sie Zu Ressource wechseln aus, nachdem eine von Ihnen erstellte neue Ressource bereitgestellt wurde. Navigieren Sie direkt zu Ihrer Ressourcenseite, falls Sie über eine vorhandene Ressource für die Dokumentübersetzung verfügen.

  2. Klicken Sie in der linken Schiene unter Ressourcenverwaltung auf Schlüssel und Endpunkt.

  3. Sie können key und document translation endpoint kopieren und in die Codebeispiele einfügen, um Ihre Anforderung an den Dokumentübersetzungsdienst zu authentifizieren. Für einen API-Aufruf ist nur ein Schlüssel erforderlich.

    Screenshot showing the get your key field in Azure portal.

Erstellen von Azure Blob Storage-Containern

Für Quell- und Zieldateien müssen Sie in Ihrem Azure Blob Storage-KontoContainer erstellen.

  • Quellcontainer: In diesen Container laden Sie Ihre Dateien für die Übersetzung hoch (erforderlich).
  • Zielcontainer: In diesem Container werden Ihre übersetzten Dateien gespeichert (erforderlich).

Erforderliche Authentifizierung

Die URLs sourceUrl, targetUrl und glossaryUrl (optional) müssen ein SAS-Token (Shared Access Signature) enthalten, das als Abfragezeichenfolge angefügt ist. Das Token kann Ihrem Container oder bestimmten Blobs zugewiesen sein. SieheErstellen von SAS-Token für die Verarbeitung der Dokumentübersetzung.

  • Ihr Quellcontainer oder Blob muss über Zugriff vom Typ Lesen und Auflisten verfügen.
  • Ihr Zielcontainer oder Blob muss über Zugriff vom Typ Schreiben und Auflisten verfügen.
  • Ihr Glossarblob muss über Zugriff vom Typ Lesen und Auflisten verfügen.

Tipp

  • Falls Sie mehrere Dateien (Blobs) während eines Vorgangs übersetzen, sollten Sie den SAS-Zugriff auf Containerebene delegieren.
  • Falls Sie nur eine Datei (Blob) während eines Vorgangs übersetzen, sollten Sie den SAS-Zugriff auf Blobebene delegieren.
  • Als Alternative zu SAS-Token können Sie eine systemseitig zugewiesene verwaltete Identität Identität für die Authentifizierung verwenden.

Beispieldokument

Für dieses Projekt benötigen Sie ein Quelldokument, das in Ihren Quellcontainer hochgeladen wurde. Für diesen Schnellstart können Sie unser Beispieldokument für die Dokumentübersetzung herunterladen. Die Quellsprache ist Englisch.

Einrichten Ihrer C#/.NET-Umgebung

In diesem Schnellstart nutzen wir die neueste Version der Visual Studio-IDE, um die Anwendung zu erstellen und auszuführen.

  1. Starten Sie Visual Studio.

  2. Wählen Sie auf der Seite Erste Schritte die Option „Neues Projekt erstellen“ aus.

    Screenshot of Visual Studio 2022 get started window.

  3. Geben Sie auf der Seite Neues Projekt erstellen im Suchfeld den Suchbegriff Konsole ein. Wählen Sie die Vorlage Konsolenanwendung und dann Weiter aus.

    Screenshot of Visual Studio 2022 create new project page.

  4. Geben Sie im Dialogfeld Neues Projekt konfigurieren im Feld für den Projektnamen den Namen document-translation-qs ein. Klicken Sie dann auf Weiter.

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

  5. Wählen Sie im Dialogfenster Zusätzliche Informationen die Option .NET 6.0 (Langzeitunterstützung), und wählen Sie dann Erstellen.

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

Newtonsoft.Json installieren

  1. Klicken Sie mit der rechten Maustaste auf Ihr Projekt document-translation-qs, und wählen Sie NuGet-Pakete verwalten... aus.

    Screenshot of select NuGet package window in Visual Studio.

  2. Wählen Sie die Registerkarte „Durchsuchen“ aus, und geben Sie NewtonsoftJson ein.

    Screenshot of select prerelease NuGet package in Visual Studio.

  3. Wählen Sie im Dropdownmenü die neueste stabile Version aus, und installieren Sie das Paket in Ihrem Projekt.

    Screenshot of install selected NuGet package window.

Übersetzen aller Dokumente in einem Speichercontainer

Hinweis

  • Ab .NET 6 erzeugen neue Projekte, die die Vorlage console verwenden, einen neuen Programmstil, der sich von früheren Versionen unterscheidet.
  • Die neue Ausgabe verwendet aktuelle C#-Funktionen, die den zu schreibenden Code vereinfachen.
  • Wenn Sie die neuere Version verwenden, müssen Sie nur den Text der Main-Methode schreiben. Sie müssen keine Top-Level-Anweisungen, globale Nutzungsanweisungen oder indirekte Nutzungsanweisungen einfügen.
  • Weitere Informationen finden Sie unter Neue C#-Vorlagen generieren Anweisungen auf oberster Ebene.
  1. Öffnen Sie die Datei Program.cs.

  2. Löschen Sie den bereits vorhandenen Code, einschließlich der Zeile Console.WriteLine("Hello World!").

  3. Kopieren Sie das Codebeispiel für die Dokumentübersetzung, und fügen Sie es in die Datei „Program.cs“ ein.

    • Aktualisieren Sie {your-document-translation-endpoint} und {your-key} mit den Werten Ihrer Translator-Instanz aus dem Azure-Portal.

    • Aktualisieren Sie {your-source-container-SAS-URL} und {your-target-container-SAS-URL} mit den Werten Ihrer Speicherkontocontainer-Instanz aus dem Azure-Portal.

Codebeispiel

Wichtig

Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie Azure Key Vault. Weitere Informationen finden Sie unter Azure KI Services-Sicherheit.

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

        }

    }

}

Ausführen der Anwendung

Nachdem Sie Ihrer Anwendung ein Codebeispiel hinzugefügt haben, klicken Sie auf die grüne Schaltfläche Start neben document-translation-qs, um Ihr Programm zu erstellen und auszuführen. Alternativ können Sie auch F5 drücken.

Screenshot: run your Visual Studio program.

Nach erfolgreichem Abschluss:

  • Die übersetzten Dokumente befinden sich in Ihrem Zielcontainer.
  • Bei erfolgreicher Ausführung gibt die POST-Methode den Antwortcode 202 Accepted zurück, der anzeigt, dass die Batch-Anforderung vom Dienst erstellt wurde.
  • Die POST-Anfrage gibt außerdem Antwortheader zurück, unter anderem Operation-Location. Dieser Header stellt einen Wert bereit, der in nachfolgenden GET-Anforderungen verwendet wird.

Einrichten Ihrer Go-Umgebung

Zum Schreiben von Go-Anwendungen können Sie einen beliebigen Text-Editor verwenden. Es empfiehlt sich, die neueste Version von Visual Studio Code und die Go-Erweiterung zu verwenden.

Tipp

Wenn Sie gerade erst in Go einsteigen, befassen Sie sich mit dem Learn-Modul Erste Schritte mit Go.

Sofern nicht bereits geschehen, laden Sie Go herunter, und installieren Sie es.

  1. Laden Sie die Go-Version für Ihr Betriebssystem herunter.

  2. Führen Sie das Installationsprogramm aus, nachdem der Download abgeschlossen ist.

  3. Öffnen Sie eine Eingabeaufforderung, und geben Sie Folgendes ein, um zu bestätigen, dass Go installiert wurde:

    go version
    

Übersetzen aller Dokumente in einem Speichercontainer

  1. Erstellen Sie in einem Konsolenfenster (z. B. cmd, PowerShell oder Bash) ein neues Verzeichnis namens document-translation-qs für Ihre App, und navigieren Sie zu diesem Verzeichnis.

  2. Erstellen Sie eine neue Go-Datei namens document-translation.go im Verzeichnis document-translation-qs.

  3. Kopieren Sie das Codebeispiel für die Dokumentübersetzung, und fügen Sie es in Ihre Datei document-translation.go ein.

    • Aktualisieren Sie {your-document-translation-endpoint} und {your-key} mit den Werten Ihrer Translator-Instanz aus dem Azure-Portal.

    • Aktualisieren Sie {your-source-container-SAS-URL} und {your-target-container-SAS-URL} mit den Werten Ihrer Speicherkontocontainer-Instanz aus dem Azure-Portal.

Codebeispiel

Wichtig

Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie Azure Key Vault. Weitere Informationen finden Sie unter Azure KI Services-Sicherheit.

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

Ausführen Ihrer Go-Anwendung

Nachdem Sie Ihrer Anwendung ein Codebeispiel hinzugefügt haben, kann Ihr Go-Programm an einer Eingabeaufforderung oder einer Terminalaufforderung ausgeführt werden. Vergewissern Sie sich, dass der Pfad Ihrer Eingabeaufforderung auf den Ordner document-translation-qs festgelegt ist, und verwenden Sie den folgenden Befehl:

go run document-translation.go

Nach erfolgreichem Abschluss:

  • Die übersetzten Dokumente befinden sich in Ihrem Zielcontainer.
  • Bei erfolgreicher Ausführung gibt die POST-Methode den Antwortcode 202 Accepted zurück, der anzeigt, dass die Batch-Anforderung vom Dienst erstellt wurde.
  • Die POST-Anfrage gibt außerdem Antwortheader zurück, unter anderem Operation-Location. Dieser Header stellt einen Wert bereit, der in nachfolgenden GET-Anforderungen verwendet wird.

Einrichten Ihrer Java-Umgebung

In diesem Schnellstart verwenden wir das Buildautomatisierungstool Gradle, um die Anwendung zu erstellen und auszuführen.

  • Sie sollten die aktuelle Version von Visual Studio Code oder Ihrer bevorzugten IDE verwenden. Verwenden in Visual Studio Code.

    Tipp

    • Visual Studio Code bietet ein Coding Pack für Java für Windows und macOS. Das Coding Pack ist ein Paket aus VS Code, dem Java Development Kit (JDK) und einer Sammlung vorgeschlagener Erweiterungen von Microsoft. Das Coding Pack kann auch verwendet werden, um eine vorhandene Entwicklungsumgebung zu korrigieren.
    • Wenn Sie VS Code Code Pack für Java verwenden, installieren Sie die Erweiterung Gradle für Java.
  • Wenn Sie nicht Visual Studio Code verwenden, stellen Sie sicher, dass Folgendes in Ihrer Entwicklungsumgebung installiert ist:

Erstellen eines neuen Gradle-Projekts

  1. Erstellen Sie in einem Konsolenfenster (z. B. cmd, PowerShell oder Bash) ein neues Verzeichnis namens document-translation für Ihre App, und navigieren Sie zu diesem Verzeichnis.

    mkdir document-translation && document-translation
    
    mkdir document-translation; cd document-translation
    
  2. Führen Sie den Befehl gradle init aus dem Verzeichnis „document-translation“ aus. Mit diesem Befehl werden grundlegende Builddateien für Gradle erstellt, u. a. die Datei build.gradle.kts. Diese Datei wird zur Laufzeit zum Erstellen und Konfigurieren Ihrer Anwendung verwendet.

    gradle init --type basic
    
  3. Wenn Sie zur Auswahl einer DSL aufgefordert werden, wählen Sie Kotlin aus.

  4. Übernehmen Sie den standardmäßigen Projektnamen (document-translation), indem Sie die RETURN- oder EINGABETASTE betätigen.

    Hinweis

    Es kann ein paar Minuten dauern, bis die gesamte Anwendung erstellt wurde, aber schon nach kurzer Zeit sollten verschiedene Ordner und Dateien angezeigt werden, darunter build-gradle.kts.

  5. Aktualisieren Sie build.gradle.kts mit folgendem Code:

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

Übersetzen aller Dokumente in einem Speichercontainer

  1. Führen Sie im Verzeichnis „document-translation“ den folgenden Befehl aus:

    mkdir -p src/main/java
    

    Der Befehl erstellt die folgende Verzeichnisstruktur:

    Screenshot: Java directory structure.

  2. Navigieren Sie zum java-Verzeichnis, und erstellen Sie eine Datei namens DocumentTranslation.java.

    Tipp

    • Sie können eine neue Datei mithilfe von PowerShell erstellen.

    • Öffnen Sie ein PowerShell-Fenster in Ihrem Projektverzeichnis, indem Sie die UMSCHALTTASTE gedrückt halten und mit der rechten Maustaste auf den Ordner klicken.

    • Geben Sie den folgenden Befehl New-Item DocumentTranslation.java ein.

    • Sie können auch eine neue Datei in Ihrer IDE mit dem Namen DocumentTranslation.java erstellen und sie im Verzeichnis java speichern.

  3. Kopieren Sie das Codebeispiel für die Dokumentübersetzung, und fügen Sie es in Ihre Datei DocumentTranslation.java ein.

    • Aktualisieren Sie {your-document-translation-endpoint} und {your-key} mit den Werten Ihrer Translator-Instanz aus dem Azure-Portal.

    • Aktualisieren Sie {your-source-container-SAS-URL} und {your-target-container-SAS-URL} mit den Werten Ihrer Speicherkontocontainer-Instanz aus dem Azure-Portal.

Codebeispiel

Wichtig

Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie Azure Key Vault. Weitere Informationen finden Sie unter Azure KI Services-Sicherheit.

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

Erstellen und Ausführen der Java-Anwendung

  • Nachdem Sie Ihrer Anwendung ein Codebeispiel hinzugefügt haben, navigieren Sie zu Ihrem Hauptprojektverzeichnis zurück – document-translation –, öffnen Sie ein Konsolenfenster, und geben Sie die folgenden Befehle ein:

    1. Erstellen Sie Ihre Anwendung mit dem Befehl build:

      gradle build
      
    2. Führen Sie Ihre Anwendung mit dem Befehl run aus:

      gradle run
      

Nach erfolgreichem Abschluss:

  • Die übersetzten Dokumente befinden sich in Ihrem Zielcontainer.
  • Bei erfolgreicher Ausführung gibt die POST-Methode den Antwortcode 202 Accepted zurück, der anzeigt, dass die Batch-Anforderung vom Dienst erstellt wurde.
  • Die POST-Anfrage gibt außerdem Antwortheader zurück, unter anderem Operation-Location. Dieser Header stellt einen Wert bereit, der in nachfolgenden GET-Anforderungen verwendet wird.

Einrichten der Node.js-Umgebung

In dieser Schnellstartanleitung verwenden wir die Node.js JavaScript-Laufzeitumgebung, um die Anwendung zu erstellen und auszuführen.

  1. Wenn dies noch nicht geschehen ist, installieren Sie die neueste Version von Node.js. Der Node Package Manager (npm) ist in der Node.js-Installation enthalten.

    Tipp

    Wenn Sie neu in Node.js einsteigen, sehen Sie sich das Learn-Modul Einführung in Node.js an.

  2. Erstellen Sie in einem Konsolenfenster (etwa der Eingabeaufforderung, PowerShell oder Bash) ein neues Verzeichnis für Ihre App mit dem Namen document-translation, und navigieren Sie zu ihm.

    mkdir document-translation && cd document-translation
    
    mkdir document-translation; cd document-translation
    
  3. Führen Sie den npm-init-Befehl aus, um die Anwendung zu initialisieren und das Gerüst für Ihr Projekt zu erstellen.

    npm init
    
  4. Geben Sie die Attribute Ihres Projekts an, indem Sie die im Terminal angezeigten Eingabeaufforderungen akzeptieren.

    • Die wichtigsten Attribute sind Name, Versionsnummer und Einstiegspunkt.
    • Es wird empfohlen, index.js den Namen des Einstiegspunkts zu behalten. Beschreibung, Testbefehl, GitHub-Repository, Schlüsselwörter, Autor und Lizenzinformationen sind optionale Attribute, die Sie für dieses Projekt überspringen können.
    • Akzeptieren Sie die Vorschläge in Klammern, indem Sie Zurückgeben oder eingebenauswählen.
    • Nachdem Sie die Eingabeaufforderungen abgeschlossen haben, wird in Ihrem Verzeichnis „document-translation“ eine Datei package.json erstellt.
  5. Verwenden Sie npm, um die HTTP-Bibliothek axios und das Paket uuid in Ihrem App-Verzeichnis „document-translation“ zu installieren:

    npm install axios uuid
    

Übersetzen aller Dokumente in einem Speichercontainer

  1. Öffnen Sie die Datei index.js im App-Verzeichnis.

    Tipp

    • Sie können eine neue Datei mithilfe von PowerShell erstellen.

    • Öffnen Sie ein PowerShell-Fenster in Ihrem Projektverzeichnis, indem Sie die UMSCHALTTASTE gedrückt halten und mit der rechten Maustaste auf den Ordner klicken.

    • Geben Sie den folgenden Befehl New-Item index.js ein.

    • Sie können auch eine neue Datei mit dem Namen index.js in Ihrer IDE erstellen und sie im Verzeichnis document-translation speichern.

  2. Kopieren Sie das Codebeispiel für die Dokumentübersetzung, und fügen Sie es in Ihre Datei index.js ein.

    • Aktualisieren Sie {your-document-translation-endpoint} und {your-key} mit den Werten Ihrer Translator-Instanz aus dem Azure-Portal.

    • Aktualisieren Sie {your-source-container-SAS-URL} und {your-target-container-SAS-URL} mit den Werten Ihrer Speicherkontocontainer-Instanz aus dem Azure-Portal.

Codebeispiel

Wichtig

Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie Azure Key Vault. Weitere Informationen finden Sie unter Azure KI Services-Sicherheit.

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

Ausführen der JavaScript-Anwendung

Nachdem Sie Ihrer Anwendung ein Codebeispiel hinzugefügt haben, führen Sie Ihr Programm aus:

  1. Navigieren Sie zu Ihrem Anwendungsverzeichnis (document-translation).

  2. Geben Sie den folgenden Befehl in Ihrem Terminal ein, und führen Sie ihn aus:

    node index.js
    

Nach erfolgreichem Abschluss:

  • Die übersetzten Dokumente befinden sich in Ihrem Zielcontainer.
  • Bei erfolgreicher Ausführung gibt die POST-Methode den Antwortcode 202 Accepted zurück, der anzeigt, dass die Batch-Anforderung vom Dienst erstellt wurde.
  • Die POST-Anfrage gibt außerdem Antwortheader zurück, unter anderem Operation-Location. Dieser Header stellt einen Wert bereit, der in nachfolgenden GET-Anforderungen verwendet wird.

Einrichten Ihres Python-Projekts

  1. Wenn dies noch nicht geschehen ist, installieren Sie die neueste Version von Python 3.x. Das Python-Installerpaket (pip) ist in der Python-Installation enthalten.

    Tipp

    Wenn Sie neu in Python einsteigen, sehen Sie sich das Learn-Modul Einführung in Python an.

  2. Öffnen Sie ein Terminalfenster, und verwenden Sie pip, um die Anforderungsbibliothek und das uuid0-Paket zu installieren:

    pip install requests uuid
    

Übersetzen aller Dokumente in einem Speichercontainer

  1. Erstellen Sie mit Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE ein neues Verzeichnis namens document-translation für Ihre App.

  2. Erstellen Sie eine neue Python-Datei namens document-translation.py in Ihrem Verzeichnis document-translation.

  3. Kopieren Sie das Codebeispiel für die Dokumentübersetzung, und fügen Sie es in Ihre Datei document-translation.py ein.

    • Aktualisieren Sie {your-document-translation-endpoint} und {your-key} mit den Werten Ihrer Translator-Instanz aus dem Azure-Portal.

    • Aktualisieren Sie {your-source-container-SAS-URL} und {your-target-container-SAS-URL} mit den Werten Ihrer Speicherkontocontainer-Instanz aus dem Azure-Portal.

Codebeispiel

Wichtig

Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie Azure Key Vault. Weitere Informationen finden Sie unter Azure KI Services-Sicherheit.

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)

Ausführen der Python-Anwendung

Nachdem Sie Ihrer Anwendung ein Codebeispiel hinzugefügt haben, erstellen Sie Ihr Programm und führen es aus:

  1. Navigieren Sie zu Ihrem Verzeichnis document-translation.

  2. Geben Sie den folgenden Befehl in Ihrer Konsole ein, und führen Sie ihn aus:

    python document-translation.py
    

Nach erfolgreichem Abschluss:

  • Die übersetzten Dokumente befinden sich in Ihrem Zielcontainer.
  • Bei erfolgreicher Ausführung gibt die POST-Methode den Antwortcode 202 Accepted zurück, der anzeigt, dass die Batch-Anforderung vom Dienst erstellt wurde.
  • Die POST-Anfrage gibt außerdem Antwortheader zurück, unter anderem Operation-Location. Dieser Header stellt einen Wert bereit, der in nachfolgenden GET-Anforderungen verwendet wird.

Einrichten Ihrer Programmierumgebung

In dieser Schnellstartanleitung verwenden wir das Befehlszeilentool cURL, um REST-API-Aufrufe für die Dokumentübersetzung auszuführen.

Hinweis

Das cURL-Paket ist in den meisten Windows 10- und Windows 11-Versionen sowie den meisten macOS- und Linux-Distributionen vorinstalliert. Sie können die Paketversion anhand der folgenden Befehle überprüfen: Windows: curl.exe -V, macOS curl -V Linux: curl --version

Wenn cURL nicht installiert ist, finden Sie hier Links für Ihre Plattform:

Übersetzen von Dokumenten (POST-Anforderung)

  1. Erstellen Sie mit Ihrem bevorzugten Editor oder Ihrer bevorzugten IDE ein neues Verzeichnis namens document-translation für Ihre App.

  2. Erstellen Sie eine neue JSON-Datei namens document-translation.json in Ihrem Verzeichnis document-translation.

  3. Kopieren Sie das Anforderungsbeispiel für die Dokumentübersetzung, und fügen Sie es in Ihre Datei document-translation.json ein. Ersetzen Sie {your-source-container-SAS-URL} und {your-target-container-SAS-URL} durch die Werte Ihrer Speicherkontocontainer-Instanz aus dem Azure-Portal.

    **Request sample**

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

Erstellen und Ausführen der POST-Anforderung

Ersetzen Sie vor dem Ausführen der POST-Anforderung {your-document-translator-endpoint} und {your-key} durch die Werte Ihrer Translator-Instanz aus dem Azure-Portal.

Wichtig

Denken Sie daran, den Schlüssel aus Ihrem Code zu entfernen, wenn Sie fertig sind, und ihn niemals zu veröffentlichen. Verwenden Sie für die Produktion eine sichere Art der Speicherung und des Zugriffs auf Ihre Anmeldeinformationen wie Azure Key Vault. Weitere Informationen finden Sie unter Azure KI Services-Sicherheit.

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"

Eingabeaufforderung/Terminal

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"

Nach erfolgreichem Abschluss:

  • Die übersetzten Dokumente befinden sich in Ihrem Zielcontainer.
  • Bei erfolgreicher Ausführung gibt die POST-Methode den Antwortcode 202 Accepted zurück, der anzeigt, dass die Batch-Anforderung vom Dienst erstellt wurde.
  • Die POST-Anfrage gibt außerdem Antwortheader zurück, unter anderem Operation-Location. Dieser Header stellt einen Wert bereit, der in nachfolgenden GET-Anforderungen verwendet wird.

Das war's, herzlichen Glückwunsch! In dieser Schnellstartanleitung haben Sie mithilfe der Dokumentübersetzung ein Dokument übersetzt und dabei die ursprüngliche Struktur sowie das ursprüngliche Datenformat beibehalten.

Nächste Schritte