Usa las bibliotecas cliente de Cloud en Cloud Code
En esta página, se muestra cómo comenzar rápidamente a usar las bibliotecas cliente de Cloud y Cloud Code. 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
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.
-
Enable the Google Kubernetes Engine and Cloud Translation APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.
-
Enable the Google Kubernetes Engine and Cloud Translation APIs.
- Instala Git para que Cloud Code puede realizar operaciones de Git, como clonar un muestra.
- Instala el complemento de Cloud Code si aún no lo hiciste.
Crea una aplicación
- 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 idioma que prefieras. Por ejemplo, elige Node.js: Hello World para crear una app de Hello World de Node.js de inicio - Guarda la aplicación nueva. Una notificación confirma que se creó tu aplicación y que se abrirá una ventana nueva con tu solicitud.
Configura las credenciales
Para abrir una terminal, haz clic en Terminal > New Terminal.
Crea una cuenta de servicio para autenticar tus solicitudes a la API:
gcloud iam service-accounts create \ translation-quickstart \ --project PROJECT_ID
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'
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
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
Instala las bibliotecas cliente de Cloud de la API de Cloud Translation:
- Para abrir una terminal, haz clic en Terminal > New Terminal.
Ejecuta el siguiente comando:
go get cloud.google.com/go/translate/apiv3
Crea un archivo
app.go
.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() { }
En la función
translateText()
, agrega el siguiente código, que traduce el texto especificado. Selecciona Archivo > Guarda los cambios para cambiar el formato del archivo. 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
En la función
main()
, llama atranslateText()
. 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) }
En la terminal, ejecuta tu aplicación.
go run app.go
Java
Abre
pom.xml
y agrega el siguiente fragmento de código adependencies
sección:<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>
Luego, en el archivo
pom.xml
, agrega el siguiente fragmento de código al archivo SeccióndependencyManagement
:<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.
Cuando se te pregunte si deseas sincronizar la ruta de clase o la configuración de Java, Haz clic en Siempre.
Crea un archivo llamado
app.java
.En
app.java
, incluye las siguientes importaciones después del paquete. definición: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;
Agrega el método
translateText()
a tu claseApp
. Este método establece y pasa variables a un métodotranslateText()
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); }
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()); } } }
Reemplaza la sentencia de impresión en tu
main
con una llamada atranslateText()
try { translateText(); } catch (IOException e) { e.printStackTrace(); }
Node.js
Instala las bibliotecas cliente de Cloud de la API de Cloud Translation:
- Haz clic en . Cloud Code y, luego, expande el explorador de APIs de Cloud.
- Expande Cloud AI y, luego, haz clic en API de Cloud Translation:
- Para instalar la biblioteca cliente, haz clic en NodeJS y, luego, haz clic en
play_arrow
Ejecútalo en la terminal.
Crea un archivo
app.js
en tu proyecto.Abrir
app.js
e importa la biblioteca cliente de Translation al comienzo del archivo:const {TranslationServiceClient} = require('@google-cloud/translate');
Crea un cliente de la API de Translation y agrega variables para el ID de tu proyecto. 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!';
Agrega la siguiente función
async
, que detecta el idioma de tuHello, 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}`); } }
Al final del archivo
app.js
, llama atranslateText()
:translateText();
Para ejecutar tu aplicación, abre la paleta de comandos (presiona
Ctrl
/Cmd
+Shift
+P
) y, luego, ejecuta Cloud Code: Ejecuta en Kubernetes.Después de implementar la aplicación, abre el archivo para visualizar tu servicio en ejecución La URL se muestra en WebView.
Python
Instala las bibliotecas cliente de Cloud de la API de Cloud Translation:
- Haz clic en . Cloud Code y, luego, expande el explorador de APIs de Cloud.
- Expande Cloud AI y, luego, haz clic en API de Cloud Translation:
- Para instalar la biblioteca cliente, haz clic en Python y, luego, haz clic en
play_arrow
Ejecútalo en la terminal.
Nota: Si usas un sistema operativo basado en Linux, incluso Chromebook, revisa el comando para que usepip3
en lugar depip
Si usas una Mac, revisa el comando para usarlopip3
y agrega la marca--user
.
Crea un archivo
app.py
en tu proyecto.En
app.py
, importa la biblioteca cliente al comienzo del archivo:from google.cloud import translate
Agrega la función
translate_text
. Esto inicializa un cliente con el que interactuará. 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"
Para traducir texto de inglés a español e imprimir el resultado, en tu función
translate_text
, agrega la siguiente llamada a la API de Cloud Translation Las bibliotecas cliente de Cloud tienen las siguientes características: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))
Al final de
app.py
, llama atranslate_text()
.translate_text()
Para ejecutar tu aplicación, abre la paleta de comandos (presiona
Ctrl
/Cmd
+Shift
+P
) y, luego, ejecuta Cloud Code: Ejecuta en Kubernetes.Después de implementar la aplicación, abre el archivo para visualizar tu servicio en ejecución La URL se muestra en WebView.
Limpia
Luego de detener la aplicación, todos los recursos de Kubernetes implementados durante la ejecución se borran automáticamente.
Para evitar que se apliquen cargos a tu cuenta por otros recursos que usaste asegúrate de borrar el proyecto o el clúster que creaste si quieres reutilizar el proyecto.
Para borrar el clúster, sigue estos pasos:
- En la Kubernetes Explorer, detente en el nombre del clúster y, luego, haz clic open_in_new Abrir en la consola de Google Cloud.
- Haz clic en Borrar y, luego, en Borrar.
Para borrar tu proyecto (y los recursos asociados, incluidos los clústeres), sigue estos pasos:
- En la consola de Google Cloud, ve a la página Administrar recursos.
- En la lista de proyectos, elige el proyecto que quieres borrar y haz clic en Borrar.
- En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrar el proyecto.
Obtener asistencia
Para enviar comentarios, informa problemas en GitHub, o formular una pregunta sobre Stack Overflow.¿Qué sigue?
- Más información sobre la API de Cloud Translation
- Obtén más información sobre las bibliotecas cliente de Cloud.
- Obtén más información sobre Cloud Code para VS Code.