Hasta hace dos años, las escuelas y universidades trabajaban duro para enseñar a los estudiantes lenguajes CC++ desde cero imprimiendo ‘Hello World’, pero ahora es cosa del pasado. Tras el lanzamiento de ChatGPT, el inglés surgió como el nuevo lenguaje de programación. Últimamente, un meme ha estado circulando en Internet que sugiere que los desarrolladores tardan más en depurar los códigos generados por ChatGPT.
También en Twitter, varios usuarios expresaron su decepción por lo difícil que se ha vuelto depurar el código creado por ChatGPT. Uno de los usuarios en Twitter dijo: «ChatGPT es bueno para la generación de código, pero genera códigos que requieren depuración, por lo que usarlo a ciegas sería una pérdida de tiempo».
Después de usar ChatGPT durante tanto tiempo en desarrollo, puedo decir
-> Dado que chatgpt tiene sesiones, a veces hacer su consulta en una nueva sesión puede ayudar
-> Chatgpt es bueno para la generación de código, pero también genera el código requerido para la depuración, por lo que usarlo a ciegas solo será una pérdida de tiempo pic.twitter.com/ozb6rPYWwm— Parth Verma (@v_parth7) 5 de julio de 2023
Sin embargo, ¿es esta razón suficiente para evitar que usen ChatGPT para codificar? La respuesta es un gran no, porque la codificación y el pensamiento al mismo tiempo rompen la cadena de pensamientos. Aunque lleva más tiempo, las personas seguirán usando ChatGPT para codificar porque les permite ser creativos, resolver problemas y descubrir nuevas ideas de codificación. Con ChatGPT, nuestra capacidad de pensamiento crítico no está limitada por la velocidad a la que podemos convertir pensamientos en códigos.
GPT 3.5 frente a GPT4
Es un hecho que incluso el programador humano más experto no siempre puede obtener el programa correcto en el primer intento. Los modelos de lenguaje grande (LLM) han demostrado ser muy hábiles para generar códigos, pero aún enfrentan dificultades cuando se trata de tareas de programación complejas. Para superar estos desafíos, los investigadores han explorado una técnica llamada autorreparación, en la que el modelo puede identificar y corregir errores en su propio código. Este enfoque ha ganado popularidad ya que ayuda a mejorar el rendimiento de los LLM en escenarios de programación.
Un trabajo de investigación, llamado ‘Desmitificación de la autorreparación de GPT para la generación de código’, cuantifica las capacidades de autodepuración de GPT-4 frente a otros LLM. Según el documento, GPT-4 tiene una capacidad emergente extremadamente útil que es más sólida que cualquier otro modelo: la autodepuración.
Uno de los hallazgos clave del documento fue que GPT-3.5 puede escribir un código mucho mejor dada la retroalimentación de GPT-4. La excepcional capacidad de autorreparación de GPT-4 proviene de su notable mecanismo de retroalimentación. A diferencia de otros modelos, GPT-4 posee una capacidad única para la autorreflexión efectiva, lo que le permite identificar y corregir problemas dentro del código. Esta característica distintiva lo distingue de sus contrapartes en el panorama de la IA.
En particular, el modelo de retroalimentación y el modelo de generación de código en GPT-4 no necesariamente tienen que ser iguales. Por ejemplo, puede depurar el código creado por GPT-3.5 usando GPT-4. En este caso, GPT-3.5 actúa como modelo de generación de código y GPT-4 actúa como modelo de retroalimentación. Este enfoque permite a GPT-4 mejorar y refinar continuamente sus capacidades de codificación, lo que lo convierte en una solución destacada en el campo de la programación impulsada por IA.
En una perspectiva interesante de la investigación, se vio que la retroalimentación autogenerada de GPT-4, junto con la retroalimentación proporcionada por un programador experimentado, aumentó la cantidad de programas reparados. Significa que el pensamiento crítico humano aún debe ser parte del proceso de depuración. AI puede ayudarlo con la depuración, pero al final, todo se reduce a sus habilidades.
¿Que sigue?
El código creado por ChatGPT será tan eficiente como el aviso. Si su mensaje no está a la altura, no podrá producir el resultado deseado. Las indicaciones son principalmente prueba y error, es decir, si una indicación no funciona, prueba con otra. En el futuro, existe la posibilidad de que, al igual que la codificación, ni siquiera necesite crear indicaciones por su cuenta. Los desarrolladores están creando modelos de código abierto que se pueden integrar en la parte superior de la API de ChatGPT que le brindarán las mejores indicaciones posibles.
Presentamos `gpt-prompt-engineer` ✍️
Un agente que crea avisos de GPT óptimos.
Simplemente describa la tarea y una cadena de sistemas de IA:
– Generar muchos avisos posibles
– Pruébalos en un torneo clasificado
– Devuelve el mejor mensajeY es de código abierto: https://t.co/nrivU2BWmn pic.twitter.com/rcnlJ5g5ZN
—Matt Shumer (@mattshumer_) 4 de julio de 2023
Un ejemplo de este agente de IA es el «ingeniero de solicitud de GPT». Es un agente de restricción, lo que significa que su comportamiento está altamente controlado, lo que genera mejores resultados que los agentes abiertos. Encadena muchas llamadas GPT-4 y GPT-3.5-Turbo que funcionan juntas para encontrar el mejor aviso posible. A menudo, incluso ha superado las indicaciones escritas por humanos.