Skip to main content

Ingeniería de mensajes para GitHub Copilot Chat

Siga estas estrategias para mejorar los Copilot resultados.

Un prompt es una solicitud que haces a GitHub Copilot. Por ejemplo, una pregunta que le haces a Chat de Copiloto o un fragmento de código que le pides a Copilot que complete. Además de la solicitud, Copilot usa contexto adicional, como el código del archivo actual y el historial de chat, para generar una respuesta.

Siga las sugerencias de este artículo para escribir mensajes que generen mejores respuestas a partir de Copilot.

Inicie general y, a continuación, obtenga información específica.

Al escribir una solicitud para Copilot, primero proporcione Copilot una descripción amplia del objetivo o escenario. A continuación, enumere los requisitos específicos.

Por ejemplo:

Copilot prompt
Write a JavaScript function that tells me if a number is prime

The function should take an integer and return true if the integer is prime

The function should error if the input is not a positive integer

Dar ejemplos

Use ejemplos para ayudar a Copilot comprender lo que desea. Puede proporcionar datos de entrada de ejemplo, salidas de ejemplo e implementaciones de ejemplo.

Por ejemplo:

Copilot prompt
Write a Go function that finds all dates in a string and returns them in an array. Dates can be formatted like:

* 05/02/24
* 05/02/2024
* 5/2/24
* 5/2/2024
* 05-02-24
* 05-02-2024
* 5-2-24
* 5-2-2024

Example:

findDates("I have a dentist appointment on 11/14/2023 and book club on 12-1-23")

Returns: ["11/14/2023", "12-1-23"]

Las pruebas unitarias también pueden servir como ejemplos. Antes de escribir la función, puede usar Copilot para escribir pruebas unitarias para la función. A continuación, puede pedir que Copilot escriba una función descrita por esas pruebas unitarias.

Dividir tareas complejas en tareas más sencillas

Si desea Copilot completar una tarea compleja o grande, divida la tarea en varias tareas simples y pequeñas.

Por ejemplo, en lugar de pedir Copilot que genere un rompecabezas de búsqueda de palabras, divida el proceso en tareas más pequeñas y pida Copilot que los realice uno por uno:

  • Escriba una función para generar una cuadrícula de 10 a 10 letras.
  • Escriba una función para buscar todas las palabras en una cuadrícula de letras, dada una lista de palabras válidas.
  • Escribe una función que use las funciones anteriores para generar una cuadrícula de letras de 10 por 10 que contenga al menos 10 palabras.
  • Actualice la función anterior para imprimir la cuadrícula de letras y 10 palabras aleatorias de esa misma cuadrícula.

Evita la ambigüedad

Evite términos ambiguos. Por ejemplo, no pregunte "qué hace esto" si "this" podría ser el archivo actual, la última Copilot respuesta o un bloque de código específico. En su lugar, sea específico:

  • ¿Qué hace la función createUser?
  • ¿Qué hace el código en la última respuesta?

La ambigüedad también se puede aplicar a las bibliotecas:

  • Si usa una biblioteca poco frecuente, describa lo que hace la biblioteca.
  • Si desea utilizar una biblioteca específica, establezca las declaraciones de importación en la parte superior del archivo o especifique qué biblioteca desea utilizar.

Indica el código pertinente

Si usa Copilot en el IDE para obtener sugerencias a medida que codifique, abra los archivos pertinentes y cierre los archivos irrelevantes. Copilot usará los archivos abiertos para comprender la solicitud.

Si usa Chat de Copiloto en el IDE, abra el archivo o resalte el código al que desea Copilot hacer referencia. También puede usar palabras clave para proporcionar manualmente el contexto a Chat de Copiloto. Por ejemplo, puede agregar el participante de chat de @workspace en VS Code o @project en los IDE de JetBrains. Consulte Hoja de referencia rápida de GitHub Copilot Chat.

Experimento e iteración

Si no obtiene el resultado que desea, itera en el símbolo del sistema e inténtelo de nuevo.

Si usa Copilot para obtener sugerencias al codificar, puede eliminar la sugerencia por completo y empezar de nuevo. También puede conservar la sugerencia y solicitar modificaciones.

Si usa Chat de Copiloto, puede hacer referencia a la respuesta anterior en la siguiente solicitud. O bien, puede eliminar la respuesta anterior y empezar de nuevo.

Mantener el historial relevante

Chat de Copiloto usa el historial de chat para obtener contexto sobre la solicitud. Para dar a Copilot solo el historial relevante:

  • Usar hilos para iniciar una nueva conversación sobre una nueva tarea
  • Eliminar las solicitudes que ya no son relevantes o que no te dieron el resultado deseado.

Siga los procedimientos recomendados de codificación.

Si no recibe las respuestas que desea al solicitar Copilot sugerencias o explicaciones en el código base, asegúrese de que el código existente sigue los procedimientos recomendados y es fácil de leer. Por ejemplo:

  • Usa un estilo de código y patrones coherentes
  • Usa nombres descriptivos para variables y funciones
  • Comenta el código
  • Estructura el código en componentes modulares con un alcance definido
  • Incluir pruebas de unidad

Use Copilot para ayudar al código a seguir los procedimientos recomendados. Por ejemplo, pida Copilot agregar comentarios o dividir una función grande en funciones más pequeñas.

Información adicional