Chat de GitHub Copilot

Completado

GitHub Copilot Chat es una característica avanzada del ecosistema de GitHub Copilot, diseñado para proporcionar a los desarrolladores un asistente interactivo de inteligencia artificial conversacional directamente dentro de su entorno de desarrollo. Permite a los desarrolladores tener conversaciones en lenguaje natural sobre su código, formular preguntas y recibir respuestas inteligentes y sugerencias en tiempo real. En esta unidad, tratamos:

  • Generación de código mediante el chat de GitHub Copilot.
  • Depuración mediante el chat de GitHub Copilot.
  • Obtención de explicaciones sobre el código mediante el chat de GitHub Copilot.
  • Uso de comandos de barra diagonal para realizar acciones con GitHub Copilot.
  • Uso de agentes personalizados de GitHub Copilot para mejorar las indicaciones.

Para acceder a Copilot en su entorno de desarrollo integrado (IDE), haga clic en el icono de chat de la barra de navegación izquierda.

Recorte de pantalla del chat.

El chat de Copilot de GitHub es beneficioso en determinados escenarios:

  • Generación de código complejo Al necesitar implementar algoritmos complejos, estructuras de datos o generar código reutilizable para patrones de diseño específicos, el chat de Copilot le ayudará a simplificar los procesos. Puede ayudar a crear expresiones regulares complejas, construir consultas SQL detalladas o desarrollar estructuras de datos avanzadas como una ordenación de burbujas en Python.

    Captura de pantalla de la generación de código mediante chat.

  • Ayuda en la depuración Al encontrar errores en el código, el chat de Copilot le resultará útil para analizar mensajes de error y sugerir posibles correcciones. Le ayudará a identificar errores lógicos y a proporcionar explicaciones paso a paso de las secciones que sean problemáticas del código. Una manera de lograr este resultado es mediante el chat en línea de Copilot resaltando el fragmento de código que contiene el error, haciendo clic con el botón derecho y seleccionando Copilot y, a continuación, en el chat en línea.

    Captura de pantalla de la depuración mediante chat de código seleccionado.

    Por ejemplo, podría preguntar: "Obtengo NullReferenceException con este método. ¿Me ayudas a depurarlo?"

    Captura de pantalla de la depuración mediante chat de código generado.

  • Explicaciones sobre el código El chat de Copilot también se puede usar para comprender mejor aquellos fragmentos de código que sean complejos. Puede dividir el código en términos más sencillos, explicar el propósito y la funcionalidad de código que sea desconocido y ofrecer información sobre los procedimientos recomendados y las posibles optimizaciones. Por ejemplo, podría preguntar: "¿Puedes explicar cómo funciona este código asincrónico/de espera en Python?"

    Captura de pantalla de las explicaciones del código mediante chat.

Cómo mejorar las respuestas del chat de GitHub Copilot

Es posible mejorar significativamente la calidad y relevancia de las respuestas del chat de GitHub Copilot con determinadas características clave. Profundicemos en ellas.

Referencias de ámbito

Para mejorar la precisión y relevancia de las respuestas proporcionadas por el chat de GitHub Copilot, es importante definir correctamente el ámbito de las preguntas a través de referencias. Así es cómo debe hacerlo:

  • Referencias de archivos: es posible especificar un archivo determinado en las preguntas agregando #file: antes del nombre de archivo.

    Captura de pantalla del archivo de ámbito de chat que hace referencia a la selección.

    Por ejemplo: en caso de trabajar con un archivo denominado controller.js, use el comando #file para seleccionarlo y hacer referencia a el directamente en la pregunta como #file:controller.js. Esta característica indica a Copilot Chat que se centre en el contenido de ese archivo al generar una respuesta.

    Captura de pantalla de la referencia del archivo de ámbito de chat.

  • Referencias de entorno: puede usar Copilot Chat junto con el terminal para obtener ayuda basándose en la salida del comando. Esto permite a Copilot ayudar con la depuración y proporcionar sugerencias basadas en lo que sucede en el terminal. Por ejemplo, preguntando "¿@terminal cómo se corrige este error?" permite a Copilot analizar la salida del terminal y sugerir soluciones pertinentes.

Comandos de barra diagonal

Los comandos de barra diagonal del chat de GitHub Copilot permiten especificar rápidamente la intención de la consulta. Con esto se mejorará significativamente la calidad de las respuestas que se reciban haciendo que las indicaciones sean más centradas. Aquí hay algunos comandos de barra diagonal usados habitualmente:

  • /doc: agrega comentarios al código especificado o seleccionado. Por ejemplo, puede escribir /doc seguido del código que desea documentar y Copilot genera los comentarios adecuados.

    Captura de pantalla de los comandos de barra diagonal /doc.

  • /explain: Proporciona explicaciones sobre el código seleccionado. Este comando es útil cuando necesita comprender lo que hace un fragmento de código determinado. Por ejemplo, /explain the #file:controller.js proporciona una explicación detallada de ese archivo.

    Captura de pantalla de los comandos de barra diagonal /explain.

  • /fix: Propone correcciones para problemas en el código seleccionado. En caso de tener problemas, resalte la sección problemática y use /fix para recibir sugerencias que ayuden a resolver el problema.

    Captura de pantalla de los comandos de barra diagonal /fix.

  • /generate: ayuda a generar código nuevo en función de sus requisitos. Por ejemplo, /generate code to find the root of a number in client.js crea una función para realizar la tarea.

    Captura de pantalla de los comandos de barra diagonal /generate.

  • /optimize: Analiza y sugiere mejoras del tiempo de ejecución o la eficacia del código seleccionado. Por ejemplo, /optimize the calcular method in controller.js se centra en mejorar el rendimiento de ese método específico.

    Captura de pantalla de los comandos de barra diagonal /optimize.

  • /tests: Crea automáticamente pruebas unitarias para el código seleccionado. Simplemente resalte el código y use /tests using Mocha para generar pruebas.

    Captura de pantalla de los comandos de barra diagonal /tests.

Selección de modelos y características premium

GitHub Copilot Chat ofrece diferentes modelos de inteligencia artificial para optimizar el flujo de trabajo de desarrollo. Algunos entornos proporcionan opciones de selección de modelos que permiten elegir entre distintos niveles de funcionalidad en función de sus necesidades específicas:

Modelos estándar (GPT-4o):

  • Proporcionar respuestas rápidas y confiables para la mayoría de las tareas de desarrollo
  • Consumo de 1 PRU por solicitud
  • Ideal para la asistencia rutinaria de programación, explicaciones de código y depuración básica
  • Ejemplos: Generación de funciones sencillas, ayuda de sintaxis, sugerencias básicas de refactorización

Modelos Premium (o1-preview, o1-mini):

  • Ofrecer funcionalidades de razonamiento mejoradas para problemas complejos
  • Consumir 2 PRU por solicitud (doble la tasa estándar)
  • Más adecuado para análisis sofisticados, algoritmos complejos y decisiones arquitectónicas
  • Ejemplos: Depuración avanzada de código multiproceso, diseño de algoritmo complejo, análisis de seguridad

Al trabajar con problemas desafiantes que requieren un razonamiento profundo, los modelos Premium pueden proporcionar un análisis más exhaustivo y soluciones completas. Sin embargo, tenga en cuenta el uso de PRU al seleccionar modelos para distintos tipos de tareas.

Nota:

El uso de modelos premium (o1-preview, o1-mini) consume 2 PRUs en lugar de 1 para la misma solicitud. Supervise las asignaciones mensuales y elija el modelo adecuado en función de la complejidad de las tareas. Para más información sobre el consumo y los límites de PRU, consulte la documentación de Solicitudes en GitHub Copilot.

Agentes de Copilot

Los agentes de GitHub Copilot son herramientas personalizadas que se compilan e integran con el chat de GitHub Copilot para proporcionar funcionalidades adicionales adaptadas a sus necesidades específicas. Además de los comandos de barra diagonal, se pueden usar agentes específicos dentro del chat de Copilot en el IDE para controlar diferentes tareas:

También puede usar la acción inteligente "/new" para generar un proyecto completamente nuevo desde cero en función de sus requisitos. Por ejemplo, puede pedir a Copilot que cree un nuevo proyecto con:

/new generate a new HTML file with pages and JavaScript for advanced calculations

Haga clic en “Crear área de trabajo” para proceder con la generación de código y tendrá el nuevo proyecto con el código solicitado.

  • @terminal: este agente resulta útil para preguntas relacionadas con la línea de comandos. Por ejemplo, podría pedirle que encontrase el archivo más grande de un directorio o que explique sobre el último comando ejecutado.

    Captura de pantalla del comando de agente

  • @vscode: use este agente para formular preguntas relacionadas con Visual Studio Code, como indicaciones sobre cómo depurar o cambiar la configuración del IDE.

    Captura de pantalla del comando de agente

    Gracias a un uso eficaz de estas herramientas y técnicas, mejorará significativamente la calidad de las respuestas que reciba del chat de GitHub Copilot, logrando que la experiencia de codificación sea más eficaz y productiva.

Nota:

Los agentes avanzados y las operaciones complejas pueden consumir más unidades de solicitud Premium (PRU). Las consultas simples suelen usar 1 PRU, mientras que el análisis complejo del área de trabajo o la generación de proyectos pueden usar 2-5 PRU. Para obtener más información sobre el consumo de PRU, las asignaciones mensuales y los límites de tarifas, consulte la documentación de Solicitudes en GitHub Copilot.

Uso compartido de comentarios en el chat de GitHub Copilot

La mayoría de los IDE que cuentan con la integración del chat de Copilot disponen de mecanismos integrados de comentarios. Por ejemplo, en Visual Studio Code, puede encontrar opciones de comentarios al principio de las sugerencias de Chat de Copilot de GitHub. Pase el ratón por encima de una sugerencia y debería ver los botones "Me gusta" y "No me gusta".

Captura de pantalla de los botones de pulgar hacia arriba como útil.

Haga clic en el pulgar hacia arriba para calificar una sugerencia como útil.

Captura de pantalla de pulgar hacia abajo como poco útil.

Haga clic en el pulgar hacia abajo para calificar una como poco útil.