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 ayudarte a hacer lo siguiente en Cloud Code:

  • Proporciona orientación para ayudarte a resolver problemas con tu código.

  • Genera un código para tu proyecto.

  • Recibe sugerencias intercaladas mientras codificas.

Gemini no usa tus instrucciones ni sus respuestas como datos para entrenar sus modelos. Para obtener más información, consulta Cómo 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 fuente cuando sus sugerencias citas directamente de una fuente específica. Para obtener más información sobre cómo y cuándo Gemini cita fuentes, consulta Cómo te ayuda Gemini a generar código y citas de fuentes.

Este documento está dirigido a desarrolladores de todos los niveles de habilidades. Se supone que tienes conocimientos prácticos 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 Cloud Shell Editor.

Antes de comenzar

  1. Instala la extensión de Cloud Code si aún no lo has hecho. Cloud Code se integra a 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 la plataforma con la API de Cloud AI Companion habilitada en tu IDE.

Si seleccionas un proyecto de Google Cloud sin la API de Cloud AI Companion habilitada, 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 Code with Gemini Code Assist directamente en tu IDE, haz clic en Launch VS Code y sigue los pasos de la explicación para conectarte a Google Cloud y activar Gemini Code Assist.

Inicia VS Code

De lo contrario, sigue estos pasos:

  1. Inicia el IDE.

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

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

  3. Cuando se te solicite permitir 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.

    Ahora estás conectado a Google Cloud.

Luego, 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ú Gemini Code Assist, selecciona Select Gemini Code Assist project.

  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 funciones de Gemini Code Assist, abre una aplicación o crea una de ejemplo en la siguiente sección.

Opcional: Crea una aplicación de muestra

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

  1. En tu IDE, abre la paleta de comandos. Para ello, presiona Control + Mayúsculas + P (en 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 aplicación Python (Flask): Guestbook.

  4. Guarda la aplicación nueva en tu ubicación preferida.

    Una notificación confirma que se creó tu 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 Gemini Code Assist y chatear con Gemini Code Assist para obtener una explicación de 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 Gemini Code Assist.

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

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

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

Restablecer historial de chat

Gemini Code Assist usa el historial de chat para brindar contexto adicional cuando responde tus mensajes.

Si tu historial de chat ya no es relevante para lo que intentas 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 el mensaje de ejemplo # Function to create a Cloud Storage bucket dentro de un archivo de Python. También puedes seleccionar una parte de tu código y, luego, solicitar ayuda a Gemini Code Assist a través de la función de chat y recibir y aceptar o rechazar sugerencias de código mientras escribes código.

Solicita 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 Explorer > src > frontend y abre el archivo front.py.

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

  3. Para generar código, presiona Control + Intro (en Windows y Linux) o Control + Intro (en 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 Tab.

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 en Code (para macOS) y, luego, navega a Settings > Keyboard Shortcuts.

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

  3. Haz clic en Cloud Code: Generate Code y, luego, en edit Change Keybinding.

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

  5. Presiona Intro (en Windows y Linux) o Return (en macOS).

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

Si quieres obtener más información para cambiar los accesos directos en tu IDE, consulta Vinculación de teclas para Visual Studio Code.

Enviar solicitud a Gemini Code Assist con el código seleccionado a través del chat

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

  1. En tu IDE, abre un archivo en tu proyecto que contenga 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 Gemini Code Assist para abrir el panel Gemini Code Assist.

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

  4. En el campo de texto del panel Gemini Code Assist, ingresa un mensaje para el código seleccionado.

    Por ejemplo, selecciona una función en tu código y, luego, ingresa 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 que seleccionaste 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 de código intercalado 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 Explorer > src > frontend y abre el archivo front.py.

  2. En el 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 el código.

Opcional: Inhabilita las sugerencias intercaladas

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

  1. En tu IDE, selecciona Code (para macOS) o File (para Windows y Linux) y, luego, navega a Settings > Settings.

  2. En la pestaña Usuario del cuadro de 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 (en Windows y Linux) o Control + Retorno (para macOS) para activar de forma manual las sugerencias intercaladas.

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

Gemini proporciona información de citas cuando cita directamente en detalle 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 las fuentes citadas, puedes modificar el parámetro de configuración cloudcode.duetAI.recitation.maxCitedLength por 0 en un archivo settings.json:

"cloudcode.duetAI.recitation.maxCitedLength": 0

Cómo usar acciones inteligentes

Para ayudarte a aumentar tu productividad y, al mismo tiempo, minimizar el cambio de contexto, Gemini Code Assist proporciona acciones inteligentes con tecnología de IA directamente en tu editor de código. Cuando seleccionas el código en el editor de código, puedes ver y elegir 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 la 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 Generar pruebas de unidades.

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

Prueba otros ejemplos de instrucciones

Después de leer la sección Cómo generar código con instrucciones de este documento, prueba alguna de las siguientes indicaciones de ejemplo.

Obtén una explicación del código

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

    Gemini usa el código que seleccionaste 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 deseas agregar pruebas de unidades.
  2. En el panel Gemini Code Assist, ingresa el mensaje Write unit tests for my code.

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

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

Haz que tu código sea más legible

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

    Si prefieres enfocarte en una parte específica de tu código, selecciona la que prefieras antes de enviar una solicitud 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 de gran tamaño

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

Vim: No se pueden aceptar ni descartar las sugerencias de generación de código, a menos que se use 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 Vim, en el que si presionas Esc, se vuelve a activar Gemini.

Las advertencias de recitación de licencias no persisten en todas las sesiones

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

  1. Haz clic en Ver > Salida.

  2. Selecciona Gemini Code Assist - Citas.

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 el 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 gRPC usa.

Puedes usar la herramienta de grpc-health-probe para probar la conectividad. Una verificación correcta genera 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

Una verificación incorrecta da como resultado el siguiente resultado:

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

Para obtener más detalles, ejecuta lo siguiente antes del 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, luego, en el menú Selección rápida, selecciona Enviar comentarios.

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

  3. Si deseas compartir tus registros de Skaffold o AI Companion, asegúrate de seleccionar la opción Enviar registros de Skaffold o Enviar registros de AI Companion.

  4. Haz clic en Enviar comentarios.

¿Qué sigue?