Utilizzo delle librerie client di Cloud in Cloud Code

Questa pagina mostra come iniziare rapidamente a utilizzare le librerie client di Cloud e Cloud Code. Imposterai una nuova applicazione Kubernetes utilizzando un'applicazione di esempio Hello World e aggiornerai l'applicazione in modo che utilizzi l'API Cloud Translation e tradurre la risposta in spagnolo.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Abilita le API Google Kubernetes Engine and Cloud Translation.

    Abilita le API

  5. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  6. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  7. Abilita le API Google Kubernetes Engine and Cloud Translation.

    Abilita le API

  8. Installa Git in modo che Cloud Code possa eseguire operazioni Git, come la clonazione di un campione.
  9. Se non l'hai ancora fatto, installa il plug-in Cloud Code.

Creazione di un'applicazione

  1. Dalla tavolozza dei comandi (Cmd/Ctrl+Shift+P), esegui Cloud Code: New Application, scegli Applicazione Kubernetes, quindi scegli un'app Hello World nel linguaggio che preferisci. Ad esempio, scegli Node.js: Hello World per creare un'app Hello World Node.js.
  2. Salva la nuova applicazione. Una notifica conferma che l'applicazione è stata creata e si apre una nuova finestra in cui è visualizzata l'applicazione.

Configura le credenziali

  1. Per aprire un terminale, fai clic su Terminale > Nuovo terminale.

  2. Crea un account di servizio per autenticare le richieste API:

    gcloud iam service-accounts create \
    translation-quickstart \
    --project PROJECT_ID
    
  3. Concedi al tuo account di servizio il ruolo di utente API Cloud Translation:

    gcloud projects \
    add-iam-policy-binding \
    PROJECT_ID \
    --member='serviceAccount:translation-quickstart@PROJECT_ID.iam.gserviceaccount.com' \
    --role='roles/cloudtranslate.user'
    
  4. Crea una chiave dell'account di servizio:

    gcloud iam service-accounts keys \
    create key.json --iam-account \
    translation-quickstart@PROJECT_ID.iam.gserviceaccount.com
    
  5. Imposta la chiave come credenziale predefinita:

    export \
     GOOGLE_APPLICATION_CREDENTIALS=key.json
    

Chiama l'API Cloud Translation dalla tua applicazione

Go

  1. Installa le librerie client di Cloud Translation dell'API Cloud Translation:

    1. Per aprire un terminale, fai clic su Terminale > Nuovo terminale.
    2. Esegui questo comando:

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

  3. Apri app.go e aggiungi il nome del pacchetto, le importazioni e lo scheletro dell'app:

    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. Nella funzione translateText(), aggiungi il codice seguente, che traduce il testo specificato. Seleziona File > Salva per riformattare il codice:

    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. Nella funzione main(), chiama translateText(). I seguenti valori dei parametri traducono dall'inglese allo spagnolo:

    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. Esegui l'applicazione nel terminale.

    go run app.go
    

Node.js

  1. Installa le librerie client di Cloud Translation dell'API Cloud Translation:

    1. Fai clic su Cloud Code ed espandi lo strumento di esplorazione API Cloud.
    2. Espandi IA Cloud e fai clic su API Cloud Translation.
    3. Per installare la libreria client, fai clic su NodeJS e quindi su play_arrow Esegui nel terminale.
  2. Crea un file app.js nel progetto.

  3. Apriapp.js e importa la libreria client di Translation all'inizio del file:

    const {TranslationServiceClient} = require('@google-cloud/translate');
    
  4. Crea un client API Translation e aggiungi variabili per l'ID progetto, la località e il testo che vuoi tradurre:

    // Instantiates a client
    const translationClient = new TranslationServiceClient();
    
    const projectId = 'PROJECT_ID';
    const location = 'global';
    const text = 'Hello, world!';
    
  5. Aggiungi la seguente funzione async, che rileva la lingua del testo Hello, world! e lo traduce in spagnolo:

    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. Al termine del tuo file app.js, chiama translateText():

    translateText();
    
  7. Per eseguire l'applicazione, apri la tavolozza dei comandi (premi Ctrl/Cmd + Shift + P), quindi esegui Cloud Code: Run on Kubernetes.

  8. Una volta eseguito il deployment dell'applicazione, visualizza il servizio in esecuzione aprendo l'URL visualizzato nella webview.

Python

  1. Installa le librerie client di Cloud Translation dell'API Cloud Translation:

    1. Fai clic su Cloud Code ed espandi lo strumento di esplorazione API Cloud.
    2. Espandi IA Cloud e fai clic su API Cloud Translation.
    3. Per installare la libreria client, fai clic su Python e poi fai clic su play_arrow Esegui nel terminale.
      Nota: se utilizzi un sistema operativo basato su Linux, incluso Chromebook, rivedi il comando in modo da utilizzare pip3 anziché pip. Se usi un Mac, rivedi il comando in modo che utilizzi pip3 e aggiungi il flag --user.
  2. Crea un file app.py nel progetto.

  3. In app.py, importa la libreria client all'inizio del file:

    from google.cloud import translate
    
  4. Aggiungi la funzione translate_text. Questo inizializza un client per interagire con l'API Cloud Translation.

    def translate_text(text="Hello, world!", project_id="PROJECT_ID"):
    
    client = translate.TranslationServiceClient()
    location = "global"
    parent = "projects/PROJECT_ID/locations/LOCATION"
    
  5. Per tradurre il testo dall'inglese allo spagnolo e stampare il risultato, nella funzione translate_text aggiungi la seguente chiamata alle librerie client di Cloud dell'API Cloud Translation:

       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. Alla fine di app.py, chiama translate_text().

    translate_text()
    
  7. Per eseguire l'applicazione, apri la tavolozza dei comandi (premi Ctrl/Cmd + Shift + P), quindi esegui Cloud Code: Run on Kubernetes.

  8. Una volta eseguito il deployment dell'applicazione, visualizza il servizio in esecuzione aprendo l'URL visualizzato nella webview.

Eseguire la pulizia

Dopo l'interruzione dell'applicazione, tutte le risorse Kubernetes di cui è stato eseguito il deployment durante l'esecuzione vengono eliminate automaticamente.

Per evitare che al tuo account vengano addebitati costi per altre risorse utilizzate in questa guida rapida, assicurati di eliminare il progetto o il cluster che hai creato se vuoi riutilizzare il progetto.

Per eliminare il cluster:

  1. In Kubernetes Explorer, metti in pausa il nome del cluster e fai clic su open_in_new Apri in console Google Cloud.
  2. Fai clic su Elimina e quindi su Elimina.

Per eliminare il progetto (e le risorse associate, inclusi i cluster):

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
  3. Nella finestra di dialogo, digita l'ID del progetto e fai clic su Chiudi per eliminare il progetto.

Richiedi assistenza

Per inviare feedback, segnala problemi su GitHub o fai una domanda su Stack Overflow.

Passaggi successivi