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 un Hello World y, luego, actualízala para que use el La API de Cloud Translation para traducir la respuesta al español.

Antes de comenzar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

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

    Enable the APIs

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

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

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

    Enable the APIs

  8. Instala Git para que Cloud Code puede realizar operaciones de Git, como clonar un muestra.
  9. Instala el complemento de Cloud Code si aún no lo hiciste.

Crea una aplicación

  1. En la paleta de comandos (Cmd/Ctrl+Shift+P), ejecuta Cloud Code: Nueva aplicación, elige Aplicación de Kubernetes y, luego, elige una app de Hello World en el idioma que prefieras. Por ejemplo, elige Node.js: Hello World para crear una app de Hello World de Node.js de partida.
  2. Guarda la aplicación nueva. 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 > Nueva 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 del paquete, las importaciones y la estructura 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 tu función main(), llama a translateText(). Lo siguiente los valores de los parámetros se traducen del inglés al 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. Ejecuta la aplicación desde la terminal.

    go run app.go
    

Java

  1. Abre pom.xml y agrega el siguiente fragmento de código a la sección 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. Luego, en el archivo pom.xml, agrega el siguiente fragmento de código al archivo Sección 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>
    

    Asegúrate de usar la versión más reciente de la plataforma compatible con Google Cloud Bibliotecas. Para ver una lista de las versiones, consulta Bibliotecas compatibles con Google Cloud.

  3. Cuando se te pregunte si deseas sincronizar la ruta de clase o la configuración de Java, Haz clic en Siempre.

  4. Crea un archivo llamado app.java.

  5. Enapp.java, incluye las siguientes importaciones después de la definición del paquete:

    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. Agrega el método translateText() a tu clase App. Este método establece y pasa variables a un método translateText() sobrecargado. Los siguientes valores de parámetros traducen de inglés a español:

    public static void translateText() throws IOException {
      String projectId = "<walkthrough-project-id/>";
      String targetLanguage = "es";
      String text = "Hello world!";
      translateText(projectId, targetLanguage, text);
    }
    
  7. Agrega un método translateText() sobrecargado. Este método toma texto y lo traduce al idioma de destino.

    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. Reemplaza la sentencia de impresión en tu main por una llamada a translateText():

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

Node.js

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

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

  3. Abrirapp.js e 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 quieres 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 de tu Hello, world! envía texto 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: Ejecutar en 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 Cloud de la API de Cloud Translation:

    1. Haz clic en . Cloud Code y, luego, expande el explorador de APIs de Cloud.
    2. Expande Cloud AI y, luego, haz clic en API de Cloud Translation:
    3. Para instalar la biblioteca cliente, haz clic en Python y, luego, en play_arrow Run in terminal.
      Nota: Si usas 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 usarlo 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 interactuar 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 y, luego, 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: Ejecuta en Kubernetes.

  8. Después de implementar la aplicación, abre el archivo para visualizar tu servicio en ejecución La URL se muestra en webview.

Limpia

Después de detener la aplicación, todos los recursos de Kubernetes que implementaste durante la ejecución se borran de forma automática.

Para evitar que se apliquen cargos en 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, coloca el cursor sobre el nombre de tu clúster y haz clic en open_in_new Open in Google Cloud console.
  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. In the Google 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.

Obtener asistencia

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

¿Qué sigue?