Mit dem Vertex AI Translation-Dienst können Sie Text, der in einer Sprache verfasst ist, in eine der anderen unterstützten Sprachen übersetzen.
Auf dieser Seite wird beschrieben, wie Sie einen Beispieltext mithilfe der Vertex AI Translation API in einer Air-Gap-Umgebung von Google Distributed Cloud (GDC) übersetzen.
Hinweise
Für die Verwendung der Vertex AI Translation API benötigen Sie ein Projekt, für das die Vertex AI Translation API aktiviert ist. Außerdem benötigen Sie 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 translateText
-Methode 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 translateText
-Methode nur den Text zwischen den HTML-Tags, nicht die Tags selbst. Attribute in HTML5-Tags wie alt
-Attribute werden jedoch übersetzt. Ein Beispiel für die Verwendung von HTML5-Tags und -Attributen finden Sie in der Syntax zum Ausschließen von Text aus der Übersetzung.
Die Ausgabe behält die nicht übersetzten HTML-Tags bei und enthält den übersetzten Text zwischen den Tags.
Senden Sie eine curl
-Anfrage an die vortrainierte Vertex AI Translation API. Andernfalls können Sie über ein Python-Skript mit der vorab trainierten Vertex AI Translation API interagieren, um Text aus einer Sprache in eine andere zu übersetzen.
In den folgenden Beispielen wird gezeigt, wie ein Eingabetext von einer Sprache in eine andere übersetzt wird:
curl
So stellen Sie eine curl
-Anfrage:
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 InformationenPROJECT_ID
: Ihre Projekt-ID.SOURCE_LANGUAGE
: der Sprachcode Ihres Eingabetexts. Hier finden Sie eine Liste der unterstützten Sprachen und der entsprechenden Sprachcodes.TARGET_LANGUAGE
: der Sprachcode der Sprache, in die Sie Ihren Text übersetzen möchten. Hier finden Sie eine Liste der unterstützten Sprachen und der entsprechenden Sprachcodes.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"]}'
In der Ausgabe wird der übersetzte Text zurückgegeben.
Python
So verwenden Sie den Vertex AI Translation-Dienst über ein Python-Skript:
Installieren Sie die neueste Version der Vertex AI Translation-Clientbibliothek.
Erforderliche Umgebungsvariablen in einem Python-Skript festlegen
Fügen Sie dem von Ihnen 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 InformationenPROJECT_ID
: Ihre Projekt-ID.SOURCE_LANGUAGE
: der Sprachcode Ihres Eingabetexts. Hier finden Sie eine Liste der unterstützten Sprachen und der entsprechenden Sprachcodes.TARGET_LANGUAGE
: der Sprachcode der Sprache, in die Sie Ihren Text übersetzen möchten. Hier finden Sie eine Liste der unterstützten Sprachen und der entsprechenden Sprachcodes.INPUT_TEXT
: Ihr Eingabetext in der Ausgangssprache.
Verwenden Sie das Feld
mime_type
, um einen Dateityp anzugeben. Legen Sie für das Feldmime_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, isttext/html
der Standardwert.Speichern Sie das Python-Skript.
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
.
Weitere Informationen zur translateText
-Methode finden Sie in der Python-Clientbibliothek.
Text von der Übersetzung ausschließen
Verwenden Sie eines der folgenden HTML-Tags im Feld contents
von Anfragen, um Teile Ihres Textes von der Übersetzung auszuschließen:
<span translate="no">"TEXT"</span>
<span class="notranslate">"TEXT"</span>
Ersetzen Sie TEXT
durch den Text, den Sie von der Übersetzung ausschließen möchten.
Beispiel: Sie haben den folgenden Eingabetext auf Spanisch:
Hola, esto es una prueba.
Dieser Text wird dann ins Englische übersetzt:
Hello, this is a test.
Angenommen, Sie möchten nur den folgenden Teil des Texts übersetzen, wobei Hola,
aus dem Eingabetext ausgeschlossen werden soll:
esto es una prueba.
Dieser Teil des Texts wird im Englischen so übersetzt:
this is a test.
Verwenden Sie die HTML-Tags, um Text von der Übersetzung auszuschließen. Im folgenden curl
-Beispiel wird das <span class="notranslate">"TEXT"</span>
-Tag verwendet, um Hola,
beim Übersetzen des vorherigen Eingabetexts von Spanisch nach Englisch auszuschließen:
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": "es", "target_language_code": "en", "contents": [<span class="notranslate">"Hola,"</span>"esto es una prueba."]}'
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", "contents": ["Hello, this is a test"]}'
Einen Vorgang abrufen
Die Methode getOperation
gibt den letzten Status eines Vorgangs mit langer Ausführungszeit zurück.
Mit dieser Methode können Sie das vom Vertex AI Translation API-Dienst generierte Vorgangsergebnis abrufen. Geben Sie zum Verwenden dieser Methode Ihre Projekt-ID und den Vertex AI Translation-Endpunkt an.
Mit der folgenden Anfrage wird beispielsweise der Status eines Vorgangs mit langer Ausführungszeit, z. B. Erstellen eines Glossars, zurückgegeben, der in Ihrem Projekt ausgeführt wird:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/operations/PROJECT_ID
Vorgänge auflisten
Die Methode listOperations
gibt eine Liste der Vorgänge mit langer Ausführungszeit zurück, die einem angegebenen Filter in der Anfrage entsprechen. Geben Sie zum Verwenden dieser Methode Ihre Projekt-ID und den Vertex AI Translation-Endpunkt an.
Mit der folgenden Anfrage wird beispielsweise die Liste der Vorgänge zurückgegeben, die in Ihrem Projekt ausgeführt werden, und die Seitengröße wird auf zehn Ergebnisse pro Seite begrenzt:
curl
curl -vv -X GET -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID/operations?page_size=10
Unterstützte Sprachen abrufen
Die Methode getSupportedLanguages
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 POST -H "Content-Type: application/json" -H "Authorization: Bearer TOKEN" https://ENDPOINT/v3/projects/PROJECT_ID:getSupportedLanguages -d "{}"
Eine vollständige Liste der unterstützten Sprachen finden Sie unter Unterstützte Sprachen für Vertex AI Translation.