Un mensaje es una solicitud que se realiza a GitHub Copilot. Por ejemplo, una pregunta que haces a chat de Copilot, o un fragmento de código que 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, proporcione primero a Copilot una descripción amplia del objetivo o escenario. A continuación, enumere los requisitos específicos.
Por ejemplo:
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
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
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 a comprender lo que desea. Puede proporcionar datos de entrada de ejemplo, salidas de ejemplo e implementaciones de ejemplo.
Por ejemplo:
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"]
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"]
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 a Copilot que escriba una función descrita por esas pruebas unitarias.
Dividir tareas complejas en tareas más sencillas
Si desea que Copilot complete una tarea compleja o grande, divida la tarea en varias tareas sencillas y pequeñas.
Por ejemplo, en lugar de pedir a Copilot que generen un rompecabezas de búsqueda de palabras, divida el proceso en tareas más pequeñas y pida a Copilot para lograrlos 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 "esto" podría ser el archivo actual, la última respuesta Copilot 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 está utilizando Copilot en su IDE para obtener sugerencias mientras codifica, abra los archivos relevantes y cierre los irrelevantes. Copilot utilizará los archivos abiertos para comprender su solicitud.
Si está utilizando chat de Copilot en su IDE, abra el archivo o resalte el código al que desea que Copilot haga referencia. También puedes usar palabras clave para proporcionar manualmente contexto a chat de Copilot. Por ejemplo, puede agregar el participante de chat de @workspace en VS Code o @project en los IDE de JetBrains. Consulte Guía rápida de chat de GitHub Copilot.
Experimento e iteración
Si no obtiene el resultado que desea, itera en el símbolo del sistema e inténtelo de nuevo.
Si está utilizando Copilot para obtener sugerencias a medida que codifica, puede eliminar la sugerencia por completo y empezar de nuevo. También puede conservar la sugerencia y solicitar modificaciones.
Si utiliza chat de Copilot, puede hacer referencia a la respuesta anterior en su siguiente solicitud. O bien, puede eliminar la respuesta anterior y empezar de nuevo.
Mantener el historial relevante
chat de Copilot utiliza el historial de chat para obtener contexto sobre su solicitud. Para proporcionar 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 cuando solicita Copilot sugerencias o explicaciones en su base de código, asegúrese de que el código existente sigue las mejores prácticas 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 a que su código siga los procedimientos recomendados. Por ejemplo, pida a que agregue comentarios o que divida una función grande en funciones más pequeñas.
Información adicional
-
[Cómo usar GitHub Copilot: Mensajes, sugerencias y casos de uso](https://github.blog/2023-06-20-how-to-write-better-prompts-for-github-copilot/?ref_product=copilot&ref_type=engagement&ref_style=text) en el blog GitHub -
[Usando GitHub Copilot en tu IDE: consejos, trucos y mejores prácticas](https://github.blog/2024-03-25-how-to-use-github-copilot-in-your-ide-tips-tricks-and-best-practices/?ref_product=copilot&ref_type=engagement&ref_style=text) en el blog GitHub - Guía del desarrollador para la ingeniería de prompts y LLMs en el blog GitHub
-
[Iniciando GitHub Copilot Chat para transformarse en su asistente de IA personal para accesibilidad](https://github.blog/2023-10-09-prompting-github-copilot-chat-to-become-your-personal-ai-assistant-for-accessibility/?ref_product=copilot&ref_type=engagement&ref_style=text) en el blog GitHub