Cloud-Clientbibliotheken in Cloud Code verwenden
Auf dieser Seite wird der schnelle Einstieg in Cloud-Clientbibliotheken und Cloud Code beschrieben. Sie richten eine neue Kubernetes-Anwendung mit einer Hello World-Beispielanwendung ein und aktualisieren dann die Anwendung so, dass die Cloud Translation API zum Übersetzen der Antwort ins Spanische verwendet wird.
Hinweise
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Google Kubernetes Engine and Cloud Translation APIs aktivieren.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Google Kubernetes Engine and Cloud Translation APIs aktivieren.
- Installieren Sie Git, damit Cloud Code Git-Vorgänge wie das Klonen eines Beispiels ausführen kann.
- Installieren Sie das Cloud Code-Plug-in, falls noch nicht geschehen.
Anwendung erstellen
- Führen Sie in der Befehlspalette (
Cmd
/Ctrl
+Shift
+P
) Cloud Code: Neue Anwendung aus, wählen Sie Kubernetes-Anwendung und dann eine Hello World-Anwendung in der von Ihnen bevorzugten Sprache aus. Wählen Sie beispielsweise Node.js: Hello World aus, um eine Node.js-Startanwendung "Hello World" zu erstellen. - Speichern Sie die neue Anwendung. In einer Benachrichtigung wird bestätigt, dass Ihre Anwendung erstellt wurde, und die Anwendung wird in einem neuen Fenster geöffnet.
Anmeldedaten einrichten
Klicken Sie zum Öffnen eines Terminals auf Terminal > Neues Terminal.
Erstellen Sie ein Dienstkonto zur Authentifizierung Ihrer API-Anfragen:
gcloud iam service-accounts create \ translation-quickstart \ --project PROJECT_ID
Weisen Sie dem Dienstkonto die Rolle „Cloud Translation API-Nutzer“ zu:
gcloud projects \ add-iam-policy-binding \ PROJECT_ID \ --member='serviceAccount:translation-quickstart@PROJECT_ID.iam.gserviceaccount.com' \ --role='roles/cloudtranslate.user'
Erstellen Sie einen Dienstkontoschlüssel:
gcloud iam service-accounts keys \ create key.json --iam-account \ translation-quickstart@PROJECT_ID.iam.gserviceaccount.com
Legen Sie den Schlüssel als Standardanmeldedaten fest:
export \ GOOGLE_APPLICATION_CREDENTIALS=key.json
Cloud Translation API über Ihre Anwendung aufrufen
Einfach loslegen (Go)
Installieren Sie die Cloud-Clientbibliotheken für die Cloud Translation API:
- Klicken Sie zum Öffnen eines Terminals auf Terminal > Neues Terminal.
Führen Sie dazu diesen Befehl aus:
go get cloud.google.com/go/translate/apiv3
Erstellen Sie eine
app.go
-Datei.Öffnen Sie
app.go
und fügen Sie den Paketnamen, die Importe und das App-Basisgerüst hinzu:package main import ( "context" "fmt" translate "cloud.google.com/go/translate/apiv3" translatepb "google.golang.org/genproto/googleapis/cloud/translate/v3" ) func translateText(w io.Writer, projectID string, sourceLang string, targetLang string, text string) error { } func main() { }
Fügen Sie der Funktion
translateText()
den folgenden Code hinzu, der den angegebenen Text übersetzt. Wählen Sie File > Save (Datei > Speichern) aus, um den Code neu zu formatieren:ctx := context.Background() client, err := translate.NewTranslationClient(ctx) if err != nil { return fmt.Errorf("NewTranslationClient: %v", err) } defer client.Close() req := &translatepb.TranslateTextRequest{ Parent: fmt.Sprintf("projects/%s/locations/global", projectID), SourceLanguageCode: sourceLang, TargetLanguageCode: targetLang, MimeType: "text/plain", // Mime types: "text/plain", "text/html" Contents: []string{text}, } resp, err := client.TranslateText(ctx, req) if err != nil { return fmt.Errorf("TranslateText: %v", err) } // Display the translation for each input text provided for _, translation := range resp.GetTranslations() { fmt.Fprintf(w, "Translated text: %v\n", translation.GetTranslatedText()) } return nil
Rufen Sie in der
main()
-FunktiontranslateText()
auf. Die folgenden Parameterwerte werden vom Englischen ins Spanische übersetzt:projectID := "<var>PROJECT_ID</var>" sourceLang := "en-US" targetLang := "es" text := "Text to translate" err := translateText(os.Stdout, projectID, sourceLang, targetLang, text) if err != nil { fmt.Print(err) }
Führen Sie die Anwendung im Terminal aus.
go run app.go
Java
Öffnen Sie
pom.xml
und fügen Sie das folgende Code-Snippet in den Abschnittdependencies
ein:<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-translate</artifactId> </dependency> </dependencies>
Fügen Sie dann in der Datei
pom.xml
das folgende Code-Snippet in den AbschnittdependencyManagement
ein:<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>libraries-bom</artifactId> <version>26.39.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
Achten Sie darauf, dass Sie die neueste Version der von Google Cloud unterstützten Bibliotheken verwenden. Eine Liste der Versionen finden Sie unter Von Google Cloud unterstützte Bibliotheken.
Wenn Sie gefragt werden, ob Sie den Java-Klassenpfad/die Java-Konfiguration synchronisieren möchten, klicken Sie auf Always (Immer).
Erstellen Sie eine Datei mit dem Namen
app.java
.Fügen Sie in
app.java
die folgenden Importe nach der Paketdefinition ein:import com.google.cloud.translate.v3.LocationName; import com.google.cloud.translate.v3.TranslateTextRequest; import com.google.cloud.translate.v3.TranslateTextResponse; import com.google.cloud.translate.v3.Translation; import com.google.cloud.translate.v3.TranslationServiceClient; import java.io.IOException;
Fügen Sie der Klasse
App
die MethodetranslateText()
hinzu. Diese Methode legt Variablen fest und übergibt sie an eine überlastetetranslateText()
-Methode. Die folgenden Parameterwerte übersetzen die englische Sprache ins Spanische:public static void translateText() throws IOException { String projectId = "<walkthrough-project-id/>"; String targetLanguage = "es"; String text = "Hello world!"; translateText(projectId, targetLanguage, text); }
Fügen Sie eine überlastete
translateText()
-Methode hinzu. Bei dieser Methode wird Text in die Zielsprache übersetzt.public static void translateText(String projectId, String targetLanguage, String text) throws IOException { try (TranslationServiceClient client = TranslationServiceClient.create()) { LocationName parent = LocationName.of(projectId, "global"); TranslateTextRequest request = TranslateTextRequest.newBuilder() .setParent(parent.toString()) .setMimeType("text/plain") .setTargetLanguageCode(targetLanguage) .addContents(text) .build(); TranslateTextResponse response = client.translateText(request); // Display the translation for each input text provided for (Translation translation : response.getTranslationsList()) { System.out.printf("Translated text: %s\n", translation.getTranslatedText()); } } }
Ersetzen Sie die print-Anweisung in
main
durch einen Aufruf vontranslateText()
:try { translateText(); } catch (IOException e) { e.printStackTrace(); }
Node.js
Installieren Sie die Cloud-Clientbibliotheken für die Cloud Translation API:
- Klicken Sie auf
Cloud Code und maximieren Sie dann Cloud APIs Explorer.
- Maximieren Sie Cloud AI und klicken Sie dann auf Cloud Translation API.
- Klicken Sie zum Installieren der Clientbibliothek auf NodeJS und dann auf play_arrow
Im Terminal ausführen.
- Klicken Sie auf
Erstellen Sie in Ihrem Projekt eine
app.js
-Datei.Öffnen Sie
app.js
und importieren Sie die Translation-Clientbibliothek am Anfang der Datei:const {TranslationServiceClient} = require('@google-cloud/translate');
Erstellen Sie einen Translation API-Client und fügen Sie Variablen für die Projekt-ID, den Standort und den zu übersetzenden Text hinzu:
// Instantiates a client const translationClient = new TranslationServiceClient(); const projectId = 'PROJECT_ID'; const location = 'global'; const text = 'Hello, world!';
Fügen Sie die folgende
async
-Funktion hinzu, die die Sprache desHello, world!
-Textes erkennt und den Text ins Spanische übersetzt:async function translateText() { // Construct request const request = { parent: `projects/PROJECT_ID/locations/LOCATION`, contents: [text], mimeType: 'text/plain', // mime types: text/plain, text/html sourceLanguageCode: 'en', targetLanguageCode: 'es', }; // Run request const [response] = await translationClient.translateText(request); for (const translation of response.translations) { console.log(`Translation: ${translation.translatedText}`); } }
Rufen Sie am Ende der Datei
app.js
translateText()
auf:translateText();
Öffnen Sie zum Ausführen Ihrer Anwendung die Befehlspalette (drücken Sie
Ctrl
/Cmd
+Shift
+P
) und führen Sie dann Cloud Code: Run on Kubernetes aus.Nachdem die Anwendung bereitgestellt wurde, können Sie den laufenden Dienst aufrufen. Öffnen Sie dazu die in der webview angezeigte URL.
Python
Installieren Sie die Cloud-Clientbibliotheken für die Cloud Translation API:
- Klicken Sie auf
Cloud Code und maximieren Sie dann Cloud APIs Explorer.
- Maximieren Sie Cloud AI und klicken Sie dann auf Cloud Translation API.
- Klicken Sie zum Installieren der Clientbibliothek auf Python und dann auf play_arrow
Im Terminal ausführen.
Hinweis: Wenn du ein Linux-basiertes Betriebssystem wie Chromebook verwendest, ändere den Befehl so, dasspip3
anstelle vonpip
verwendet wird. Wenn Sie einen Mac verwenden, überarbeiten Sie den Befehl, umpip3
zu verwenden, und fügen Sie das Flag--user
hinzu.
- Klicken Sie auf
Erstellen Sie in Ihrem Projekt eine
app.py
-Datei.Importieren Sie in
app.py
die Clientbibliothek am Anfang der Datei:from google.cloud import translate
Fügen Sie die Funktion
translate_text
hinzu. Dadurch wird ein Client für die Interaktion mit der Cloud Translation API initialisiert.def translate_text(text="Hello, world!", project_id="PROJECT_ID"): client = translate.TranslationServiceClient() location = "global" parent = "projects/PROJECT_ID/locations/LOCATION"
Fügen Sie in der Funktion
translate_text
den folgenden Aufruf zu den Cloud-Clientbibliotheken der Cloud Translation API hinzu, um Text vom Englischen ins Spanische zu übersetzen und das Ergebnis auszugeben:response = client.translate_text( request={ "parent": parent, "contents": [text], "mime_type": "text/plain", "source_language_code": "en-US", "target_language_code": "es", } ) for translation in response.translations: print("Translated text: {}".format(translation.translated_text))
Rufen Sie am Ende von
app.py
translate_text()
auf.translate_text()
Öffnen Sie zum Ausführen Ihrer Anwendung die Befehlspalette (drücken Sie
Ctrl
/Cmd
+Shift
+P
) und führen Sie dann Cloud Code: Run on Kubernetes aus.Nachdem die Anwendung bereitgestellt wurde, können Sie den laufenden Dienst aufrufen. Öffnen Sie dazu die in der webview angezeigte URL.
Bereinigen
Nachdem Sie die Anwendung beendet haben, werden alle während der Ausführung bereitgestellten Kubernetes-Ressourcen automatisch gelöscht.
Löschen Sie das Projekt oder den von Ihnen erstellten Cluster, wenn Sie das Projekt wiederverwenden möchten, damit Ihrem Konto keine anderen in dieser Kurzanleitung verwendeten Ressourcen in Rechnung gestellt werden.
So löschen Sie den Cluster:
- Halten Sie im Kubernetes Explorer bei Ihrem Clusternamen an und klicken Sie dann auf open_in_new In Google Cloud Console öffnen.
- Klicken Sie auf Löschen und dann noch einmal auf Löschen.
So löschen Sie Ihr Projekt und die zugehörigen Ressourcen, einschließlich der Cluster:
- Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.
Support anfragen
Wenn Sie Feedback geben möchten, können Sie Probleme auf GitHub melden oder eine Frage in Stack Overflow stellen.Nächste Schritte
- Weitere Informationen zur Cloud Translation API
- Cloud-Clientbibliotheken
- Weitere Informationen zu Cloud Code for VS Code