Crea código con Gemini Code Assist para personas

En este documento, se describe cómo puedes usar Gemini Code Assist, un colaborador potenciado por IA en tu IDE, para ayudarte a hacer lo siguiente en VS Code, IntelliJ y otros IDE de JetBrains compatibles:

  • Proporcionar orientación para ayudarte a resolver problemas con tu código
  • Genera código para tu proyecto.
  • Recibir sugerencias intercaladas mientras escribes código

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

Para ayudarte a cumplir con cualquier requisito de licencia para tu código, Gemini Code Assist proporciona citas de fuentes cuando sus sugerencias citan directamente 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 da por sentado que tienes conocimientos prácticos de VS Code o IntelliJ y otros IDE de JetBrains compatibles. Si lo prefieres, también puedes explorar Gemini Code Assist en Cloud Shell y Cloud Workstations.

Antes de comenzar

  1. Antes de probar las funciones de Gemini Code Assist en tu archivo de código, asegúrate de que el lenguaje de programación del archivo sea compatible. Para obtener más información sobre los lenguajes de programación admitidos, consulta Lenguajes de programación admitidos.
  2. Si prefieres usar tu IDE detrás de un proxy, consulta Conexiones de red en Visual Studio Code.
  1. Antes de probar las funciones de Gemini Code Assist en tu archivo de código, asegúrate de que el lenguaje de programación del archivo sea compatible. Para obtener más información sobre los lenguajes de programación admitidos, consulta Lenguajes de programación admitidos.

  2. Si prefieres usar tu IDE detrás de un proxy, consulta Proxy HTTP.

Chatea con Gemini Code Assist

En esta sección, le indicas a Gemini Code Assist que proporcione una explicación de tu código existente.

Para obtener una explicación de tu código, sigue estos pasos:

  1. Abre el archivo de código.

  2. En la barra de actividades de tu IDE, haz clic en spark Gemini Code Assist.

  3. En el panel de Gemini Code Assist, ingresa la instrucción Explain this code to me y haz clic en send Enviar.

    Gemini usa el código de tu archivo de código como referencia a tu instrucción y responde con una explicación de tu 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 el archivo de código y, luego, solicitar Gemini.

Para obtener una explicación de tu código, sigue estos pasos:

  1. En tu IDE, abre el archivo de código.

  2. En la ventana de la herramienta Gemini Code Assist, ingresa la instrucción Explain this code to me y haz clic en Enviar.

Gemini Code Assist usa el código de tu archivo de código como una referencia a tu instrucción y responde con una explicación de tu código.

Si solo quieres una explicación de una parte específica de tu código, puedes seleccionar un código determinado y, luego, volver a solicitar Gemini Code Assist. Gemini Code Assist solo usará el código seleccionado como referencia para su respuesta generada.

Cuando Gemini Code Assist te proporciona código en su respuesta, puedes seleccionar las siguientes opciones que se indican al final de la respuesta:

  • Insertar en el cursor: Inserta el código generado en el archivo actual en la posición actual del cursor.

  • Insertar en archivo nuevo: Abre un archivo nuevo y, luego, inserta el código generado en él.

    Gemini enumera las acciones de código al final de una respuesta de código generada.

Estas opciones están disponibles cuando Gemini Code Assist identifica el idioma que se usa en tu bloque de código y si este idioma es compatible con tu IDE actual.

Cómo ver el historial de consultas

Si quieres volver a usar las instrucciones anteriores, puedes encontrarlas en el Historial de consultas de la ventana de herramientas Gemini Code Assist. Para ello, haz clic en schedule Mostrar historial de consultas.

Historial de consultas de Gemini en la ventana de herramientas.

Restablece el historial de chat

Gemini Code Assist usa el historial de chat para obtener contexto adicional cuando responde a tus instrucciones. Si el historial de chat ya no es relevante para lo que intentas lograr, puedes restablecerlo:

En el panel de Gemini Code Assist, haz clic en delete Restablecer chat.

En la ventana de herramientas Gemini Code Assist, haz clic en delete Borrar historial de conversaciones. Esto también borrará tu historial de consultas.

Botón para borrar el historial de conversaciones en la ventana de herramientas de Gemini.

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 tu archivo de código. También puedes seleccionar una parte de tu código y, luego, pedirle 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ómo solicitar Gemini Code Assist con transformación de código

La transformación de código te permite usar comandos o instrucciones en lenguaje natural en el menú Quick Pick para solicitar modificaciones en tu código y te proporciona una vista de diferencia para mostrar los cambios pendientes en tu código. Para solicitar a Gemini Code Assist que realice la transformación de código, sigue estos pasos:

  1. En el archivo de código, en una línea nueva, presiona Control + I (para Windows y Linux) o Comando + I (para macOS) para abrir la barra de selección rápida de Gemini Code Assist.

  2. En el menú, con el comando /generate, ingresa /generate function to create a Cloud Storage bucket y, luego, presiona Intro (para Windows y Linux) o Retorno (para macOS).

    Gemini Code Assist genera código con el comando /generate.

    Gemini Code Assist genera el código según tu instrucción en una vista de diferencias.

    Gemini Code Assist abre una vista de diferencias para mostrar el código generado.

  3. Opcional: Para aceptar estos cambios, haz clic en Aceptar.

Cómo solicitar Gemini Code Assist en un archivo de código con un comentario

Si lo prefieres, también puedes usar un comentario para indicarle a Gemini Code Assist que realice una acción en tu archivo de código. Para ello, sigue estos pasos:

  1. En una línea nueva, ingresa el comentario Function to create a Cloud Storage bucket y, luego, presiona Intro (para Windows y Linux) o Retorno (para macOS).

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

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

  3. Opcional: Para aceptar el código generado, presiona Tab.

Cómo enviar una instrucción a Gemini Code Assist con el código seleccionado por chat

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

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

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

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

    Por ejemplo, selecciona una función en tu código y, luego, ingresa la instrucción 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.

Cómo solicitar Gemini Code Assist con transformación de código

La transformación de código te permite usar comandos o instrucciones en lenguaje natural en el menú Quick Pick para solicitar modificaciones en tu código y te proporciona una vista de diferencia para mostrar los cambios pendientes en tu código. Para solicitar a Gemini Code Assist que realice la transformación de código, sigue estos pasos:

  1. En el archivo de código, en una línea nueva, presiona Alt+\ (para Windows y Linux) o Cmd+\ (para macOS) para abrir el menú Selección rápida de Gemini Code Assist.

  2. En el menú, con el comando /generate, ingresa /generate function to create a Cloud Storage bucket y, luego, presiona Intro (para Windows y Linux) o Retorno (para macOS).

    Función de generación de transformación de código en IntelliJ Gemini Code Assist

    Gemini Code Assist genera el código según tu instrucción en una vista de diferencias.

    Vista de diferencia de transformación de código en Gemini Code Assist de IntelliJ

  3. Opcional: Para aceptar estos cambios, haz clic en Aceptar cambios.

    Puedes usar los siguientes comandos de transformación de código en tu IDE:

    • /fix: Soluciona problemas o errores en tu código. Ejemplo: /fix potential NullPointerExceptions in my code.
    • /generate: Genera código. Ejemplo: /generate a function to get the current time.
    • /doc: Agrega documentación a tu código. Ejemplo: /doc this function.
    • /simplify: Simplifica tu código. Ejemplo: /simplify if statement in this code.

Cómo solicitar Gemini Code Assist en un archivo de código con un comentario

  1. En el archivo de código, ingresa el comentario Function to create a Cloud Storage bucket en una línea nueva.

  2. Para generar código, presiona Alt + G (para Windows y Linux) o Opción + G (para macOS). Como alternativa, puedes hacer clic con el botón derecho junto al comentario y seleccionar Generate Code.

    Gemini Code Assist genera el código debajo de tu comentario en forma de texto fantasma.

  3. Opcional: Para aceptar el código generado, presiona Tab.

Cómo enviar una instrucción a Gemini Code Assist con el código seleccionado por chat

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

  1. En la barra de actividades, haz clic en spark Gemini Code Assist para abrir la ventana de herramientas Gemini Code Assist.

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

  3. En el campo de texto de la ventana de herramientas Gemini Code Assist, ingresa una instrucción 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 Code Assist usa el código que seleccionaste como referencia y responde a tu instrucción.

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 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 Gemini Code Assist: Generar código.

  3. Haz clic en Gemini Code Assist: 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 (para Windows y Linux) o Retorno (para macOS).

    Ahora puedes usar el atajo de teclado asignado recientemente para generar código con Gemini Code Assist.

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

  1. Navega a settings IDE and Project Settings > Settings > Keymap > Gemini Code Assist.

  2. Haz clic con el botón derecho en Gemini Code Assist y selecciona Add Keyboard Shortcut.

  3. Ingresa la combinación de teclas que prefieras y, luego, haz clic en Aceptar.

  4. Haz clic con el botón derecho en Gemini Code Assist y selecciona Remove Alt+G (para Windows y Linux) o Remove Option+G (para macOS).

Ahora puedes usar tu nueva combinación de teclas para generar código en un archivo de código.

Cómo obtener finalizaciones de código

Mientras escribes código, Gemini Code Assist te ofrece sugerencias de código intercaladas, también conocidas como finalizaciones de código, que puedes aceptar o ignorar. Para obtener la finalización de código, sigue estos pasos:

  1. 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 Python, escribe def.

    Gemini Code Assist sugiere código en forma de texto fantasma.

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

  1. 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 Python, escribe def.

    Gemini Code Assist sugiere código en forma de una sugerencia intercalada.

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

  3. Opcional: Si prefieres usar una combinación de teclas diferente para aceptar la sugerencia intercalada, coloca el puntero sobre ella y haz clic en el menú desplegable Tab que aparece. Luego, selecciona el atajo que prefieras o haz clic en Personalizado para ingresar uno propio.

    Gemini proporciona un menú desplegable para cambiar el atajo y aceptar una sugerencia intercalada.

Opcional: Inhabilita la finalización de código

La finalización de código está habilitada de forma predeterminada. Si quieres inhabilitar la finalización de código, sigue estos pasos:

  1. En tu IDE, haz clic en Code (para macOS) o File (para Windows y Linux) y, luego, ve a Settings > Settings.

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

  3. Desplázate hasta encontrar la lista Duet AI: Inline Suggestions: Enable Auto y, luego, selecciona Desactivado.

    Esto desactiva las sugerencias intercaladas. Puedes presionar Control + Intro (para Windows y Linux) o Control + Intro (para macOS) para activar manualmente las sugerencias intercaladas.

En la barra de estado de tu IDE, haz clic en spark Gemini Code Assist: Active y selecciona Enable AI Code Completion.

Botón de finalización de código de Gemini en la barra de estado de IntelliJ.

Esto inhabilita el parámetro de configuración de finalización de código, y Gemini Code Assist ya no hace sugerencias intercaladas hasta que vuelvas a habilitar el parámetro de configuración.

Cómo usar acciones inteligentes

Para ayudarte a aumentar la productividad y, al mismo tiempo, minimizar el cambio de contexto, Gemini Code Assist proporciona acciones inteligentes potenciadas por IA directamente en tu editor de código. Cuando seleccionas tu código en el editor de código, puedes ver una lista de acciones relevantes para tu contexto y elegir alguna.

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

  1. En el archivo de código, selecciona una línea o un bloque de código.

  2. Haz clic con el botón derecho en el código seleccionado y selecciona una acción inteligente, como Generate unit tests.

    Si seleccionas la acción inteligente, Gemini Code Assist generará automáticamente una respuesta a la instrucción en la ventana de herramientas Gemini Code Assist.

Usa la corrección rápida de transformación de código

Si hay un error en tu código, Gemini Code Assist te brinda la opción de aplicar una solución rápida al error con la transformación de código.

Para aplicar una solución rápida en el archivo de código, sigue estos pasos:

  1. En el archivo de código, mantén el puntero sobre la línea de error con líneas onduladas y selecciona Quick Fix y, luego, /fix.

    Corrección rápida de transformación de código en el IDE

  2. Cuando se aplica la corrección rápida, aparece una vista de diferencias. Para aceptar estos cambios, haz clic en Aceptar.

  1. En el archivo de código, haz clic en el ícono de bombilla de error rojo, que indica un error en el código, y selecciona Corregir con Gemini.

    Opción de transformación de código para corregir con Gemini en el IDE.

  2. Cuando se aplica la corrección, aparece una vista de diferencias. Para aceptar estos cambios, haz clic en Aceptar.

Cómo obtener instrucciones con archivos específicos en tu lugar de trabajo con reconocimiento de la base de código local

El conocimiento de la base de código local te ayuda con sugerencias de código de alta calidad que son correctas sintácticamente y significativas semánticamente dentro del contexto más amplio de tu base de código, cuando especificas archivos para que Gemini Code Assist los use como contexto.

Para especificar archivos en tu instrucción de chat, escribe @ y selecciona los archivos que deseas especificar.

Especifica archivos con reconocimiento de la base de código local.

Para obtener una explicación sobre las diferencias entre dos archivos de tu base de código, sigue estos pasos:

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

  2. En el panel Gemini Code Assist, ingresa el mensaje Explain the difference between @YOUR_FILE_NAME_1 and @YOUR_FILE_NAME_2 y presiona Intro (para Windows y Linux), Retorno (para macOS) o Tab. También puedes hacer clic en el nombre del archivo en la lista para seleccionarlo. Si haces clic en el nombre del archivo, este se agregará al contexto de la instrucción y se abrirá en tu IDE.

    Gemini Code Assist responde a tu instrucción mientras usa los dos archivos que especificaste para el contexto. Gemini Code Assist también incluye los archivos que especificaste en Fuentes de contexto.

Ahora que especificaste esos archivos, puedes seguir haciendo preguntas o instrucciones adicionales en el mismo historial de chat, sin tener que volver a especificar los archivos.

Por ejemplo, en el panel Gemini Code Assist, ingresa el mensaje How can I improve YOUR_FILE_NAME_1? (sin el símbolo @) y presiona Enter (para Windows y Linux) o Return (para macOS).

Gemini Code Assist responde a tu consulta sobre el archivo que especificaste en la instrucción.

Opcional: Excluye archivos del contexto con un archivo .aiexclude

Puedes excluir archivos para que Gemini Code Assist no los considere para el contexto. Para ello, crea un archivo .aiexclude. Un archivo .aiexclude tiene una sintaxis similar a la de un archivo .gitignore, con las siguientes diferencias:

  • Un archivo .aiexclude vacío o inexistente no bloquea ningún archivo en su directorio ni en todos los subdirectorios.
  • Un archivo .aiexclude no admite la negación, en la que se antepone un signo de exclamación (!) a los patrones.
  • Un archivo .aiexclude coincide de manera codiciosa con el carácter *. Esto hará coincidir de manera indiscriminada los directorios y los archivos. Este archivo .aiexclude no diferencia entre ** o * en relación con las carpetas o los archivos.

Actualmente, solo se admite un solo archivo .aiexclude. Para configurar tu archivo .aiexclude, crea un archivo titulado .aiexclude en la raíz de la carpeta de tu lugar de trabajo.

Ejemplos

En los siguientes ejemplos, se muestra cómo puedes configurar un archivo .aiexclude:

  • Bloquea todos los archivos llamados apikeys.txt en el directorio del espacio de trabajo o debajo de él:

    apikeys.txt
    
  • Bloquea todos los archivos con la extensión .key en el directorio del espacio de trabajo o debajo de él:

    *.key
    
  • Bloquea solo el archivo apikeys.txt en el mismo directorio que el archivo .aiexclude, pero no en ningún subdirectorio:

    /apikeys.txt
    
  • Bloquea todos los archivos del directorio my/sensitive/dir y todos los subdirectorios. La ruta de acceso debe ser relativa al directorio raíz del lugar de trabajo.

    my/sensitive/dir/*
    

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

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

Para evitar que se te sugiera código que coincida con las fuentes citadas, haz lo siguiente:

  1. En la barra de actividades de tu IDE, haz clic en Administrar > Configuración.

  2. En la pestaña User de la ventana de configuración, navega a Extensions > Gemini Code Assist.

  3. Desplázate hasta encontrar Duet AI > Recitation: Max Cited Length.

  4. Establece el valor en 0.

    Gemini Code Assist ya no te sugiere código que coincida con las fuentes citadas.

Problemas conocidos

En esta sección, se describen los problemas conocidos de Gemini Code Assist:

  • Es posible que las respuestas del chat se truncen cuando incluyen una versión actualizada de un archivo abierto grande.

    Para solucionar este problema, selecciona una sección más pequeña de código y, luego, incluye una directiva adicional en la instrucción del chat, como only output the selected code..

  • Vim: No se pueden aceptar ni descartar sugerencias de generación de código, a menos que se esté 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 del IDE y Gemini. Este comportamiento es diferente del comportamiento no de Vim, en el que presionar Esc vuelve a activar Gemini.

  • Los intentos de acceso se agotan

    Si los intentos de acceso siguen agotando el tiempo de espera, intenta agregar la configuración cloudcode.beta.forceOobLogin a tu archivo settings.json:

     "cloudcode.beta.forceOobLogin": true
    
  • Las advertencias de recitación de la licencia no persisten entre sesiones

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

    1. Haz clic en Ver > Resultado.

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

    Puedes usar la herramienta 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

    Si la verificación no se realiza correctamente, se muestra 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
    

No hay problemas conocidos con Gemini Code Assist para IntelliJ y otros IDE de JetBrains compatibles.

Enviar comentarios

Para dejar comentarios sobre tu experiencia, sigue estos pasos:

  1. En la barra de estado, haz clic en spark 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 quieres compartir tus registros de Skaffold o AI Companion, asegúrate de seleccionar la opción Send Skaffold logs o Send AI Companion logs.

  4. Haz clic en Enviar comentarios.

  1. En la barra de estado, haz clic en spark Gemini Code Assist y, luego, en el menú, selecciona Enviar comentarios.

  2. En el campo de texto que se encuentra en la parte superior del formulario, ingresa tus comentarios.

  3. Si quieres compartir tus registros de Gemini Code Assist, asegúrate de seleccionar los archivos de registro.

  4. Haz clic en Enviar comentarios.

¿Qué sigue?