Menggunakan Library Klien Cloud di Cloud Code

Halaman ini menunjukkan cara memulai dengan cepat Library Klien Cloud dan Cloud Code. Anda akan menyiapkan aplikasi Kubernetes baru menggunakan aplikasi contoh Hello World, lalu memperbarui aplikasi untuk menggunakan Cloud Translation API guna menerjemahkan respons ke dalam bahasa Spanyol.

Sebelum memulai

  1. In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.

    Go to project selector

  2. Make sure that billing is enabled for your Trusted Cloud project.

  3. Enable the Google Kubernetes Engine and Cloud Translation APIs.

    Enable the APIs

  4. Instal Git agar Cloud Code dapat melakukan operasi Git, seperti meng-clone contoh.
  5. Instal plugin Cloud Code jika Anda belum melakukannya.

Membuat aplikasi

  1. Dari palet perintah (Cmd/Ctrl+Shift+P), jalankan Cloud Code: New Application, pilih Kubernetes Application, lalu pilih aplikasi Hello World dalam bahasa yang Anda inginkan. Misalnya, pilih Node.js: Hello World untuk membuat aplikasi Node.js Hello World pemula.
  2. Simpan aplikasi baru. Sebagai konfirmasi, notifikasi akan muncul dan memberi tahu bahwa aplikasi Anda telah dibuat, lalu aplikasi Anda akan dimuat di jendela baru yang terbuka.

Menyiapkan kredensial

  1. Untuk membuka terminal, klik Terminal > New Terminal.

  2. Buat akun layanan untuk mengautentikasi permintaan API Anda:

    gcloud iam service-accounts create \
    translation-quickstart \
    --project PROJECT_ID
  3. Beri akun layanan Anda peran Pengguna Cloud Translation API:

    gcloud projects \
    add-iam-policy-binding \
    PROJECT_ID \
    --member='serviceAccount:translation-quickstart@PROJECT_ID.s3ns-system.iam.gserviceaccount.com' \
    --role='roles/cloudtranslate.user'
  4. Membuat kunci akun layanan:

    gcloud iam service-accounts keys \
    create key.json --iam-account \
    translation-quickstart@PROJECT_ID.s3ns-system.iam.gserviceaccount.com
  5. Tetapkan kunci sebagai kredensial default Anda:

    export \
     GOOGLE_APPLICATION_CREDENTIALS=key.json
    

Memanggil Cloud Translation API dari aplikasi Anda

Go

  1. Instal Library Klien Cloud Cloud Translation API:

    1. Untuk membuka terminal, klik Terminal > New Terminal.
    2. Jalankan perintah berikut:

      go get cloud.google.com/go/translate/apiv3
      
  2. Buat file app.go.

  3. Buka app.go dan tambahkan nama paket, impor, dan kerangka aplikasi Anda:

    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. Dalam fungsi translateText(), tambahkan kode berikut, yang menerjemahkan teks yang ditentukan. Pilih File > Save untuk memformat ulang kode Anda:

    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. Di fungsi main(), panggil translateText(). Nilai parameter berikut menerjemahkan bahasa Inggris ke bahasa Spanyol:

    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. Dari terminal, jalankan aplikasi Anda.

    go run app.go
    

Java

  1. Buka pom.xml dan tambahkan cuplikan kode berikut ke bagian dependencies:

    <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. Kemudian, di file pom.xml, tambahkan cuplikan kode berikut ke bagian dependencyManagement:

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

    Pastikan Anda menggunakan Trusted Cloud by S3NS Supported Libraries versi terbaru. Untuk mengetahui daftar versi, lihat Trusted Cloud by S3NS Library yang Didukung.

  3. Saat ditanya apakah Anda ingin menyinkronkan classpath/konfigurasi Java, klik Selalu.

  4. Buat file bernama app.java.

  5. Diapp.java, sertakan impor berikut setelah definisi paket:

    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. Tambahkan metode translateText() ke class App Anda. Metode ini menetapkan dan meneruskan variabel ke metode translateText() yang kelebihan beban. Nilai berikut menerjemahkan bahasa Inggris ke bahasa Spanyol:

    public static void translateText() throws IOException {
      String projectId = "<walkthrough-project-id/>";
      String targetLanguage = "es";
      String text = "Hello world!";
      translateText(projectId, targetLanguage, text);
    }
    
  7. Menambahkan metode translateText() yang kelebihan muatan. Metode ini mengambil teks dan menerjemahkannya ke bahasa target.

    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. Ganti pernyataan cetak di main dengan panggilan ke translateText():

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

Node.js

  1. Instal Library Klien Cloud Cloud Translation API:

    1. Klik Cloud Code, lalu luaskan explorer Cloud API.
    2. Luaskan Cloud AI, lalu klik Cloud Translation API.
    3. Untuk menginstal library klien, klik NodeJS, lalu klik play_arrow Run in terminal.
  2. Buat file app.js di project Anda.

  3. Bukaapp.js dan impor library klien Translation di awal file:

    const {TranslationServiceClient} = require('@google-cloud/translate');
    
  4. Buat klien Translation API dan tambahkan variabel untuk project ID, lokasi, dan teks yang ingin Anda terjemahkan:

    // Instantiates a client
    const translationClient = new TranslationServiceClient();
    
    const projectId = 'PROJECT_ID';
    const location = 'global';
    const text = 'Hello, world!';
    
  5. Tambahkan fungsi async berikut, yang mendeteksi bahasa teks Hello, world! Anda dan menerjemahkan teks ke dalam bahasa Spanyol:

    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. Di akhir file app.js, panggil translateText():

    translateText();
    
  7. Untuk menjalankan aplikasi, buka palet perintah (tekan Ctrl/Cmd + Shift + P), lalu jalankan Cloud Code: Run on Kubernetes.

  8. Setelah aplikasi di-deploy, lihat layanan yang sedang berjalan dengan membuka URL yang ditampilkan di webview.

Python

  1. Instal Library Klien Cloud Cloud Translation API:

    1. Klik Cloud Code, lalu luaskan explorer Cloud API.
    2. Luaskan Cloud AI, lalu klik Cloud Translation API.
    3. Untuk menginstal library klien, klik Python, lalu klik play_arrow Run in terminal.
      Catatan: Jika Anda menggunakan sistem operasi berbasis Linux, termasuk Chromebook, revisi perintah untuk menggunakan pip3, bukan pip. Jika Anda menggunakan Mac, revisi perintah untuk menggunakan pip3 dan tambahkan flag --user.
  2. Buat file app.py di project Anda.

  3. Di app.py, impor library klien di awal file:

    from google.cloud import translate
    
  4. Tambahkan fungsi translate_text. Tindakan ini menginisialisasi klien untuk berinteraksi dengan Cloud Translation API.

    def translate_text(text="Hello, world!", project_id="PROJECT_ID"):
    
    client = translate.TranslationServiceClient()
    location = "global"
    parent = "projects/PROJECT_ID/locations/LOCATION"
    
  5. Untuk menerjemahkan teks dari bahasa Inggris ke bahasa Spanyol dan mencetak hasilnya, di fungsi translate_text, tambahkan panggilan berikut ke Cloud Translation API Cloud Client Libraries:

       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. Di akhir app.py, panggil translate_text().

    translate_text()
  7. Untuk menjalankan aplikasi, buka palet perintah (tekan Ctrl/Cmd + Shift + P), lalu jalankan Cloud Code: Run on Kubernetes.

  8. Setelah aplikasi di-deploy, lihat layanan yang sedang berjalan dengan membuka URL yang ditampilkan di webview.

Pembersihan

Setelah Anda menghentikan aplikasi, semua resource Kubernetes yang di-deploy selama proses berjalan akan dihapus secara otomatis.

Agar tidak menimbulkan biaya pada akun Anda untuk resource lain yang digunakan dalam panduan memulai cepat ini, pastikan untuk menghapus project atau menghapus cluster yang Anda buat jika Anda ingin menggunakan kembali project tersebut.

Untuk menghapus cluster:

  1. Di Kubernetes Explorer, jeda pada nama cluster Anda, lalu klik open_in_new Open in Trusted Cloud console.
  2. Klik Delete, lalu klik Delete.

Untuk menghapus project Anda (dan resource terkait, termasuk cluster apa pun):

  1. In the Trusted Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Dapatkan Dukungan

Untuk mengirim masukan, laporkan masalah di GitHub, atau ajukan pertanyaan di Stack Overflow.

Langkah berikutnya