Text übersetzen

Mit dem Vertex AI Translation-Dienst können Sie Text, der in einer Sprache verfasst wurde, in eine beliebige andere unterstützte Sprache übersetzen.

Auf dieser Seite wird beschrieben, wie Sie einen Beispieltext mit der Vertex AI Translation API auf einer Google Distributed Cloud (GDC) Air-Gapped Appliance übersetzen.

Hinweis

Bevor Sie die Vertex AI Translation API verwenden können, benötigen Sie ein Projekt, in dem die Vertex AI Translation API aktiviert ist, und die entsprechenden Anmeldedaten. Sie können auch Clientbibliotheken installieren, um Aufrufe an die API zu ermöglichen. Weitere Informationen finden Sie unter Übersetzungsprojekt einrichten.

Text übersetzen

Die Methode translateText nimmt Eingabetext in einer bestimmten Sprache entgegen und gibt den übersetzten Text in einer anderen Sprache zurück. Sie können Nur-Text oder HTML-Text als Eingabe eingeben.

Wenn Sie HTML-Text eingeben, übersetzt die Methode translateText nur den Text zwischen den HTML-Tags, ohne die Tags zu übersetzen. Attribute in HTML5-Tags wie alt-Attribute werden jedoch übersetzt. Ein Beispiel für die Verwendung von HTML5 Tags und -Attributen wird in der Syntax verwendet, um Text von der Übersetzung auszuschließen. Die Ausgabe behält die nicht übersetzten HTML-Tags bei und enthält den übersetzten Text zwischen ihnen.

Stellen Sie eine curl-Anfrage an die vortrainierte Vertex AI Translation API. Alternativ können Sie über ein Python-Skript mit der vortrainierten Vertex AI Translation API interagieren, um Text von einer Sprache in eine andere zu übersetzen.

In den folgenden Beispielen wird gezeigt, wie Sie einen Eingabetext von einer Sprache in eine andere übersetzen:

curl

Führen Sie die folgenden Schritte aus, um eine curl-Anfrage zu stellen:

  1. Rufen Sie ein Authentifizierungstoken ab.

  2. Stellen Sie die Anfrage:

curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "contents": ["INPUT_TEXT"]}'

Ersetzen Sie Folgendes:

  • TOKEN: das Authentifizierungstoken, das Sie erhalten haben.
  • ENDPOINT: der Vertex AI Translation-Endpunkt, den Sie für Ihre Organisation verwenden. Weitere Informationen finden Sie unter Dienststatus und Endpunkte.
  • PROJECT_ID: Ihre Projekt-ID.
  • SOURCE_LANGUAGE: der Sprachcode Ihres Eingabetexts. Eine Liste der unterstützten Sprachen und ihrer jeweiligen Sprachcodes finden Sie hier.
  • TARGET_LANGUAGE: der Sprachcode, in den Sie Ihren Text übersetzen möchten. Eine Liste der unterstützten Sprachen und ihrer jeweiligen Sprachcodes finden Sie hier.
  • INPUT_TEXT: Ihr Eingabetext in der Ausgangssprache.

Verwenden Sie das Feld mime_type, um einen Dateityp anzugeben. Legen Sie für das Feld mime_type einen der folgenden Werte fest:

  • text/plain: Ihre Eingabe ist Nur-Text.
  • text/html: Ihre Eingabe ist HTML-Text.

Wenn das Feld mime_type leer ist, ist text/html der Standardwert.

Im folgenden Beispiel wird das Feld mime_type verwendet:

curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"mime_type": "text/html", "parent": "projects/PROJECT_ID", "source_language_code": "SOURCE_LANGUAGE", "target_language_code": "TARGET_LANGUAGE", "contents": ["INPUT_TEXT"]}'

Die Ausgabe gibt den übersetzten Text zurück.

Python

Führen Sie die folgenden Schritte aus, um den Vertex AI Translation-Dienst über ein Python-Skript zu verwenden:

  1. Installieren Sie die neueste Version der Vertex AI Translation-Clientbibliothek.

  2. Legen Sie die erforderlichen Umgebungsvariablen in einem Python-Skript fest.

  3. Authentifizieren Sie Ihre API-Anfrage.

  4. Fügen Sie dem erstellten Python-Skript den folgenden Code hinzu:

    from google.cloud import translate
    import google.auth
    from google.auth.transport import requests
    from google.api_core.client_options import ClientOptions
    
    audience = "https://ENDPOINT:443"
    api_endpoint="ENDPOINT:443"
    
    def translate_client(creds):
      opts = ClientOptions(api_endpoint=api_endpoint)
      return translate.TranslationServiceClient(credentials=creds, client_options=opts)
    
    def main():
      creds = None
      try:
        creds, project_id = google.auth.default()
        creds = creds.with_gdch_audience(audience)
        req = requests.Request()
        creds.refresh(req)
        print("Got token: ")
        print(creds.token)
      except Exception as e:
        print("Caught exception" + str(e))
        raise e
      return creds
    
    def translate_func(creds):
      tc = translate_client(creds)
      req = {
        "parent": "projects/PROJECT_ID",
        "source_language_code": "SOURCE_LANGUAGE",
        "target_language_code": "TARGET_LANGUAGE",
        "mime_type": "text/plain",
        "contents": ["INPUT_TEXT"]
      }
    
      resp = tc.translate_text(req)
      print(resp)
    
    if __name__=="__main__":
      creds = main()
      translate_func(creds)
    

    Ersetzen Sie Folgendes:

    • ENDPOINT: der Vertex AI Translation-Endpunkt, den Sie für Ihre Organisation verwenden. Weitere Informationen finden Sie unter Dienststatus und Endpunkte.
    • PROJECT_ID: Ihre Projekt-ID.
    • SOURCE_LANGUAGE: der Sprachcode Ihres Eingabetexts. Eine Liste der unterstützten Sprachen und ihrer jeweiligen Sprachcodes finden Sie hier.
    • TARGET_LANGUAGE: der Sprachcode, in den Sie Ihren Text übersetzen möchten. Eine Liste der unterstützten Sprachen und ihrer jeweiligen Sprachcodes finden Sie hier.
    • INPUT_TEXT: Ihr Eingabetext in der Ausgangssprache.

    Verwenden Sie das Feld mime_type, um einen Dateityp anzugeben. Legen Sie für das Feld mime_type einen der folgenden Werte fest:

    • text/plain: Ihre Eingabe ist Nur-Text.
    • text/html: Ihre Eingabe ist HTML-Text.

    Wenn das Feld mime_type leer ist, ist text/html der Standardwert.

  5. Speichern Sie das Python-Skript.

  6. Führen Sie das Python-Skript aus, um den Text zu übersetzen:

    python SCRIPT_NAME
    

    Ersetzen Sie SCRIPT_NAME durch den Namen, den Sie Ihrem Python-Skript gegeben haben, z. B. translation.py.

Text von der Übersetzung ausschließen

Verwenden Sie eines der folgenden HTML-Tags im Feld contents von Anfragen, um Teile Ihres Texts von der Übersetzung auszuschließen:

  • <span translate="no">"TEXT"</span>
  • <span class="notranslate">"TEXT"</span>

Ersetzen Sie TEXT durch den Teil des Texts, den Sie von der Übersetzung ausschließen möchten.

Wenn Sie beispielsweise den folgenden Eingabetext auf Französisch haben:

Bonjour, c'est un test.

Dann wird dieser Text ins Englische übersetzt:

Hello, this is a test.

Angenommen, Sie möchten nur den folgenden Teil des Texts übersetzen und Bonjour, aus dem Eingabetext ausschließen:

c'est un test.

Dieser Teil des Texts wird ins Englische übersetzt:

this is a test.

Verwenden Sie die HTML-Tags, um Text von der Übersetzung auszuschließen. In der folgenden curl Anfrage wird beispielsweise das <span class="notranslate">"TEXT"</span> Tag verwendet, um Bonjour, aus dem vorherigen Eingabetext auf Französisch auszuschließen, wenn der Text ins Englische übersetzt wird:

curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:translateText -d '{"parent": "projects/PROJECT_ID", "source_language_code": "fr", "target_language_code": "en", "contents": ["<span class=\"notranslate\">\"Bonjour,\"</span>\"c'est un test.\""]}'

Sprache erkennen

Die Methode detectLanguage gibt die Sprache eines Textstrings zurück, indem sie eine HTTP-Anfrage sendet.

Mit der folgenden Anfrage wird beispielsweise Englisch als Sprache des Eingabetexts Hello, this is a test erkannt:

curl

curl -vv -X POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:detectLanguage -d '{"parent": "projects/PROJECT_ID", "content": "Hello, this is a test"}'

Unterstützte Sprachen abrufen

Die Methode supportedLanguages gibt die Liste der Sprachen zurück, die von der Vertex AI Translation API unterstützt werden.

Mit der folgenden Anfrage werden beispielsweise die unterstützten Sprachen zurückgegeben, indem der Vertex AI Translation-Endpunkt angegeben wird:

curl

curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/locations/PROJECT_ID/supportedLanguages

Eine vollständige Liste der unterstützten Sprachen finden Sie unter Unterstützte Sprachen für Vertex AI Translation.