Utilice la personalización del código de asistencia de Gemini Code

Este documento describe cómo usar la personalización de código de Gemini Code Assist y ofrece algunas prácticas recomendadas. Esta función le permite recibir recomendaciones de código basadas en bibliotecas internas, API privadas y el estilo de programación de su organización.

Antes de empezar

  1. Configurar Gemini Code Assist con una suscripción Enterprise .
  2. Configure la personalización del código Gemini Code Assist con una suscripción Enterprise .

Cómo utilizar la personalización de código

La siguiente tabla enumera las formas de utilizar la personalización del código Gemini Code Assist:

Forma Cómo activar Notas y recursos

Chat en lenguaje natural

Ingrese un mensaje en lenguaje natural en el chat de Gemini Code Assist en el IDE.

Considere lo siguiente:

  • El historial de chat no está disponible. Evite las consultas de varios pasos.
  • Puede solicitar más detalles sobre las fuentes, incluidos enlaces a fuentes específicas.
  • Si resalta o selecciona un código cuando envía un mensaje en el chat, Gemini Code Assist utiliza ese código para mejorar la personalización del código y la calidad del chat.

Para obtener más información, consulte Chat con Gemini Code Assist .

Generar código En la barra de selección rápida de su IDE, ya sea con o sin código seleccionado, presione Comando+Enter (en macOS) o Control+Enter . Para obtener más información, consulte Generar código con indicaciones .
Transformar código En la barra de selección rápida de su IDE, ya sea con o sin código seleccionado, ingrese /fix . Para obtener más información, consulte Generar código con indicaciones .
Autocompletar La personalización del código se activa automáticamente y proporciona sugerencias basadas en lo que escribes.

Considere lo siguiente:

  • La finalización de código requiere cierto nivel de confianza para proponer una sugerencia. Asegúrese de que haya una cantidad considerable de código disponible para que se recuperen los fragmentos relevantes.
  • La finalización de código verifica si tiene las bibliotecas necesarias para usar ciertos elementos de la función.

Para obtener más información, consulte Obtener finalizaciones de código .

Casos de uso y ejemplos rápidos

La siguiente tabla proporciona orientación y ejemplos sobre el uso de la personalización de código en casos de uso específicos:

Caso de uso Cosas que vale la pena probar
Escribir código nuevo

Pruebe lo siguiente para generar código en su IDE o en el chat de Gemini Code Assist:

  • Genere código que utilice términos que ya se mencionan en su base de código.
  • Pegue su código, como una firma funcional o código con comentarios TODO , y luego solicite a Gemini Code Assist que complete o reemplace los comentarios TODO con código. Agregue comentarios con una explicación del contexto.

Intente generar código con las siguientes indicaciones en el chat de Gemini Code Assist:

  • "Escribe una función principal donde se crea una conexión a DATABASE . Incluye comprobaciones de estado".
  • "Escribe una FUNCTION_OR_CLASS en la siguiente estructura: EXPLAIN_STRUCTURE ."

Después de generar algún código, intenta usar un mensaje de seguimiento para mejorarlo:

  • "Pruebe el comando /fix para ajustar el código generado; por ejemplo, errores de sintaxis".
  • "Agregar importaciones faltantes."
  • "Probar /fix el código generado por el chat".
Limpieza, simplificación y refactorización de código

Pruebe las siguientes indicaciones en el chat de Gemini Code Assist:

  • "¿Puedes fusionar IMPORTS_VARIABLES_OR_NOTE_EXPORTED_FUNCTIONS en este archivo?"
  • "¿Cómo simplificarías la función FUNCTION_NAME ?"
  • "¿Puedes fusionar FUNCTION_NAME_1 y FUNCTION_NAME_2 en una sola función?"
  • "¿Podrías incorporar algunas variables en FUNCTION_NAME ?"
  • "¿Podrías simplificar el nombre de las variables en la función FUNCTION_NAME ?"
Legibilidad

Pruebe las siguientes indicaciones en el chat de Gemini Code Assist:

  • "Escriba la función FUNCTION_NAME en menos líneas de código, si es posible".
  • "Agregar comentarios a la función FUNCTION_NAME ."
  • "Elimine los espacios innecesarios en la función FUNCTION_NAME ."
  • "Formatee la función FUNCTION_NAME de manera similar al resto del código".
Revisión de código

Pruebe las siguientes indicaciones en el chat de Gemini Code Assist:

  • "Divide el código en partes y explica cada parte utilizando nuestra base de código".
  • "¿Existen variables o palabras clave que podrían ser más breves y autoexplicativas?"
  • "¿Puedes darme un código útil del contexto REPOSITORY_NAME_PACKAGE_MODULE para este código?"
  • "¿Qué opinas de la función FUNCTION_NAME ?"
Depuración

Pruebe las siguientes indicaciones en el chat de Gemini Code Assist:

  • "Me aparece un error cuando intento hacer X/agregar Y. ¿Por qué?"
  • "¿Puedes detectar un error en la función FUNCTION_NAME ?"
  • "¿Cómo solucionarías la función FUNCTION_NAME dado este mensaje de error?"
Aprendizaje e incorporación

Pruebe las siguientes indicaciones en el chat de Gemini Code Assist:

  • "Divide este código en partes y explica cada una de ellas utilizando nuestra base de código".
  • "Muestra cómo llamar a la función FUNCTION_NAME ?"
  • "¿Muestra cómo ejecutar la función principal en el entorno ENVIRONMENT_NAME ?"
  • "¿Cuál es la mejora técnica clave que podemos implementar para que este código tenga mejor rendimiento?"
  • "Muéstrame la implementación de FUNCTION_OR_CLASS_NAME para lograr mejores resultados y agrega cuál es ese elemento específico"; por ejemplo, "Muéstrame la implementación de la función foo donde foo es el nombre de la función".
Migración

Pruebe las siguientes indicaciones en el chat de Gemini Code Assist:

  • "Dame una estrategia sobre cómo puedo migrar FILE_NAME de LANGUAGE_1 a LANGUAGE_2 ", por ejemplo, de Go a Python.
  • "Dada la función FUNCTION_NAME en el repositorio REPOSITORY_NAME , encuéntrame una función equivalente en el idioma LANGUAGE_NAME que pueda usar".

Pruebe el siguiente flujo de trabajo de transformación de generación de código o basado en chat usando indicaciones:

  1. "Tome el código FILENAME_COMPONENT ya escrito en LANGUAGE_1 y refactorícelo y migréguelo a LANGUAGE_2 ", por ejemplo, de Go a Python.
  2. Después de migrar algún código, intente lo siguiente:
    • Seleccione fragmentos más pequeños y use /fix para llevarlos al estado que desee.
    • Pruebe las siguientes indicaciones:
      • "¿Hay algo que se pueda mejorar?"
      • "Dame posibles puntos débiles".
      • "¿Cómo probarías este código si esa migración es correcta?"
Generando documentación

Pruebe las siguientes indicaciones en el chat de Gemini Code Assist:

  • "Resuma el código en el paquete o carpeta X y proporcione documentación para los cinco métodos más importantes".
  • "Generar documentación para FUNCTION_OR_CLASS_NAME ."
  • "Acortar la documentación preservando la información clave".
Generación de pruebas unitarias

Pruebe las siguientes indicaciones en el chat de Gemini Code Assist:

  • "Generar pruebas unitarias para FILENAME ."
  • "Agregue los casos de prueba más relevantes para la función FUNCTION_NAME ".
  • "Elimina los casos de prueba que creas que no aportan mucho valor".

Mejores prácticas

  • Utilice nombres de variables y funciones o fragmentos de código relevantes. Esto guía la personalización del código hacia los ejemplos más relevantes.
  • Utilice repositorios de índice que desee escalar y evite añadir funcionalidades obsoletas. La personalización del código facilita la escalabilidad según el estilo, los patrones, la semántica, el conocimiento y las implementaciones del código base. Ejemplos de repositorios inadecuados para escalar son las funcionalidades obsoletas, el código generado y las implementaciones heredadas.
  • Para casos de recuperación de código, utilice la función de generación de código en lugar de la función de autocompletado . Indique con un lenguaje como "Utilizando la definición de FUNCTION_NAME , genere exactamente la misma función" o "Genere la implementación exacta de FUNCTION_NAME ".
  • Tenga inclusiones o importaciones presentes en el archivo para el código que desea recuperar para mejorar el conocimiento contextual de Gemini.
  • Ejecute solo una acción por cada solicitud. Por ejemplo, si desea recuperar código e implementarlo en una nueva función, realice estos pasos en dos solicitudes.
  • Para los casos de uso en los que desea más que solo código (como explicación del código, plan de migración o explicación de errores), use la personalización de código para el chat, donde tiene una conversación con Gemini con su base de código en contexto.
  • Tenga en cuenta que la generación de modelos de IA no es determinista . Si no está satisfecho con la respuesta, ejecutar la misma instrucción de nuevo podría obtener un mejor resultado.
  • Tenga en cuenta que la generación de pruebas unitarias generalmente funciona mejor si abre el archivo localmente y luego, desde el chat, solicita generar pruebas unitarias para este archivo o una función específica.