Las nuevas herramientas de inteligencia fabricado, con ChatGPT al frente, revolucionarán la creación de texto, imágenes, vídeos o música. Su capacidad de escribir código ha tenido menos impacto, pero es igual de increíble. Como en otras disciplinas, en los últimos meses ha habido además artículos apocalípticos escritos por expertos titulados “El fin de la programación” o “ChatGPT reemplazará a los programadores en diez abriles”. La esencia, sin secuestro, está en los detalles: ¿qué es exactamente lo que es capaz de programar?
Primero, es capaz de resolver retos que merecen mucha repercusión. La revista Nature publicó este miércoles un artículo de investigadores de DeepMind (Google) donde agilizan un 70% la eficiencia de un operación del jerigonza C++ que llevaba décadas en uso: “Demostramos cómo la inteligencia fabricado puede ir más allá del estado contemporáneo del arte al descubrir rutinas hasta ahora desconocidas”, dice el artículo. “Lo que positivamente es interesante es que el sistema aprendió a escribir una serie de instrucciones sin que nadie le dijera cómo”, explica Armando Solar-Lezama, investigador del MIT (EE UU) que tuvo camino al artículo ayer de su publicación.
“Le dijeron qué instrucciones podía usar y empezó a probar combinaciones. Lo único que le decían es si estaban perfectamente o mal. Solo con eso el sistema pudo inferir cuáles eran las instrucciones que debía escribir y conectar para ocasionar el software”, añade el versado sobre AlphaDev, el software creado por DeepMind.
Estos avances prueban que la inteligencia fabricado (IA) supera retos complejos. ¿Pero hasta dónde puede impresionar sin intervención humana? El artículo de Nature explica que plantearon el problema como un deporte para la máquina, que había sido entrenada específicamente, y los humanos encima guiaban el proceso. Es importante, pero no una revolución absoluta. “La gentío está muy emocionada”, sigue Solar-Lezama. “Con estos modelos de IA hemos trillado que de pronto pueden hacer cosas que ayer se consideraban muy difíciles. Pero una pregunta que tenemos ahora es ver qué pueden hacer perfectamente y qué no. Basándonos en eso, ¿cómo podemos reimaginar la programación para hacerla más efectiva? Ya hay herramientas que empiezan a ayudar a los programadores, pero solo como un ayudante”.
Es como un aprendiz inteligente
Esa palabra de “asistente” o “ayudante” se repite a menudo en conversaciones con programadores y profesores de computación, como si la IA fuera un aprendiz vivo. Aunque la novedad sea impactante, pocos prevén un terremoto en el oficio. Como explica Brigitte Pientka, profesora de la Universidad McGill de Montreal (Canadá) y coautora de un artículo que muestra que ChatGPT sacaría un trascendental en un curso de inclusión a la programación: “ChatGPT puede ser sorprendente y engañosamente bueno para ocasionar programas cortos. Pero no es muy fiable por ahora. Diría que en el futuro será más importante poder evaluar y validar programas generados automáticamente para asegurar un nivel de seguridad y fiabilidad”. Los programadores, luego, seguirán siendo igual de necesarios, quizá con un rol diferente, según Pientka: “Opinar que ya no necesitamos informáticos gracias a ChatGPT es como opinar que gracias a las calculadoras y Excel no necesitamos matemáticos ni estadísticos”.
“Opinar que ya no necesitamos informáticos gracias a ChatGPT es como opinar que gracias a las calculadoras no necesitamos matemáticos”
Brigitte Pientka, Universidad McGill
La misma revista especializada que publicó en enero sobre el “fin de la programación”, difundió este fin de semana un artículo titulado “La IA no ayuda a los programadores”, del célebre profesor Bertrand Meyer. Como programador, escribe Meyer, le iría perfectamente un asistente que le mantuviera a guión y alerta cuando se desvía. Y sigue: “Pero eso no es lo que obtengo [de una IA]. Obtengo el equivalente de un diplomado engreído, inteligente y muy instruido, además educado y rápido para disculparse, pero completamente, y sin remedio, descuidado y poco fiable. De poco me sirve esa supuesta ayuda”.
En foros de programadores como Hacker News hay docenas de debates abiertos sobre cómo y cuánto ayuda ChatGPT y otras aplicaciones más específicas. La variedad de respuestas es enorme, pero el entusiasmo irremediable de hace unos meses ha decaído. Solar-Lezama lo pone en un contexto de una etapa más en la historia de la programación: “Va a cambiar la programación como ya ha cambiado en los últimos 20 abriles. Y en los anteriores 20. Hoy es diferente a cuando me gradué. Asimismo llegaron lenguajes de programación nuevos que permitían automatizar cosas que la gentío hacía a mano. Era sencillo reusar el código que alguno había escrito. Hoy puedo escribir programas extremadamente complejos en Python en 10 minutos que hace una reproducción hubieran tomado meses de un equipo egregio”, añade.
As society becomes more digital, it’s critical to improve the code powering the world’s computing.
Today in @Nature, we present AlphaDev, an AI system using reinforcement learning to discover enhanced computer science algorithms.
How does it work? 🧵 pic.twitter.com/dSedrv7eik
— Google DeepMind (@DeepMind) June 7, 2023
No ahorra tanto tiempo
La IA se ha convertido en ese asistente que permite aminorar poco el tiempo dedicado al trabajo de programar. Pero no en cantidades extraordinarias: “Al principio me sorprendió descubrir que ChatGPT daba perfectamente código del software”, dice Daniel Lemire, profesor de la Universidad de Québec (Canadá), que hace trabajos de programación avanzados. “Copilot [una herramienta de Microsoft] puede escribir secciones enteras de código, como si pudiera percibir mi mente. Pero a veces se equivoca. Es difícil de evaluar el tiempo que capital quizá un 10%. Escribir código es una pequeña fracción de programar, que incluye diseño, pruebas, evaluación comparativa, debates, especificaciones”.
“Va a cambiar la programación como ya ha cambiado en los últimos 20 abriles”
Armando Solar-Lezama, MIT
Por esos motivos, el trabajo de programador parece de momento una postura arreglado para el futuro. A pesar de los avances en automatización de software hasta ahora, el empleo de programador crece. La única certeza es que en el futuro habrá más código, en buena parte gracias a la agilidad que permite la IA, pero no por ello menos programadores. “Predigo que seguiremos contratando a más personas, al beneficio de los avances en IA”, asegura Lemire. “Los trabajos serán diferentes, incluso completamente nuevos, pero no habrá una caída en el corto plazo conveniente a la inteligencia fabricado. Los estudiantes que aspiran a una carrera en la industria del software deben persistir el rumbo”, añade.
La eficiencia de los programadores, no su sustitución, será la gran preeminencia de esta revolución, según Stephen Piccolo, profesor de la Universidad Brigham Young (EE UU): “Seguro que algunas empresas contratarán menos, al menos inicialmente, mientras se entienden las implicaciones de la tecnología. Pero en el futuro próximo, esta tecnología hará que los programadores sean más eficientes en ocupación de reemplazarlos”.
Otra de las aspiraciones repetidas que podría permitir a la IA es programar en jerigonza natural: pedir en gachupin a ChatGPT que escriba el código necesario para crear una aplicación, una web o un representación. Aunque poco podrá hacerse, además tendrá un difusión restringido por ahora. “Los lenguajes naturales están llenos de ambigüedades”, dice Emily Morgan, profesora de Gramática en la Universidad de California Davis y coautora de un artículo sobre cómo estos sistemas encuentran errores informáticos. “Al contrario, los lenguajes de programación tienen que ser inequívocos. Por eso, queremos que nuestros lenguajes de programación no sean ambiguos”.
Pero sí podrá pedirse en gachupin poco que ChatGPT convierta en código. El problema luego será inquirir o pulir los problemas: “Vamos alrededor de el uso de interfaces de jerigonza natural (como ChatGPT) para ayudar a ocasionar gran parte de nuestro código”, señala Morgan. Y explica: “Puedes pedirle a ChatGPT cosas como ‘genera una plantilla para un sitio web’, pero seguirá generando código o HTML. Necesitará que el jerigonza natural se traduzca a un jerigonza de programación inequívoco”.
Puedes seguir a EL PAÍS Tecnología en Facebook y Twitter o apuntarte aquí para aceptar nuestra newsletter semanal.
Suscríbete para seguir leyendo
Lee sin límites
Creditos a jordi perez
Fuente