GitHub Copilot, ejemplos en Python: ¿Realmente nos ayuda a programar?

GitHub Copilot Python
Índice

¿Qué es GitHub Copilot?

¿Qué es GitHub Copilot?

A finales de junio, GitHub (propiedad de Mircosoft) anunció una nueva extensión para Visual Studio Code: Github Copilot que se ha convertido en el centro de atención en la comunidad de programadores desde entonces. Comercializado como un programador AI, el copilot de GitHub es más que un asistente de código normal o de autocompletado, ya que puede comprender mejor el contexto del código y puede completar todo el bloque de código o la función. Actualmente, es compatible con todos los lenguajes populares como Python, Javascript, Typecript, Ruby y Go.

GitHub Copilot usa OpenAI Codex

GitHub Copilot funciona con Codex, que es un modelo creado por OpenAI para código. Para los no iniciados, OpenAI es una startup que recientemente se ha vuelto popular por ofrecer avances en el campo de la AI año tras año. El año pasado lanzaron el modelo de lenguaje GPT-3 cuyas asombrosas capacidades ganaron popularidad viral en Internet incluso fuera de la comunidad de ML.

Incluso en ese momento, algunas personas podían usar GPT-3 para convertir el lenguaje natural en código. Sin embargo, todo esto fue bastante rudimentario, porque GPT-3 no fue entrenado explícitamente para generar códigos, sin embargo, mostró un atisbo del futuro.

A continuación puede ver a un usuario generando un modelo Keras usando GPT-3.

modelo Keras usando GPT-3

Esta vez OpenAI ha desarrollado Codex, una versión GPT que solo se especializa en convertir lenguaje natural en códigos. Codex ha recibido formación sobre el código de GitHub disponible públicamente. Su evaluación comparativa de rendimiento en la generación de código Python independiente a partir de cadenas de documentos se puede encontrar en este documento.

¿Cómo funciona GitHub Copilot?

¿Cómo funciona GitHub Copilot?

Github Copilot está disponible actualmente como una extensión solo para Microsoft Visual Code. Se afirma que el usuario solo necesita definir la función en un lenguaje sencillo y Copilot tiene la capacidad de convertirlo en código real.

Para hacerlo, Copilot intenta obtener una comprensión contextual del código que ha escrito utilizando el modelo del Codex en segundo plano y generar un código sugerido basado en él.

Pero hay que señalar que al final del día se trata de inteligencia "artificial". Por lo tanto, es posible que el código sugerido no sea exacto o que no funcione a veces, ya que el copilot no puede verificar / probar el código sugerido. (¡Así que ni siquiera vamos en la dirección de cómo puede robarnos el trabajo 🙂 !)

Ejemplos de GitHub Copilot

Este ejemplo muestra cómo Copilot produce el código para descomprimir y comprimir el archivo con solo leer los comentarios dados por el codificador.

GitHub CoPilot escribe código Tic Tac Toe

GitHub CoPilot escribe código Tic Tac Toe

En este interesante ejemplo, GitHub Copilot es capaz de producir el código Tic Tac Toe simplemente leyendo los comentarios escritos por el desarrollador.

Códigos de GitHub Copilot para obtener el precio de la criptomoneda

Códigos de GitHub Copilot para obtener el precio de la criptomoneda

Solo mire aquí con qué facilidad puede obtener un código para obtener el precio de una criptomoneda simplemente escribiendo sus requisitos en un comentario.

CoPilot obtiene datos Pokémon

CoPilot obtiene datos Pokémon

Si quieres escribir un código para obtener datos de Pokémon, siéntate y deja que Copilot lo haga por ti.

Speechless con Copilot Autocomplete

https://twitter.com/manekinekko/status/1412767981860425734?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1412767981860425734%7Ctwgr%5E%7Ctwcon%5Es1_&ref_url=https%3A%2F%2Fmachinelearningknowledge.ai%2Fgithub-copilot-examples-can-ai-actually-help-you-code%2F

Incluso nosotros nos quedamos sin palabras de cuán fácilmente Copilot autocompleta las líneas de códigos aquí.

Copilot escribe cuidadosamente etiquetas HTML

https://twitter.com/colbyfayock/status/1410056319466446848?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1410056319466446848%7Ctwgr%5E%7Ctwcon%5Es1_&ref_url=https%3A%2F%2Fmachinelearningknowledge.ai%2Fgithub-copilot-examples-can-ai-actually-help-you-code%2F

Este ejemplo de GitHub Copilot realmente muestra cómo puede cerrar etiquetas.

Copiloto da diferentes sugerencias

Este ejemplo de GitHub Copilot muestra que es lo suficientemente flexible como para ofrecer diferentes sugerencias a los programadores.

AI escribe código de aprendizaje automático

https://twitter.com/abhi1thakur/status/1410325529950097421?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1410325529950097421%7Ctwgr%5E%7Ctwcon%5Es1_&ref_url=https%3A%2F%2Fmachinelearningknowledge.ai%2Fgithub-copilot-examples-can-ai-actually-help-you-code%2F

Esto se está volviendo más intrigante ahora, en este ejemplo, Copilot está escribiendo código de aprendizaje automático. Es bueno para los científicos de datos que pueden centrarse en experimentos en la construcción de modelos y menos en escribir códigos.

No es necesario volver a escribir Regex

https://twitter.com/bencodezen/status/1410954879208656897?ref_src=twsrc%5Etfw%7Ctwcamp%5Etweetembed%7Ctwterm%5E1410954879208656897%7Ctwgr%5E%7Ctwcon%5Es1_&ref_url=https%3A%2F%2Fmachinelearningknowledge.ai%2Fgithub-copilot-examples-can-ai-actually-help-you-code%2F

Todos sabemos lo difícil que se vuelve escribir expresiones regulares incluso para cosas simples. Pero ahora no necesita preocuparse más porque CoPilot puede encargarse de ello.

Un ejemplo más de Autocompletar con CoPilot

Aquí otro ejemplo más donde puede autocompletar códigos al comprender el contexto de lo que está codificando.

CoPilot escribe código R

CoPilot también conoce la sintaxis de R y esta es otra buena noticia para los científicos de datos y los estadísticos que prefieren trabajar en R.

¿Cómo puedo conseguir Github Copilot?

Actualmente, hay un pequeño grupo de personas que pueden usar Copilot ya que es una fase de prueba solo por invitación. Pero puedes apuntarte a la lista de espera de Copilot para poder utilizarlo en el futuro. Copilot en lista de espera.

¿Qué se espera para el futuro de la programación?

El cuerpo oficial de GitHub mencionó claramente que Copilot no está diseñado para escribir código para desarrolladores. En cambio, está destinado a sugerir códigos alternativos basados ​​en lo que el usuario está trabajando, esto debe ser probado y revisado cuidadosamente.

“Si bien estamos trabajando arduamente para mejorar GitHub Copilot, el código sugerido por GitHub Copilot debe ser probado, revisado y examinado cuidadosamente, como cualquier otro código. Como desarrollador, siempre estás a cargo ".

Como discutimos anteriormente, Github Copilot es solo un modelo de lenguaje impulsado por OpenAI Codex que se especializa en código. Pero estos modelos de lenguaje no tienen la capacidad de "comprender" lo que se les está dando. No pueden proponer nuevas ideas o diseños. Simplemente convierten la entrada en salidas artificiales hasta el punto de que es indistinguible.

Y tú ¿Qué piensas sobre el desarrollo de Copilot?

dcaraballo

Creador de @PythonDiario, amante de la Tecnología y la Naturaleza. Programador Python, C# . NET

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir
White Monkey