Examen del chat en línea de GitHub Copilot, las acciones inteligentes y el chat rápido

Completado

Además de la vista Chat, GitHub Copilot Chat proporciona varias otras maneras de interactuar con el programador de pares de IA. Estos incluyen chat en línea, acciones inteligentes y chat rápido.

Chat insertado

Una de las características clave del Chat de GitHub Copilot es responder a preguntas insertadas a medida que se codifica. Esto le permite aprovechar la eficacia de la inteligencia artificial directamente dentro del editor de código, con una interrupción mínima del flujo de trabajo de desarrollo.

La característica de chat en línea solo es accesible cuando un archivo está abierto en el editor. Hay varias maneras de abrir una sesión de chat en línea:

  • Seleccione Editor en línea chat en el menú Chat de Copilot.
  • Use un método abreviado de teclado: Ctrl+I.
  • Haga clic con el botón derecho en el editor de código, seleccione Copilot en el menú contextual y, a continuación, seleccione Editor Inline Chat (Chat en línea del editor).

Captura de pantalla que muestra cómo acceder al chat insertado desde el menú de Copilot en Visual Studio Code.

Puede usar una sesión de chat en línea para hacerle preguntas a Copilot a medida que escribe o itera el código.

Al abrir una sesión de chat insertado, se presenta la siguiente interfaz en el Editor.

Captura de pantalla que muestra cómo acceder al chat insertado mediante teclas de acceso rápido en Visual Studio Code.

Considere el caso siguiente:

  • Está desarrollando una aplicación de C# que procesa una lista numérica. Los datos se procesan en lotes de 100.
  • Use el fragmento de código siguiente para crear una lista de 100 enteros aleatorios entre 1 y 1000 que puede usar para las pruebas.
// create a list of 100 random number between 1 and 1000
List<int> numbers = new List<int>();
Random random = new Random();
for (int i = 0; i < 100; i++)
{
    numbers.Add(random.Next(1, 1000));
}

El código funciona bien. Sin embargo, ¿qué ocurre si cambian los requisitos? ¿Qué ocurre si necesita asegurarse de que la lista no incluya números duplicados?

Para actualizar el código mediante acciones de autocompletar de GitHub Copilot, debe hacer lo siguiente:

  1. Elimine el código existente.
  2. Cree un nuevo comentario que refleje sus necesidades actualizadas.
  3. Use GitHub Copilot para generar un nuevo fragmento de código a partir del comentario actualizado.
  4. Revise las sugerencias y seleccione la mejor opción.

Por suerte eso no es necesario. Una mejor solución es usar el Chat de GitHub Copilot para sugerir las actualizaciones de código necesarias.

Puede usar una sesión de chat insertado para sugerir una actualización de código como se indica a continuación:

  1. Resalte el fragmento de código que desea actualizar.
  2. Presione Ctrl + I para abrir el chat insertado.
  3. Pregunte al Chat de GitHub Copilot cómo completar la actualización.
  4. Revise las sugerencias y seleccione la mejor opción.

En este caso, podría preguntar: Update this code to ensure that numbers doesn't include any duplicates

Si le gustan las actualizaciones de código propuestas, puede seleccionar Aceptar y continuar la codificación.

Captura de pantalla que muestra la actualización sugerida del chat insertado en Visual Studio Code.

Si no le gustan las actualizaciones propuestas, puede pedir al Chat de Copilot que genere otra sugerencia seleccionando el icono Volver a ejecutar.... El icono Volver a ejecutar se muestra como una flecha circular que aparece debajo del cuadro de texto del símbolo del sistema.

Si vuelve a ejecutar el símbolo del sistema y sigue sin obtener los resultados que necesita, pruebe a actualizar el mensaje con contexto adicional. El Chat de Copilot genera mejores sugerencias cuando la solicitud es clara, concisa y precisa. Puede elegir Descartar para cerrar el chat en línea sin realizar ningún cambio.

Acciones inteligentes

Algunas tareas son tan comunes que se pueden automatizar. El Chat de GitHub Copilot incluye acciones inteligentes que le permiten completar determinadas tareas sin tener que escribir una indicación. Las acciones inteligentes son acciones predefinidas que puede ejecutar directamente desde el editor de Visual Studio Code para realizar tareas comunes de codificación de forma rápida y sencilla.

Están disponibles las siguientes acciones inteligentes:

  • Explicación: la acción Explain genera una descripción del lenguaje natural del código seleccionado. Esto puede ser útil para comprender el propósito y la funcionalidad de un fragmento de código. La acción Explain es especialmente útil si está trabajando con código desconocido o necesita explicar el código a otros usuarios.
  • Corrección: la acción Fix sugiere una corrección para el código seleccionado. Esto puede resultar útil si se produce un error o problema en el código y necesita instrucciones sobre cómo resolverlo. El Chat de Copilot puede sugerir cambios en variables, estructuras de control o llamadas de función que podrían resolver el problema.
  • Revisar y comentar: la acción Review and Comment proporciona una revisión de código del código seleccionado. Esto puede ser útil para identificar posibles problemas, mejorar la calidad del código y garantizar que se siguen los procedimientos recomendados. La acción Review and Comment puede ayudarle a identificar errores, cuellos de botella de rendimiento y vulnerabilidades de seguridad en el código.
  • Generar documentos: la acción Generate Docs crea documentación para el código seleccionado. Esto puede ser útil para documentar el código base, especialmente si está trabajando en un proyecto con varios colaboradores o necesita compartir el código con otros usuarios.
  • Generar pruebas: la acción Generate Tests crea pruebas unitarias para el código seleccionado. Esto puede ser útil para garantizar la exactitud y confiabilidad del código, especialmente si está trabajando en un proyecto con una lógica compleja o funcionalidad crítica.

Para acceder a las acciones inteligentes, haga clic con el botón derecho en un fragmento de código en el editor y seleccione la acción deseada en el menú contextual de Copilot.

Captura de pantalla que muestra cómo acceder a acciones inteligentes en Visual Studio Code.

Una vez más, consideremos la aplicación de números primos.

En la sección anterior, el chat en línea sugirió el código siguiente para asegurarse de que numbers no incluye duplicados:

// create a list of 100 random numbers between 1 and 1000
List<int> numbers = new List<int>();
Random random = new Random();
while (numbers.Count < 100)
{
    int randomNumber = random.Next(1, 1000);
    if (!numbers.Contains(randomNumber))
    {
        numbers.Add(randomNumber);
    }
}

Aunque este código garantiza una colección de elementos únicos, podría haber oportunidades de mejora.

Puede usar la acción inteligente Revisar esto para comprobar las selecciones de código. Para usar la acción inteligente Revisar esto:

  1. Seleccione un fragmento de código que necesite revisión. En este caso, el código que genera la lista de números aleatorios.

  2. Seleccione Revisar esto en el menú contextual de Copilot.

  3. Revise las actualizaciones sugeridas y seleccione Aceptar para aplicar los cambios.

Para el fragmento de código que genera números aleatorios, la acción inteligente Revisar esto sugiere lo siguiente:

  • Inicializar List<int> numbers con una capacidad de 100 para evitar varios cambios de tamaño durante el rellenado.
  • Usar HashSet<int> en lugar de List<int> para búsquedas más rápidas al comprobar si hay duplicados.

En este caso, la acción inteligente Revisar esto le lleva a usar HashSet<int> en lugar de List<int> para mejorar el rendimiento.

// create a list of 100 random numbers between 1 and 1000
HashSet<int> numbers = new HashSet<int>();
Random random = new Random();
while (numbers.Count < 100)
{
    int randomNumber = random.Next(1, 1000);
    if (!numbers.Contains(randomNumber))
    {
        numbers.Add(randomNumber);
    }
}

int sum = addPrimeNumbersInNumericList(numbers);
Console.WriteLine(sum);

Aunque el uso de HashSet funciona de manera eficaz para garantizar una colección de elementos únicos, la actualización crea un nuevo problema. El método addPrimeNumbersInNumericList espera List<int> como entrada, pero el código actualizado crea HashSet<int>. Esto da como resultado el siguiente error de compilación:

Recorte de pantalla que muestra un error de compilación en Visual Studio Code.

Afortunadamente, puede usar la acción inteligente Corregir para corregir el error. Para usar la acción inteligente Corregir :

  1. Haga clic con el botón derecho en el fragmento de código que debe corregirse. En este caso, el código subrayado en rojo.

  2. Seleccione Corregir en el menú contextual de Copilot.

  3. Revise la corrección sugerida y seleccione Aceptar para aplicar los cambios.

La acción inteligente Fix genera una o varias sugerencias para corregir un error. En este caso, una de las sugerencias usa el método ToList() para convertir HashSet en List dentro de la llamada a addPrimeNumbersInNumericList. El código resultante tendrá un aspecto similar al siguiente fragmento de código:

// create a list of 100 random numbers between 1 and 1000
HashSet<int> numbers = new HashSet<int>();
Random random = new Random();
while (numbers.Count < 100)
{
    int randomNumber = random.Next(1, 1000);
    if (!numbers.Contains(randomNumber))
    {
        numbers.Add(randomNumber);
    }
}

int sum = addPrimeNumbersInNumericList(numbers.ToList());
Console.WriteLine(sum);

Como siempre, revise la sugerencia proporcionada por Copilot Chat. Puede haber mejores soluciones. Puede seleccionar Aceptar para actualizar el código con la corrección propuesta.

Chat rápido

La tercera opción que proporciona el Chat de GitHub Copilot para las interacciones de chat es el Chat rápido.

Puede usar la característica Chat rápido del Chat de GitHub Copilot cuando quiera tener una conversación rápida e interactiva con la inteligencia artificial. Esto puede ser útil cuando está intentando resolver un problema, necesita ayuda para comprender un fragmento de código o si desea realizar una lluvia de ideas. Está diseñado para sentirse como si estuviera chateando con un desarrollador, lo que la convierte en una excelente herramienta para la resolución de problemas de colaboración.

Para abrir una ventana de chat rápido, puede presionar Ctrl+Mayús+Alt+L en el editor de Visual Studio Code o puede abrir Chat rápido desde el menú Chat de Copilot.

Captura de pantalla que muestra cómo acceder al Chat rápido en Visual Studio Code.

Resumen

Chat de GitHub Copilot proporciona varias maneras de interactuar con el programador de pares de IA, como chat en línea, acciones inteligentes y Chat rápido. Estas características permiten formular preguntas, obtener sugerencias de código y realizar tareas de codificación comunes de forma rápida y sencilla.