Computación
¿Inteligencia Artificial más humana?
Este tipo de programas podrÃa reducir la necesidad de leer largas notas cuando unas cuantas lÃneas nos podrÃan decir de qué habla un texto determinado. Esto, para personas que requieren tener mucha información fresca, serÃa formidable.CIUDAD DE MÉXICO (apro).-La ciencia de la Inteligencia Artificial (IA) ha avanzado considerablemente hoy dÃa. Por mucho tiempo parecÃa que la IA habÃa llegado a un punto de no-avance hasta que de pronto, llegaron las redes neuronales artificiales y de pronto, surgieron un número enorme de programas que atacaban toda clase de problemas reales. De alguna manera, a través de la imitación de las redes neuronales naturales (las que tenemos en los cerebros de las personas), al menos en algunos conceptos abstractos, podÃamos ahora analizar como los seres humanos hacen, muchas problemáticas.
Hay muchos problemas cotidianos que pueden ser atacados por la IA. Por ejemplo, si pudiésemos hacer un programa que hiciese resúmenes de noticias, serÃa formidable. Este tipo de programas podrÃa reducir la necesidad de leer largas notas cuando unas cuantas lÃneas nos podrÃan decir de qué habla un texto determinado. Esto, para personas que requieren tener mucha información fresca, serÃa formidable.
Otro tema, que no ha escapado a los programadores, es el de hacer software que pueda escribir programas para resolver problemas cotidianos, sin necesidad de que exista un programador. Dicho en otras palabras, el que hubiese un asistente electrónico al que le indicáramos qué queremos que haga la computadora, serÃa genial, porque no tendrÃamos que contratar a nadie y nuestros problemas del manejo de la información estarÃan probablemente resueltos.
Pues bien, en GitHub, un depósito de código de computadoras, que es parte de Microsoft, se liberó una versión beta de un programa que usa IA para asistir a los programadores. Se comienza escribiendo un comando, una petición de una base de datos, una petición quizás a una biblioteca API y entonces, el programa llamado "Copilot", tratará de interpretar la petición del usuario y escribirá un programa para ello.
Hay que decir que esto no es la primera vez que se intenta. En los años 1980s del siglo pasado, cuando nacÃa la Apple II, una computadora de 8 bits y con 64K de memoria, se vendÃa un programa llamado "The Last One", que prometÃa poder escribir automáticamente el código en Applesoft Basic, de manera que resolviese las dificultades de programación de los usuarios. La idea es sin duda fenomenal pero para el momento histórico de la Apple II, The Last One era demasiado ambicioso y la verdad es que estaba muy, pero muy limitado.
Pero regresando a Copilot, Alex Naka, un cientÃfico de una firma de biotecnologÃa, se ha dado la tarea de probar el software Copilot y ha dicho que la forma en que ahora él trabaja ha cambiado desde que ha usado este programa: "me permite usar menos tiempo en búsquedas de bibliotecas determinadas (como los API) o ejemplos en Stack Overflow". Y agrega: "se siente un poco como que mi trabajo se ha ido a ser un generador de código en lugar de discriminar el mismo".
Lo interesante es que el Sr. Naka ha encontrado que la IA que se usa en Copilot tiene un comportamiento colateral inesperado. "Hay ocasiones que se me ha pasado un error sutil y acepto la propuesta que me hace el software (para generar código) y pareciese que la IA comete errores en la programación de la misma manera en como lo hago yo cuando escribo software".
Cabe señalar que de acuerdo con investigadores de la Universidad de Nueva York, quienes se dedicaron a analizar el código generado por Copilot, hallaron que cuando se trata de problemas en donde la seguridad es crucial, el código de Copilot contenÃa un 40% de errores.
Es claro que este tipo de programas aún está en etapas tempranas de desarrollo. Es evidente que Copilot no puede -al menos por el momento- desarrollar toda clase de software y probablemente en términos reales aún sea muy limitado. Por ejemplo, sin importar qué tan avanzada sea la IA que use Copilot, no veo que sea fácil decirle que escriba un programa como Waze o Google Maps. Y sÃ, son programas muy complejos que requieren de mucha información de muchas fuentes además de una interacción en tiempo real con satélites (para ubicar dónde se encuentran los autos), pero al final del dÃa, habla de que este es un problema abierto y lo será por mucho tiempo.
Aún con estas dificultades iniciales, la creación de programas de computadora de forma automatizada tiene su propio atractivo. Hoy software como Copilot incluso nos da una lección sobre la problemática inesperada cuando estos asistentes para la programación se usan, esperando que resuelvan todos los problemas que les planteamos.
En cualquier caso, los programadores de carne y hueso no se quedarán sin trabajo en un corto o mediano plazo. Los programas que escriben programas están todavÃa lejos de ser una realidad, considerando la complejidad de las acciones que realizamos hoy con la computadora.
El enlace a Copilot aquÃ: https://copilot.github.com/
La historia original de Copilot aparece aquÃ: https://www.wired.com/story/ai-write-code-like-humans-bugs/