Crea código con Gemini Code Assist

En este documento, se describe cómo puedes usar Gemini Code Assist, un colaborador potenciado por IA en Google Cloud, para que te ayude a hacer lo siguiente en el editor base de Cloud Workstations:

  • Proporciona orientación que te ayude a resolver problemas con tu código.

  • Genera código para tu proyecto.

  • Recibe sugerencias intercaladas mientras codificas.

Descubre cómo y cuándo Gemini para Google Cloud usa tus datos.

Para ayudarte a cumplir con los requisitos de licencia de tu código, Gemini Code Assist proporciona citas de fuentes cuando sus sugerencias citan directamente en detalle una fuente específica. Para obtener más información sobre cómo y cuándo Gemini cita fuentes, consulta Cómo Gemini te ayuda a generar código y cita fuentes.

Este documento está dirigido a desarrolladores de todos los niveles de habilidad. Se supone que tienes conocimientos prácticos de Cloud Workstations y estás familiarizado con Google Cloud. Si lo prefieres, también puedes explorar Gemini Code Assist en Cloud Code para VS Code, Cloud Code para IntelliJ y el editor de Cloud Shell.

Antes de comenzar

  1. Asegúrate de tener el rol de IAM Administrador de Cloud Workstations en el proyecto para poder crear configuraciones de estaciones de trabajo.

    Ir a IAM

  2. Si aún no lo hiciste, configura tu estación de trabajo y asegúrate de seleccionar Editor base (Code-OSS) en la configuración.

Conéctate a Google Cloud y selecciona un proyecto

En esta sección, te conectarás a Google Cloud y seleccionarás un proyecto de Google Cloud con la API de Cloud AI Companion habilitada en tu estación de trabajo.

Si seleccionas un proyecto de Google Cloud que no tiene habilitada la API de Cloud AI Companion, recibirás una notificación de error y se te indicará que te comuniques con tu administrador. Para obtener más información, consulta Cómo configurar Gemini Code Assist para un proyecto.

Para conectarte a Google Cloud en tu estación de trabajo, sigue estos pasos:

  1. En la consola de Google Cloud, inicia tu estación de trabajo.

    Inicia la estación de trabajo.

  2. En la barra de estado, haz clic en Cloud Code - Acceder.

    Cloud Code - Botón de acceso en la barra de estado.

  3. Cuando se te solicite que accedas, haz clic en Proceed to sign in.

  4. Para iniciar el flujo de acceso de Google Cloud, presiona Control (para Windows y Linux) o Comando (para macOS) y haz clic en la URL en la consola.

  5. Si se te solicita permitir que Cloud Workstations abra el sitio web externo, haz clic en Abrir.

  6. Para acceder a tu cuenta, sigue las indicaciones.

    Si se te solicita asegurarte de que descargaste esta app desde Google, haz clic en Acceder.

    Se abrirá una pestaña nueva en el navegador que mostrará el código de verificación para acceder a Cloud Code.

  7. Copia el código de verificación y pégalo en tu terminal, donde dice Ingresa el código de autorización y, luego, presiona Intro (para Windows y Linux) o Volver (para macOS).

    Ya te conectaste a Google Cloud.

A continuación, para seleccionar un proyecto de Google Cloud que tenga habilitada la API de Cloud AI Companion, sigue estos pasos:

  1. En la barra de estado de Gemini Code Assist, haz clic en Gemini Code Assist.

    La barra de estado de Gemini está disponible.

  2. En el menú de Gemini Code Assist, selecciona Seleccionar proyecto de Gemini Code Assist.

  3. Selecciona un proyecto de Google Cloud que tenga habilitada la API de Cloud AI Companion.

    Gemini está listo para usarse.

    El ícono de Gemini en la barra de estado se estableció en normal.

Para probar las capacidades de Gemini Code Assist, abre una aplicación o crea una de ejemplo en la siguiente sección.

Opcional: Crea una aplicación de ejemplo

Si prefieres usar una aplicación existente para probar las funciones de Gemini Code Assist, puedes omitir esta sección. De lo contrario, sigue estos pasos para crear una aplicación de muestra:

  1. En tu estación de trabajo, abre la paleta de comandos: presiona Control + Mayúsculas + P (para Windows y Linux) o Comando + Mayúsculas + P (para macOS) y, luego, ejecuta Cloud Code: New Application.

  2. Selecciona Kubernetes application.

  3. Selecciona la plantilla de la aplicación Python (Flask): Guestbook.

  4. Ingresa un nombre para tu aplicación de ejemplo y, luego, haz clic en OK para guardarla.

    Una notificación confirma que se creó la aplicación y se abre una ventana nueva con la aplicación cargada.

Chatea con Gemini Code Assist

En esta sección, aprenderás a abrir el panel de Gemini Code Assist y chatear con Gemini Code Assist para obtener una explicación sobre tu código existente.

Para comenzar a chatear con Gemini, sigue estos pasos:

  1. Crea un archivo de código nuevo o usa uno existente. Si usas la muestra de Python (Flask), puedes realizar esta tarea en tu archivo front.py: navega a Explorador > src > frontend y abre el archivo front.py.

  2. En la barra de actividades de tu estación de trabajo, haz clic en chat_spark de Gemini Code Assist.

  3. En el panel de Gemini Code Assist, ingresa el mensaje Explain this code to me y haz clic en enviar Enviar.

    Gemini usa el código del archivo de código como referencia a la instrucción y responde con una explicación del código.

    Para hacer referencia a un bloque de código específico en lugar de a todo el código del archivo, puedes seleccionar el bloque de tu archivo de código y, luego, indicarle a Gemini.

Restablecer historial de chat

Gemini Code Assist usa el historial de chat para obtener contexto adicional cuando responde tus instrucciones.

Si tu historial de chat ya no es relevante para lo que quieres lograr, puedes restablecerlo. Para ello, en el panel Gemini Code Assist, haz clic en borrar Restablecer Chat.

Genera código con instrucciones

En las siguientes secciones, se muestra cómo usar Gemini Code Assist para generar código con la instrucción de ejemplo # Function to create a Cloud Storage bucket dentro de un archivo de Python. También puedes seleccionar una parte del código y, luego, pedirle ayuda a Gemini Code Assist a través de la función de chat, así como recibir y aceptar o rechazar las sugerencias de código mientras escribes el código.

Cómo indicarle a Gemini Code Assist en un archivo de código

  1. Crea un archivo de código nuevo o usa uno existente. Si usas la muestra de Python (Flask), puedes hacerlo en tu archivo front.py: Navega a Explorador > src > frontend y abre el archivo front.py.

  2. En una línea nueva del archivo de código, ingresa # Function to create a Cloud Storage bucket y, luego, presiona Intro (para Windows y Linux) o Return (para macOS).

  3. Para generar código, presiona Control + Intro (para Windows y Linux) o Control + Retorno (para macOS).

    Junto al texto de la instrucción en el archivo de Python, Gemini Code Assist genera el código en forma de texto fantasma.

  4. Opcional: Para aceptar el código generado, presiona el Tabulador.

Opcional: Cambia la combinación de teclas para generar código

Si la combinación de teclas predeterminada para generar código no funciona como se describe en la sección anterior, puedes cambiarla siguiendo estos pasos:

  1. En tu estación de trabajo, haz clic en el menú Menú y, luego, navega a Archivo > Preferencias > Combinaciones de teclas.

  2. En la lista de combinaciones de teclas, busca Cloud Code: Generar código.

  3. Haz clic en Cloud Code: Generar código y, luego, en Editar Cambiar Vinculación de claves.

  4. En el cuadro de diálogo que aparece, ingresa tu propia combinación de teclas.

  5. Presiona Intro (para Windows y Linux) o Intro (para macOS).

    Ahora puedes usar la combinación de teclas que acabas de asignar para generar código con Gemini.

Cómo indicarle a Gemini Code Assist con el código seleccionado por medio del chat

Gemini Code Assist puede realizar tareas o responder tus preguntas según el código que selecciones. Para obtener código generado a partir de un mensaje con el código seleccionado, sigue estos pasos:

  1. En tu estación de trabajo, abre un archivo del proyecto que contenga el código o usa el mismo archivo de código que usaste en los pasos anteriores.

  2. En la barra de actividades, haz clic en chat_spark de Gemini Code Assist para abrir el panel de Gemini Code Assist.

  3. En el archivo de código, selecciona un bloque de código.

  4. En el campo de texto del panel de Gemini Code Assist, ingresa una instrucción para el código seleccionado.

    Por ejemplo, selecciona una función en tu código y escribe el mensaje Write a unit test for this function:

    Gemini escribe una prueba de unidades para una función seleccionada.

    Gemini usa el código seleccionado como referencia y responde a tu instrucción.

Obtén sugerencias intercaladas mientras escribes código

Mientras escribes código, Gemini Code Assist hace sugerencias intercaladas que puedes aceptar o ignorar. Para probar esta función, sigue estos pasos:

  1. Crea un archivo de código nuevo o usa uno existente. Si usas la muestra de Python (Flask), puedes hacerlo en tu archivo front.py: Navega a Explorador > src > frontend y abre el archivo front.py.

  2. En tu archivo de código, en una línea nueva, comienza a escribir una función. Por ejemplo, si estás en un archivo de Python, escribe def.

    Gemini sugiere código en forma de texto fantasma.

  3. Para aceptar la sugerencia de código de Gemini Code Assist, presiona Tab. De lo contrario, para ignorar la sugerencia, presiona Esc o continúa escribiendo tu código.

Opcional: Inhabilita las sugerencias intercaladas

Si prefieres inhabilitar las sugerencias intercaladas en Gemini Code Assist, sigue estos pasos:

  1. En tu estación de trabajo, selecciona Menú Menú y, luego, navega a File > Preferences > Settings.

  2. En la pestaña Usuario del diálogo Configuración, navega a Extensiones > Cloud Code.

  3. Desplázate hasta encontrar la lista Cloudcode: Gemini Code Assist: Inline Suggestions: Enable Auto y, luego, selecciona Off.

    Esta acción desactiva las sugerencias intercaladas. Aún puedes presionar Control + Intro (para Windows y Linux) o Control + Retorno (para macOS) para activar las sugerencias intercaladas de forma manual.

Inhabilitar las sugerencias de código que coincidan con las fuentes citadas

Gemini proporciona información sobre citas cuando cita de forma directa a otra fuente, como el código abierto existente. Para obtener más información, consulta Cómo y cuándo Gemini cita fuentes.

Para evitar que se sugiera código que coincida con fuentes citadas, puedes modificar la configuración cloudcode.duetAI.recitation.maxCitedLength a 0 en un archivo settings.json:

"cloudcode.duetAI.recitation.maxCitedLength": 0

Usa acciones inteligentes

Para ayudarte a aumentar tu productividad y minimizar el cambio de contexto, Gemini Code Assist proporciona acciones inteligentes potenciadas por IA directamente en tu editor de código. Cuando selecciones el código en el editor de código, podrás ver y seleccionar opciones de una lista de acciones relevantes para tu contexto.

Para usar acciones inteligentes en tu código, sigue estos pasos:

  1. En el archivo de código, selecciona un bloque de código.

  2. Junto al bloque de código seleccionado, haz clic en bombilla Mostrar acciones de código.

    El ícono de bombilla de acciones inteligentes aparece después de seleccionar un bloque de código en Shell y Workstations.

  3. Selecciona una acción, como Generate unit tests.

    Gemini genera una respuesta que se basa en la acción que seleccionaste.

Vista previa: Usa transformaciones de código

Gemini Code Assist proporciona transformaciones de código, que te permiten seleccionar una parte de tu archivo de código y solicitar modificaciones en el código existente mediante instrucciones en lenguaje natural mediante un cuadro de texto intercalado.

Con las transformaciones de código, puedes hacer lo siguiente:

  • Genera líneas de comentarios para documentar tu código
  • Soluciona problemas con el código
  • Mejora la legibilidad del código
  • Cómo hacer que el código sea más eficiente

También puedes ver las fuentes de contexto de una respuesta generada en el panel Gemini: Chat.

Cómo indicarle a Gemini Code Assist con el cuadro de texto intercalado

El cuadro de texto intercalado te permite interactuar con Gemini Code Assist directamente en tu archivo de código.

Para abrir el cuadro de texto intercalado e indicarle a Gemini, sigue estos pasos:

  1. En el archivo de código, presiona Control + I (para Windows y Linux) o Comando + I (para macOS).

  2. Ingresa un mensaje, como Write a function to create a Cloud Storage bucket, y presiona Intro (para Windows y Linux) o Intro (para macOS).

    Gemini Code Assist genera el código en función de tu instrucción.

Ver la diferencia del código refactorizado

Con la vista de diferencias integrada en el cuadro de texto intercalado, puedes ver los cambios que Gemini sugiere y tu código original. Luego, puedes aceptar o descartar los cambios sugeridos.

Para ver la diferencia del código refactorizado del cuadro de texto intercalado, sigue estos pasos:

  1. En el archivo de código, selecciona una función y abre el cuadro de texto intercalado presionando Control + I (para Windows y Linux) o Comando + I (para macOS).

  2. Ingresa un mensaje, como Add comments, y presiona Intro (para Windows y Linux) o Intro (para macOS).

    Cuando Gemini genere los cambios de código en la función seleccionada, aparecerá la vista de diferencias.

    Fuentes de contexto enumeradas en el panel Gemini: Chat

  3. Para aceptar o descartar los cambios, haz clic en Aceptar o Descartar.

Cómo ver las fuentes de contexto de una respuesta generada

La función de visualización de contexto enumera los archivos de tu proyecto (las fuentes de contexto) que se usaron como referencia para generar respuestas a tus instrucciones. Saber qué archivos se usaron como referencias te ayuda a definir mejor tus instrucciones y obtener respuestas más específicas. Se muestran fuentes de contexto cada vez que usas el chat de Gemini.

Para ver las fuentes de contexto de la respuesta generada, en el panel Gemini: Chat, desplázate hasta que veas el fragmento Context Sources. Expande el fragmento para ver todas las fuentes de contexto.

Fuentes de contexto enumeradas en el panel Gemini: Chat

Usa comandos inteligentes

Los comandos inteligentes son comandos que puedes usar en el cuadro de texto intercalado para realizar acciones específicas en tu código.

Para obtener una explicación de todo el archivo de código con el comando inteligente /explain, sigue estos pasos:

  1. En el archivo de código, presiona Control + I (para Windows y Linux) o Comando + I (para macOS) para abrir el cuadro de texto intercalado.

  2. Presiona / para ver la lista de comandos inteligentes y sus descripciones.

  3. Seleccione /explain.

    Gemini genera una explicación de todo el archivo de código en el cuadro de texto intercalado.

  4. Opcional: Si quieres ver la respuesta generada en el panel de Gemini: Chat, haz clic en Ver en Chat.

Ver historial de instrucciones

El acceso al historial de instrucciones te ahorra tiempo cuando necesitas ingresar las mismas instrucciones en un archivo de código grande.

Para acceder al historial de instrucciones, en el archivo de código, abre el cuadro de texto intercalado presionando Control + I (para Windows y Linux) o Comando + I (para macOS) y, luego, Control + flecha hacia arriba (para Windows y Linux) o Comando + flecha hacia arriba (para macOS). Esto te permite alternar entre tus instrucciones más antiguas y reutilizarlas cuando sea necesario.

Mejora la legibilidad del código para hablantes no nativos de inglés

Si eres un hablante no nativo del inglés y usas aplicaciones de traducción, puedes usar el cuadro de texto intercalado para generar comentarios en otros idiomas.

Para convertir comentarios en inglés a otro idioma o agregar comentarios nuevos en otro idioma, sigue estos pasos:

  1. En el archivo de código, selecciona el código al que desees agregar comentarios.

  2. Para abrir el cuadro de texto intercalado, presiona Control + I (para Windows y Linux) o Comando + I (para macOS).

  3. Ingresa un mensaje, como Add spanish comments, y presiona Intro (para Windows y Linux) o Intro (para macOS).

    Gemini genera comentarios en el idioma que especificaste en la instrucción y ve las diferencias de estas sugerencias.

  4. Para aceptar o descartar estos cambios de tu código, haz clic en Aceptar o Descartar.

Cómo probar otros ejemplos de instrucciones

Después de leer la sección Genera código con instrucciones de este documento, prueba algunas de las siguientes instrucciones de ejemplo.

Obtén una explicación del código

  1. En el archivo de código, selecciona una función que quieras explicar.
  2. En el panel de Gemini Code Assist, ingresa la instrucción Explain this code to me.

    Gemini usa el código seleccionado como referencia y responde con una explicación de la función seleccionada.

Genera planes de prueba

  1. En el archivo de código, selecciona el código al que desees agregar pruebas de unidades.
  2. En el panel de Gemini Code Assist, ingresa la instrucción Write unit tests for my code.

Cómo obtener ayuda con la depuración de código

  1. En el archivo de código, selecciona el código que deseas depurar.
  2. En el panel de Gemini Code Assist, ingresa la instrucción Help me debug my code.

Haz que tu código sea más legible

  1. En el archivo de código, selecciona el código que desees que sea más legible.
  2. En el panel de Gemini Code Assist, ingresa la instrucción Make my code more readable.

    Si prefieres enfocarte en una parte específica de tu código, selecciona esa parte antes de indicarle a Gemini.

Problemas conocidos

En las siguientes secciones, se describen los problemas conocidos de Gemini Code Assist.

Las advertencias de consulta de licencias no persisten en las sesiones

Si las advertencias de recopilación de licencias no persisten en todas las sesiones, consulta los registros persistentes:

  1. Haz clic en Menú Menú > Ver > Salida.

  2. Selecciona Gemini Code Assist - Citations.

Problemas de conectividad en la ventana de salida de Gemini Code Assist

Si ves un error de conexión o algún otro problema de conectividad en la ventana de salida de Gemini Code Assist, prueba lo siguiente:

  • Configura tu firewall para permitir el acceso a oauth2.googleapis.com y cloudaicompanion.googleapis.com.

  • Configura tu firewall para permitir la comunicación a través de HTTP/2, que usa gRPC.

Puedes usar la herramienta de grpc-health-probe para probar la conectividad. Una verificación correcta da como resultado el siguiente resultado:

$ grpc-health-probe -addr cloudaicompanion.googleapis.com:443 -tls error: this server does not implement the grpc health protocol (grpc.health.v1.Health): GRPC target method can't be resolved

Si la verificación no es exitosa, se mostrará el siguiente resultado:

timeout: failed to connect service "cloudaicompanion.googleapis.com:443" within 1s

Para obtener más detalles, ejecuta lo siguiente antes de grpc-health-probe:

export GRPC_GO_LOG_SEVERITY_LEVEL=info

Gemini Code Assist y la puerta de enlace de JetBrains

Gemini Code Assist no se ejecuta a través de la puerta de enlace de JetBrains. Como resultado, Gemini Code Assist no se ejecuta en los IDE de Cloud Workstations que requieren la puerta de enlace de JetBrains para conectarse.

Enviar comentarios

Para dejar comentarios sobre tu experiencia, sigue estos pasos:

  1. En la barra de estado, haz clic en Gemini Code Assist y, en el menú Selección rápida, selecciona Enviar comentarios.

  2. En el formulario, completa los campos Título y Comentarios.

  3. Si quieres compartir tus registros de Skaffold o AI Companion, asegúrate de seleccionar las opciones Enviar registros de Skaffold o Enviar registros de AI Companion.

  4. Haz clic en Enviar comentarios.

¿Qué sigue?