Text übersetzen

Auf dieser Seite wird beschrieben, wie Sie Beispieltext mit den Basic- und Advanced-Versionen von Cloud Translation übersetzen. Sie bieten Zugriff auf das standardmäßige NMÜ-Modell (Neuronale Maschinelle Übersetzung) und das Translation LLM, unser aktuelles LLM-Übersetzungsmodell.

Die Cloud Translation Basic API bietet einen einfachen, direkten Zugriff auf diese Modelle. Cloud Translation Advanced ist hingegen für die personalisierte Anpassung und für Anwendungsfälle mit Inhalten im Langformat optimiert. Beispielcode finden Sie im Beispiel für die erweiterte Textübersetzung. In besonderen Situationen können Sie mit Cloud Translation Advanced auch benutzerdefinierte Modelle erstellen.

Cloud Translation - Advanced bietet auch erweiterte Funktionen für die Textübersetzung, z. B. Dokumentübersetzung und Glossarerstellung, damit Ihre fachspezifische Terminologie korrekt übersetzt wird.

Hinweis

Bevor Sie die Cloud Translation API verwenden können, sollten Sie die Seite Cloud Translation einrichten aufrufen. Dort wird beschrieben, wie Sie ein Projekt erstellen, die Cloud Translation API aktivieren und die Authentifizierung einrichten. Auf der Einrichtungsseite finden Sie auch eine optionale Anleitung zum Installieren von Clientbibliotheken für gängige Programmiersprachen.

Translation LLM mit der Cloud Translation – Basic API

Wenn Sie das Standardmodell Translation LLM in der Cloud Translation Basic API verwenden möchten, übergeben Sie den vollständigen Ressourcennamen im Parameter model.

curl -X POST \
     -H "Content-Type: application/json; charset=utf-8" \
     -d '{
       "q": ["The old lighthouse stood on the edge of the cliff."],
       "target": "es",
       "model": "projects/PROJECT_ID/locations/REGION_NAME/models/general/translation-llm"
     }' \
     "https://translation.googleapis.com/language/translate/v2?key=YOUR_API_KEY"

Die Cloud Translation Basic API unterstützt nur Standard-NMT- und Standard-LLM-Modelle, keine benutzerdefinierten Modelle. Wenn Sie ein benutzerdefiniertes Modell oder andere erweiterte Funktionen wie die Dokumentübersetzung oder Glossare verwenden möchten, nutzen Sie Cloud Translation Advanced. Weitere Informationen zum Aufrufen der Basic API finden Sie unter Beispiel für die einfache Textübersetzung.

Erweiterte Textübersetzung

Die Eingabedaten für Übersetzungen mit Cloud Translation Advanced können im Format „Nur-Text“ oder „HTML“ vorliegen. Die Cloud Translation API übersetzt keine HTML-Tags in der Eingabe, sondern nur Text, der zwischen den Tags angezeigt wird. Die Ausgabe behält die (nicht übersetzten) HTML-Tags mit dem übersetzten Text zwischen den Tags bei, soweit es aufgrund der Unterschiede zwischen der Ausgangs- und der Zielsprache möglich ist.

Beispiel für die erweiterte Textübersetzung

REST

Zum Übersetzen von Text senden Sie eine POST-Anfrage, deren Anfragetext im JSON-Format die zu übersetzende Quellsprache (source_language_code), die Zielsprache (target_language_code) und den zu übersetzenden Text (contents) enthält. Sie können auch mehrere zu übersetzende Textstrings senden, indem Sie diese in den JSON-Text einfügen (siehe Beispiel). Die Quell- und Zielsprachen werden mit ihren jeweiligen ISO-639-Codes angegeben.

Das folgende Beispiel zeigt eine POST-Anfrage, für die curl oder PowerShell verwendet wurde. Im Beispiel wird das Zugriffstoken für ein Dienstkonto verwendet, das mit der Google CloudGoogle Cloud CLI für das Projekt eingerichtet wurde. Eine Anleitung zum Installieren der Google Cloud CLI, zum Einrichten eines Projekts mit einem Dienstkonto und zum Abrufen eines Zugriffstokens finden Sie auf der Seite Einrichtung.

Ersetzen Sie die folgenden Werte, bevor die Anfragedaten verwendet werden:

  • PROJECT_NUMBER_OR_ID: Die numerische oder alphanumerische ID Ihres Projekts von Google Cloud

HTTP-Methode und URL:

POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID:translateText

JSON-Text anfordern:

{
  "sourceLanguageCode": "en",
  "targetLanguageCode": "ru",
  "contents": ["Dr. Watson, come here!", "Bring me some coffee!"]
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

{
  "translations": [
    {
      "translatedText": "Доктор Ватсон, иди сюда!",
    },
    {
      "translatedText": "Принеси мне кофе!",
    }
  ]
}

Das Array translations enthält zwei translatedText-Felder mit Übersetzungen in der angeforderten targetLanguageCode-Sprache (ru: Russisch). Die Übersetzungen werden in der gleichen Reihenfolge aufgeführt wie das entsprechende Quellarray in der Anfrage.

Go

Folgen Sie den Einrichtungshinweisen für Go in der Cloud Translation-Kurzanleitung zur Verwendung von Clientbibliotheken, bevor Sie dieses Beispiel ausprobieren. Weitere Informationen finden Sie in der API-Referenzdokumentation zu Cloud Translation Go.

Richten Sie die Standardanmeldedaten für Anwendungen ein, um sich bei Cloud Translation zu authentifizieren. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

// Imports the Google Cloud Translation library
import (
	"context"
	"fmt"
	"io"

	translate "cloud.google.com/go/translate/apiv3"
	"cloud.google.com/go/translate/apiv3/translatepb"
)

func translateText(w io.Writer, projectID string, sourceLang string, targetLang string, text string) error {
	// projectID := "your-project-id"
	// sourceLang := "en-US"
	// targetLang := "fr"
	// text := "Text you wish to translate"

	// Instantiates a client
	ctx := context.Background()
	client, err := translate.NewTranslationClient(ctx)
	if err != nil {
		return fmt.Errorf("NewTranslationClient: %w", err)
	}
	defer client.Close()

	// Construct request
	req := &translatepb.TranslateTextRequest{
		Parent:             fmt.Sprintf("projects/%s/locations/global", projectID),