1. Übersicht

Die Translation API bietet eine einfache programmatische Schnittstelle zur dynamischen Übersetzung eines beliebigen Strings in eine unterstützte Sprache mithilfe modernster neuronaler maschineller Übersetzung. Sie kann auch verwendet werden, um eine Sprache zu erkennen, wenn die Ausgangssprache unbekannt ist.
In dieser Anleitung verwenden Sie die Translation API mit Python. Dazu gehören das Auflisten verfügbarer Sprachen, das Übersetzen von Text und das Erkennen der Sprache eines bestimmten Texts.
Lerninhalte
- Umgebung einrichten
- Verfügbare Sprachen auflisten
- Text übersetzen
- Sprachen erkennen
Voraussetzungen
Umfrage
Wie werden Sie diese Anleitung verwenden?
Wie würden Sie Ihre Erfahrung mit Python bewerten?
Wie würden Sie Ihre Erfahrungen mit Google Cloud-Diensten bewerten?
2. Einrichtung und Anforderungen
Umgebung zum selbstbestimmten Lernen einrichten
- Melden Sie sich in der Google Cloud Console an und erstellen Sie ein neues Projekt oder verwenden Sie ein vorhandenes. Wenn Sie noch kein Gmail- oder Google Workspace-Konto haben, müssen Sie eines erstellen.



- Der Projektname ist der Anzeigename für die Teilnehmer dieses Projekts. Es handelt sich um einen String, der nicht von Google APIs verwendet wird. Sie können sie jederzeit aktualisieren.
- Die Projekt-ID ist für alle Google Cloud-Projekte eindeutig und unveränderlich (kann nach dem Festlegen nicht mehr geändert werden). In der Cloud Console wird automatisch ein eindeutiger String generiert. Normalerweise ist es nicht wichtig, wie dieser String aussieht. In den meisten Codelabs müssen Sie auf Ihre Projekt-ID verweisen (in der Regel als
PROJECT_IDangegeben). Wenn Ihnen die generierte ID nicht gefällt, können Sie eine andere zufällige ID generieren. Alternativ können Sie es mit einem eigenen Namen versuchen und sehen, ob er verfügbar ist. Sie kann nach diesem Schritt nicht mehr geändert werden und bleibt für die Dauer des Projekts bestehen. - Zur Information: Es gibt einen dritten Wert, die Projektnummer, die von einigen APIs verwendet wird. Weitere Informationen zu diesen drei Werten
- Als Nächstes müssen Sie die Abrechnung in der Cloud Console aktivieren, um Cloud-Ressourcen/-APIs zu verwenden. Die Durchführung dieses Codelabs kostet wenig oder gar nichts. Wenn Sie Ressourcen herunterfahren möchten, um Kosten zu vermeiden, die über diese Anleitung hinausgehen, können Sie die erstellten Ressourcen oder das Projekt löschen. Neue Google Cloud-Nutzer können am kostenlosen Testzeitraum mit einem Guthaben von 300$ teilnehmen.
Cloud Shell starten
Während Sie Google Cloud von Ihrem Laptop aus per Fernzugriff nutzen können, wird in diesem Codelab Cloud Shell verwendet, eine Befehlszeilenumgebung, die in der Cloud ausgeführt wird.
Cloud Shell aktivieren
- Klicken Sie in der Cloud Console auf Cloud Shell aktivieren
.

Wenn Sie die Cloud Shell zum ersten Mal starten, wird ein Fenster mit einer Beschreibung eingeblendet. Klicken Sie in diesem Fall einfach auf Weiter.

Das Herstellen der Verbindung mit der Cloud Shell sollte nur wenige Augenblicke dauern.

Auf dieser virtuellen Maschine sind alle erforderlichen Entwicklungstools installiert. Sie bietet ein Basisverzeichnis mit 5 GB nichtflüchtigem Speicher und läuft in Google Cloud, was die Netzwerkleistung und Authentifizierung erheblich verbessert. Die meisten, wenn nicht sogar alle Aufgaben in diesem Codelab können mit einem Browser erledigt werden.
Sobald die Verbindung mit der Cloud Shell hergestellt ist, sehen Sie, dass Sie authentifiziert sind und für das Projekt Ihre Projekt-ID eingestellt ist.
- Führen Sie in der Cloud Shell den folgenden Befehl aus, um zu prüfen, ob Sie authentifiziert sind:
gcloud auth list
Befehlsausgabe
Credentialed Accounts
ACTIVE ACCOUNT
* <my_account>@<my_domain.com>
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- Führen Sie den folgenden Befehl in Cloud Shell aus, um zu bestätigen, dass der gcloud-Befehl Ihr Projekt kennt:
gcloud config list project
Befehlsausgabe
[core] project = <PROJECT_ID>
Ist dies nicht der Fall, können Sie die Einstellung mit diesem Befehl vornehmen:
gcloud config set project <PROJECT_ID>
Befehlsausgabe
Updated property [core/project].
3. Umgebung einrichten
Bevor Sie die Translation API verwenden können, müssen Sie die API in Cloud Shell mit dem folgenden Befehl aktivieren:
gcloud services enable translate.googleapis.com
Auf dem Bildschirm sollte Folgendes zu sehen sein:
Operation "operations/..." finished successfully.
Jetzt können Sie die Translation API verwenden.
Legen Sie die folgende Umgebungsvariable fest (zur Verwendung in Ihrer Anwendung):
export PROJECT_ID=$(gcloud config get-value core/project)
echo "PROJECT_ID: $PROJECT_ID"
Wechseln Sie zu Ihrem Basisverzeichnis:
cd ~
Erstellen Sie eine virtuelle Python-Umgebung, um die Abhängigkeiten zu isolieren:
virtualenv venv-translate
Aktivieren Sie die virtuelle Umgebung:
source venv-translate/bin/activate
Installieren Sie IPython und die Translation API-Clientbibliothek:
pip install ipython google-cloud-translate
Auf dem Bildschirm sollte Folgendes zu sehen sein:
... Installing collected packages: ..., ipython, google-cloud-translate Successfully installed ... google-cloud-translate-3.16.0 ...
Jetzt können Sie die Clientbibliothek für die Translation API verwenden.
In den nächsten Schritten verwenden Sie einen interaktiven Python-Interpreter namens IPython, den Sie im vorherigen Schritt installiert haben. Starten Sie eine Sitzung, indem Sie ipython in Cloud Shell ausführen:
ipython
Auf dem Bildschirm sollte Folgendes zu sehen sein:
Python 3.10.12 (main, Jul 29 2024, 16:56:48) [GCC 11.4.0] Type 'copyright', 'credits' or 'license' for more information IPython 8.27.0 -- An enhanced Interactive Python. Type '?' for help. In [1]:
Kopieren Sie den folgenden Code in Ihre IPython-Sitzung:
from os import environ
from google.cloud import translate
PROJECT_ID = environ.get("PROJECT_ID", "")
assert PROJECT_ID
PARENT = f"projects/{PROJECT_ID}"
Sie können jetzt Ihre erste Anfrage stellen und die unterstützten Sprachen auflisten…
4. Verfügbare Sprachen auflisten
In diesem Abschnitt listen Sie alle in der Translation API verfügbaren Sprachen auf.
Wenn Sie die verfügbaren Sprachen auflisten möchten, kopieren Sie den folgenden Code in Ihre IPython-Sitzung:
def print_supported_languages(display_language_code: str):
client = translate.TranslationServiceClient()
response = client.get_supported_languages(
parent=PARENT,
display_language_code=display_language_code,
)
languages = response.languages
print(f" Languages: {len(languages)} ".center(60, "-"))
for language in languages:
language_code = language.language_code
display_name = language.display_name
print(f"{language_code:10}{display_name}")
Funktion aufrufen:
print_supported_languages("en")
Die Ausgabe sollte etwa so aussehen:
---------------------- Languages: 137 ---------------------- af Afrikaans sq Albanian am Amharic ar Arabic hy Armenian ... cy Welsh xh Xhosa yi Yiddish yo Yoruba zu Zulu
Das sind die Vorteile der französischen Sprache der Benutzeroberfläche:
print_supported_languages("fr")
Sie sollten dieselbe Liste erhalten, sortiert nach den französischen Namen, ähnlich wie unten:
---------------------- Languages: 137 ---------------------- af Afrikaans sq Albanais de Allemand am Amharique en Anglais ... vi Vietnamien xh Xhosa yi Yiddish yo Yoruba zu Zoulou
Sie können es mit einem anderen Sprachcode versuchen.
Zusammenfassung
In diesem Schritt konnten Sie alle verfügbaren Sprachen in der Translation API auflisten. Eine vollständige Liste der unterstützten Sprachen finden Sie auf der Seite Sprachunterstützung.
5. Text übersetzen
Mit der Translation API können Sie Text von einer Sprache in eine andere übersetzen. Text wird mit dem NMÜ-Modell (neuronale maschinelle Übersetzung) übersetzt. Wenn das NMÜ-Modell für das angeforderte Sprachenpaar nicht unterstützt wird, kommt das PBMT-Modell (Phrase-Based Machine Translation) zum Einsatz. Weitere Informationen zu Google Übersetzer und den Übersetzungsmodellen finden Sie im Beitrag zur NMÜ.
Kopieren Sie den folgenden Code in Ihre IPython-Sitzung, um Text zu übersetzen:
def translate_text(text: str, target_language_code: str) -> translate.Translation:
client = translate.TranslationServiceClient()
response = client.translate_text(
parent=PARENT,
contents=[text],
target_language_code=target_language_code,
)
return response.translations[0]
Rufen Sie die Funktion auf, um denselben Text in verschiedene Sprachen zu übersetzen:
text = "Hello World!"
target_languages = ["tr", "de", "es", "it", "el", "zh", "ja", "ko"]
print(f" {text} ".center(50, "-"))
for target_language in target_languages:
translation = translate_text(text, target_language)
source_language = translation.detected_language_code
translated_text = translation.translated_text
print(f"{source_language} → {target_language} : {translated_text}")
Sie sollten Folgendes erhalten:
------------------ Hello World! ------------------ en → tr : Selam Dünya! en → de : Hallo Welt! en → es : ¡Hola Mundo! en → it : Ciao mondo! en → el : Γεια σου Κόσμο! en → zh : 你好世界! en → ja : 「こんにちは世界」 en → ko : 안녕하세요!
Zusammenfassung
In diesem Schritt haben Sie die Translation API verwendet, um Text in mehrere Sprachen zu übersetzen. Weitere Informationen zum Übersetzen von Text
6. Sprachen erkennen
Sie können die Translation API auch verwenden, um die Sprache eines Textstrings zu erkennen.
Kopieren Sie den folgenden Code in Ihre IPython-Sitzung:
def detect_language(text: str) -> translate.DetectedLanguage:
client = translate.TranslationServiceClient()
response = client.detect_language(parent=PARENT, content=text)
return response.languages[0]
Rufen Sie die Funktion auf, um die Sprache verschiedener Sätze zu erkennen:
sentences = [
"Selam Dünya!",
"Hallo Welt!",
"¡Hola Mundo!",
"Ciao mondo!",
"Γεια σου Κόσμο!",
"你好世界!",
"「こんにちは世界」",
"안녕하세요!",
]
for sentence in sentences:
language = detect_language(sentence)
confidence = language.confidence
language_code = language.language_code
print(
f"Confidence: {confidence:4.0%}",
f"Language: {language_code:5}",
sentence,
sep=" | ",
)
Sie sollten Folgendes erhalten:
Confidence: 100% | Language: tr | Selam Dünya! Confidence: 81% | Language: de | Hallo Welt! Confidence: 100% | Language: es | ¡Hola Mundo! Confidence: 100% | Language: it | Ciao mondo! Confidence: 100% | Language: el | Γεια σου Κόσμο! Confidence: 100% | Language: zh-CN | 你好世界! Confidence: 100% | Language: ja | 「こんにちは世界」 Confidence: 100% | Language: ko | 안녕하세요!
Zusammenfassung
In diesem Schritt haben Sie die Sprache eines Textabschnitts mithilfe der Translation API erkannt. Weitere Informationen zum Erkennen von Sprachen
7. Glückwunsch!

Sie haben gelernt, wie Sie die Translation API mit Python verwenden.
Aufräumen
So bereinigen Sie Ihre Entwicklungsumgebung über Cloud Shell:
- Wenn Sie sich noch in Ihrer IPython-Sitzung befinden, kehren Sie zur Shell zurück:
exit - Beenden Sie die Verwendung der virtuellen Python-Umgebung:
deactivate - Löschen Sie den Ordner für die virtuelle Umgebung:
cd ~ ; rm -rf ./venv-translate
So löschen Sie Ihr Google Cloud-Projekt über Cloud Shell:
- Rufen Sie Ihre aktuelle Projekt-ID ab:
PROJECT_ID=$(gcloud config get-value core/project) - Prüfen Sie, ob dies das Projekt ist, das Sie löschen möchten:
echo $PROJECT_ID - Projekt löschen:
gcloud projects delete $PROJECT_ID
Weitere Informationen
- Cloud Translation-Dokumentation: https://cloud.google.com/translate/docs
- Python in Google Cloud: https://cloud.google.com/python
- Cloud-Clientbibliotheken für Python: https://github.com/googleapis/google-cloud-python
Lizenz
Dieser Text ist mit einer Creative Commons Attribution 2.0 Generic License lizenziert.