Usa las bibliotecas cliente de Cloud en Cloud Code

En esta página, se muestra cómo comenzar a usar las bibliotecas cliente de Cloud y Cloud Code con rapidez. Configurarás una nueva aplicación de Kubernetes con una aplicación de muestra Hello World y, luego, actualizarás la aplicación para usar la API de Cloud Translation a fin de traducir la respuesta al español.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. Habilita las API de Google Kubernetes Engine and Cloud Translation.

    Habilita las API

  5. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  6. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  7. Habilita las API de Google Kubernetes Engine and Cloud Translation.

    Habilita las API

  8. Instala Git para que Cloud Code pueda realizar operaciones de Git, como clonar una muestra.
  9. Instala el complemento de Cloud Code si aún no lo has hecho.

Crea una aplicación

  1. Desde la paleta de comandos (Cmd/Ctrl+Shift+P), ejecuta Cloud Code: New Application, elige Kubernetes Application y, luego, elige una app de Hello World en el lenguaje que prefieras. Por ejemplo, elige Node.js: Hello World para crear una app de Hello World de inicio de Node.js.
  2. Guarda la nueva aplicación. Una notificación confirmará que se creó tu aplicación y se abrirá una ventana nueva con ella.

Configura las credenciales

  1. Para abrir una terminal, haz clic en Terminal > New Terminal.

  2. Crea una cuenta de servicio para autenticar tus solicitudes a la API:

    gcloud iam service-accounts create \
    translation-quickstart \
    --project PROJECT_ID
    
  3. Otorga a tu cuenta de servicio el rol de usuario de la API de Cloud Translation:

    gcloud projects \
    add-iam-policy-binding \
    PROJECT_ID \
    --member='serviceAccount:translation-quickstart@PROJECT_ID.iam.gserviceaccount.com' \
    --role='roles/cloudtranslate.user'
    
  4. Para crear una clave de cuenta de servicio, haz lo siguiente:

    gcloud iam service-accounts keys \
    create key.json --iam-account \
    translation-quickstart@PROJECT_ID.iam.gserviceaccount.com
    
  5. Configura la clave como tus credenciales predeterminadas:

    export \
     GOOGLE_APPLICATION_CREDENTIALS=key.json
    

Llama a la API de Cloud Translation desde tu aplicación

Go

  1. Instala las bibliotecas cliente de Cloud de la API de Cloud Translation:

    1. Para abrir una terminal, haz clic en Terminal > New Terminal.
    2. Ejecuta el siguiente comando:

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

  3. Abre app.go y agrega el nombre de tu paquete, las importaciones y el esqueleto de la 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. En la función translateText(), agrega el siguiente código, que traduce el texto especificado. Selecciona Archivo > Guardar para cambiar el formato del código:

    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. En la función main(), llama a translateText(). Los siguientes valores del parámetro se traducen de inglés a español:

    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. Desde la terminal, ejecuta tu aplicación.

    go run app.go
    

Node.js

  1. Instala las bibliotecas cliente de la API de Cloud Translation:

    1. Haz clic en Cloud Code y, luego, expande el explorador de APIs de Cloud.
    2. Expande IA de Cloud y haz clic en API de Cloud Translation.
    3. Para instalar la biblioteca cliente, haz clic en NodeJS y, luego, en play_arrow Ejecutar en la terminal.
  2. Crea un archivo app.js en tu proyecto.

  3. Abre app.js y, luego, importa la biblioteca cliente de Translation al comienzo del archivo:

    const {TranslationServiceClient} = require('@google-cloud/translate');
    
  4. Crea un cliente de la API de Translation y agrega variables para el ID del proyecto, la ubicación y el texto que deseas traducir:

    // Instantiates a client
    const translationClient = new TranslationServiceClient();
    
    const projectId = 'PROJECT_ID';
    const location = 'global';
    const text = 'Hello, world!';
    
  5. Agrega la siguiente función async, que detecta el idioma del texto en Hello, world! y lo traduce al español:

    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 final del archivo app.js, llama a translateText():

    translateText();
    
  7. Para ejecutar tu aplicación, abre la paleta de comandos (presiona Ctrl/Cmd + Shift + P) y, luego, ejecuta Cloud Code: Run on Kubernetes.

  8. Después de implementar la aplicación, abre la URL que se muestra en webview para ver el servicio en ejecución.

Python

  1. Instala las bibliotecas cliente de la API de Cloud Translation:

    1. Haz clic en Cloud Code y, luego, expande el explorador de APIs de Cloud.
    2. Expande IA de Cloud y haz clic en API de Cloud Translation.
    3. Para instalar la biblioteca cliente, haz clic en Python y, luego, haz clic en play_arrow Ejecutar en terminal.
      Nota: Si utilizas un sistema operativo basado en Linux, incluida una Chromebook, revisa el comando para usar pip3 en lugar de pip. Si usas una Mac, revisa el comando para usar pip3 y agrega la marca --user.
  2. Crea un archivo app.py en tu proyecto.

  3. En app.py, importa la biblioteca cliente al comienzo del archivo:

    from google.cloud import translate
    
  4. Agrega la función translate_text. Esto inicializa un cliente para que interactúe con la API de Cloud Translation.

    def translate_text(text="Hello, world!", project_id="PROJECT_ID"):
    
    client = translate.TranslationServiceClient()
    location = "global"
    parent = "projects/PROJECT_ID/locations/LOCATION"
    
  5. Para traducir texto del inglés al español e imprimir el resultado, en la función translate_text, agrega la siguiente llamada a las bibliotecas cliente de Cloud de la API de 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. Al final de app.py, llama a translate_text().

    translate_text()
    
  7. Para ejecutar tu aplicación, abre la paleta de comandos (presiona Ctrl/Cmd + Shift + P) y, luego, ejecuta Cloud Code: Run on Kubernetes.

  8. Después de implementar la aplicación, abre la URL que se muestra en webview para ver el servicio en ejecución.

Realice una limpieza

Después de detener la aplicación, todos los recursos de Kubernetes implementados durante la ejecución se borrarán automáticamente.

Para evitar que se apliquen cargos a tu cuenta por otros recursos que usaste en esta guía de inicio rápido, asegúrate de borrar el proyecto o el clúster que creaste si quieres volver a usarlo.

Para borrar el clúster, sigue estos pasos:

  1. En Kubernetes Explorer, pausa en el nombre de tu clúster y, luego, haz clic en open_in_new Abrir en la consola de Google Cloud.
  2. Haz clic en Borrar y, luego, en Borrar.

Para borrar tu proyecto (y los recursos asociados, incluidos los clústeres), sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Administrar recursos.

    Ir a Administrar recursos

  2. En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borrar.
  3. En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrar el proyecto.

Obtener asistencia

Si deseas enviar comentarios, informa problemas en GitHub o haz preguntas en Stack Overflow.

¿Qué sigue?