Cloud-Clientbibliotheken in Cloud Code verwenden

Auf dieser Seite erhalten Sie einen schnellen Einstieg in Cloud-Clientbibliotheken und Cloud Code. Sie richten eine neue Kubernetes-Anwendung mithilfe einer „Hello World“-Beispielanwendung ein und aktualisieren dann die Anwendung, um die Antwort mit der Cloud Translation API ins Spanische zu übersetzen.

Hinweise

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Google Kubernetes Engine and Cloud Translation APIs aktivieren.

    Aktivieren Sie die APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Google Kubernetes Engine and Cloud Translation APIs aktivieren.

    Aktivieren Sie die APIs

  8. Installieren Sie Git, damit Cloud Code Git-Vorgänge wie das Klonen eines Beispiels ausführen kann.
  9. Installieren Sie das Cloud Code-Plug-in, falls noch nicht geschehen.

Anwendung erstellen

  1. Führen Sie in der Befehlspalette (Cmd/Ctrl + Shift + P) Cloud Code: New Application aus, wählen Sie Kubernetes-Anwendung und dann eine Hello World-Anwendung in Ihrer bevorzugten Sprache aus. Wählen Sie beispielsweise Node.js: Hello World aus, um eine Node.js-Startanwendung „Hello World“ zu erstellen.
  2. Speichern Sie die neue Anwendung. In einer Benachrichtigung wird bestätigt, dass Ihre Anwendung erstellt wurde, und Ihre Anwendung wird in einem neuen Fenster geöffnet.

Anmeldedaten einrichten

  1. Klicken Sie auf Terminal > Neues Terminal, um ein Terminal zu öffnen.

  2. Erstellen Sie ein Dienstkonto zur Authentifizierung Ihrer API-Anfragen:

    gcloud iam service-accounts create \
    translation-quickstart \
    --project PROJECT_ID
    
  3. 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'
    
  4. Erstellen Sie einen Dienstkontoschlüssel:

    gcloud iam service-accounts keys \
    create key.json --iam-account \
    translation-quickstart@PROJECT_ID.iam.gserviceaccount.com
    
  5. Legen Sie den Schlüssel als Standardanmeldedaten fest:

    export \
     GOOGLE_APPLICATION_CREDENTIALS=key.json
    

Cloud Translation API aus Ihrer Anwendung aufrufen

Einfach loslegen (Go)

  1. Installieren Sie die Cloud-Clientbibliotheken der Cloud Translation API:

    1. Klicken Sie auf Terminal > Neues Terminal, um ein Terminal zu öffnen.
    2. Führen Sie dazu diesen Befehl aus:

      go get cloud.google.com/go/translate/apiv3
      
  2. Erstellen Sie eine app.go-Datei.

  3. Öffnen Sie app.go und fügen Sie den Paketnamen, die Importe und das App-Skelett 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() {
    
    }
    
  4. 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
    
  5. Rufen Sie in der main()-Funktion translateText() auf. Die folgenden Parameterwerte übersetzen Englisch ins Spanische:

    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)
    }
    
  6. Führen Sie die Anwendung über das Terminal aus.

    go run app.go
    

Java

  1. Öffnen Sie pom.xml und fügen Sie dem Abschnitt dependencies das folgende Code-Snippet hinzu:

    <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>
    
  2. Fügen Sie dann in der Datei pom.xml im Abschnitt dependencyManagement das folgende Code-Snippet hinzu:

    <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.

  3. Wenn Sie gefragt werden, ob Sie den Java-Klassenpfad bzw. die Java-Konfiguration synchronisieren möchten, klicken Sie auf Immer.

  4. Erstellen Sie eine Datei mit dem Namen app.java.

  5. Fügen Sie in app.java nach der Paketdefinition die folgenden Importe 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;
    
  6. Fügen Sie der Klasse App die Methode translateText() hinzu. Diese Methode legt Variablen fest und übergibt sie an eine überlastete translateText()-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);
    }
    
  7. 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());
        }
      }
    }
    
  8. Ersetzen Sie die print-Anweisung in main durch einen Aufruf von translateText():

    try {
      translateText();
    }
    catch (IOException e) {
      e.printStackTrace();
    }
    

Node.js

  1. Installieren Sie die Cloud-Clientbibliotheken der Cloud Translation API:

    1. Klicken Sie auf Cloud Code und maximieren Sie dann den Cloud APIs Explorer.
    2. Maximieren Sie Cloud AI und klicken Sie dann auf Cloud Translation API.
    3. Klicken Sie zum Installieren der Clientbibliothek auf NodeJS und dann auf play_arrow Im Terminal ausführen.
  2. Erstellen Sie eine app.js-Datei in Ihrem Projekt.

  3. Öffnen Sie app.js und importieren Sie die Translation-Clientbibliothek am Anfang der Datei:

    const {TranslationServiceClient} = require('@google-cloud/translate');
    
  4. Erstellen Sie einen Translation API-Client und fügen Sie Variablen für Ihre Projekt-ID, den Speicherort und den zu übersetzenden Text hinzu:

    // Instantiates a client
    const translationClient = new TranslationServiceClient();
    
    const projectId = 'PROJECT_ID';
    const location = 'global';
    const text = 'Hello, world!';
    
  5. Fügen Sie die folgende async-Funktion hinzu, die die Sprache des Hello, world!-Texts 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}`);
        }
    }
    
  6. Rufen Sie am Ende der Datei app.js translateText() auf:

    translateText();
    
  7. Öffnen Sie zum Ausführen der Anwendung die Befehlspalette (drücken Sie Ctrl/Cmd + Shift + P) und führen Sie dann Cloud Code: Run on Kubernetes aus.

  8. Nachdem die Anwendung bereitgestellt wurde, können Sie sich den laufenden Dienst ansehen. Öffnen Sie dazu die in der webview angezeigte URL.

Python

  1. Installieren Sie die Cloud-Clientbibliotheken der Cloud Translation API:

    1. Klicken Sie auf Cloud Code und maximieren Sie dann den Cloud APIs Explorer.
    2. Maximieren Sie Cloud AI und klicken Sie dann auf Cloud Translation API.
    3. Klicken Sie zum Installieren der Clientbibliothek auf Python und dann auf play_arrow Im Terminal ausführen.
      Hinweis: Wenn du ein Linux-basiertes Betriebssystem verwendest, einschließlich Chromebook, ändere den Befehl so, dass pip3 anstelle von pip verwendet wird. Wenn Sie einen Mac verwenden, überarbeiten Sie den Befehl zur Verwendung von pip3 und fügen Sie das Flag --user hinzu.
  2. Erstellen Sie eine app.py-Datei in Ihrem Projekt.

  3. Importieren Sie in app.py die Clientbibliothek am Anfang der Datei:

    from google.cloud import translate
    
  4. 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"
    
  5. Fügen Sie den folgenden Aufruf zu den Cloud-Clientbibliotheken der Cloud Translation API in der Funktion translate_text hinzu, um Text aus dem 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))
    
  6. Rufe am Ende von „app.pytranslate_text() an.

    translate_text()
    
  7. Öffnen Sie zum Ausführen der Anwendung die Befehlspalette (drücken Sie Ctrl/Cmd + Shift + P) und führen Sie dann Cloud Code: Run on Kubernetes aus.

  8. Nachdem die Anwendung bereitgestellt wurde, können Sie sich den laufenden Dienst ansehen. Ö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.

Damit Ihrem Konto keine Gebühren für andere in dieser Kurzanleitung verwendete Ressourcen in Rechnung gestellt werden, müssen Sie das Projekt löschen bzw. den von Ihnen erstellten Cluster löschen, wenn Sie das Projekt wiederverwenden möchten.

So löschen Sie den Cluster:

  1. Halten Sie im Kubernetes Explorer bei Ihrem Clusternamen an und klicken Sie dann auf open_in_new In Google Cloud Console öffnen.
  2. 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:

  1. Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
  3. 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