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:
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:
Installieren Sie die neueste Version der Vertex AI Translation-Clientbibliothek.
Legen Sie die erforderlichen Umgebungsvariablen in einem Python-Skript fest.
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 Feldmime_typeeinen der folgenden Werte fest:text/plain: Ihre Eingabe ist Nur-Text.text/html: Ihre Eingabe ist HTML-Text.
Wenn das Feld
mime_typeleer ist, isttext/htmlder Standardwert.Speichern Sie das Python-Skript.
Führen Sie das Python-Skript aus, um den Text zu übersetzen:
python SCRIPT_NAMEErsetzen Sie
SCRIPT_NAMEdurch 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.