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 Cloud Code:

  • 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 conocimiento práctico de VS Code y que estás familiarizado con Google Cloud. Si lo prefieres, también puedes explorar Gemini Code Assist en Cloud Workstations, Cloud Code para IntelliJ y el Editor de Cloud Shell.

Antes de comenzar

  1. Si aún no lo hiciste, instala la extensión Gemini Code Assist + Cloud Code. Cloud Code se integra con Gemini Code Assist en tu IDE.
  2. Opcional: Si eliges clonar una muestra para las tareas de este documento, instala Git. Se requiere Git para copiar muestras en tu máquina.

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 IDE.

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.

Si prefieres seguir la explicación de Cómo programar con Gemini Code Assist directamente en tu IDE, haz clic en Iniciar VS Code y sigue los pasos de la explicación para conectarte a Google Cloud y activar Gemini Code Assist.

Lanzamiento de VS Code

De lo contrario, sigue estos pasos:

  1. Inicia tu IDE.

  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 permitas que Cloud Code abra el sitio web externo, haz clic en Abrir.

  4. Sigue las indicaciones para acceder a tu Cuenta de Google.

  5. Cuando se te pregunte si descargaste Cloud Code de Google, haz clic en Acceder.

    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 IDE, 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. Guarda la aplicación nueva en la ubicación que prefieras.

    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 IDE, 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 el IDE, haz clic en File (para Windows y Linux) o Code (para macOS) y, luego, ve a Settings > Keyboard Shortcuts.

  2. En la lista de combinaciones de teclas, desplázate hasta encontrar Cloud Code: Generate code.

  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 Code Assist.

Si deseas obtener más información sobre cómo cambiar combinaciones de teclas en tu IDE, consulta Keybindings para Visual Studio Code.

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 el IDE, abre un archivo de tu 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 el IDE, selecciona Código (para macOS) o Archivo (para Windows y Linux), y, luego, navega a Configuración > Configuración.

  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 VS Code.

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

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

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.

Es posible que las respuestas de Chat se trunquen cuando incluyan una versión actualizada de un archivo abierto grande

Para solucionar este problema, selecciona una sección de código más pequeña e incluye una directiva adicional en el mensaje de chat, como only output the selected code..

Vim: No se pueden aceptar ni descartar sugerencias de generación de código, a menos que estén en el modo de inserción

Cuando usas el complemento Vim en modo normal, no puedes aceptar ni descartar las sugerencias de código.

Para solucionar este problema, presiona i para ingresar al modo de inserción y, luego, presiona Tab para aceptar la sugerencia.

Vim: Comportamiento incoherente cuando se presiona Esc para descartar sugerencias

Cuando presionas Esc, se descartan las sugerencias de IntelliJ y Gemini. Este comportamiento es diferente del comportamiento que no es de VIP, en el que presionar Esc vuelve a activar Gemini.

Se agota el tiempo de espera de los intentos de acceso

Si se agota el tiempo de espera de tus intentos de acceso, agrega la configuración cloudcode.beta.forceOobLogin al archivo settings.json:

"cloudcode.beta.forceOobLogin": true

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 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

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?