Monday, February 26

Piensas que ChatGPT es de temer?… espera escuchar de Auto-GPT

Auto-GPT podría ser el próximo gran salto en inteligencia artificial que revolucionaría la forma cómo los seres humanos trabajamos hoy en día, incluso más de la revolución causada por ChatGPT hasta la fecha.

Crédito: Significan Gravitas @SigGravitas

Por Homer Díaz

Básicamente, Auto-GPT es una aplicación en la cual se asigna una determinada meta a un “AI Agent” o bot, y este, de forma autónoma, se vale del uso de GPT-4 y GPT-3.5 (para generación de texto, almacenamiento de archivos y resúmenes), se vale del uso del internet (para búsqueda y recolección de información) y además se vale del uso de otras herramientas (por ejemplo, Pinecone); todo esto con la finalidad de llevar a cabo las tareas que sean necesarias para alcanzar la meta que el usuario haya trazado.

Una vez alcanzada la meta fijada, Auto-GPT te puede entregar los resultados no solo en forma de texto, pero también te puede dar los resultados en forma de imágenes usando DALL-E o Stable Diffusion.

Veamos el siguiente demo para que visualices mejor lo señalado anteriormente y digieras fácilmente lo que explicaremos más adelante. Como se observa en el demo, antes que Auto-GPT se ponga en marcha de forma autónoma y termine lo que se le ha asignado, el usuario ingresa los siguientes inputs vía teclado:

  • Nombre (Name): AutoGPT-Demo.
  • Rol (Role): AutoGPT-Demo es una inteligencia artificial diseñada para que me instruya acerca de Auto-GPT.
  • Objetivos (Goals):
    • Realizar una búsqueda de Auto-GPT
    • Encontrar el GitHub de Auto-GPT y averiguar acerca de este proyecto.
    • Explicar qué es Auto-GPT y guardarlo en un archivo denominado autogpt.txt.
    • Terminar.

Antes de entrar más a detalle de cómo funciona Auto-GPT, veamos a grandes rasgos qué es ChatGPT. ChatGPT es un “AI chatbot” capaz de arrojar resultados convincentes en forma de texto, imágenes o gráficas en respuesta a los hoy famosos “prompts” que son elaborados por el usuario.

Los “prompts” son instrucciones u órdenes en forma de texto dadas a la inteligencia artificial vía teclado. Es importante que estos “prompts” sean claros y concisos de tal manera de obtener respuestas coherentes y relevantes.

Por ejemplo, digamos que deseas elaborar un plan para celebrar el aniversario de bodas de tus padres usando ChatGPT. Qué haces? Abres la aplicación ChatGPT y tipeas el siguiente “prompt“: “Ayúdame a elaborar un plan para celebrar las bodas de oro de mis padres”. Y en cuestión de segundos, ChatGPT arroja como resultado una lista de cosas que debes tener en cuenta para realizar tal evento.

Digamos que entre esa lista de cosas a tomar en cuenta, ChatGPT te recomienda lugares donde celebrarlo ya sea en tu casa, en un restaurante, en un hotel, etc. Digamos que el siguiente “prompt” que tipeas es: “dime los pros y cons de celebrarlo en un restaurante”. Y así sucesivamente vas tipeando “prompt” tras “prompt“, que a la larga se convierte en un proceso muy prolongado y quizás para algunos tedioso.

Qué es Auto-GPT?

Auto-GPT es una aplicación de acceso público y de código abierto (open source) desarrollado en Python que se encuentra aún en fase de experimentación. Este proyecto fue publicado en Github y ha ganando enorme interés en cuestión de días.

Este sistema continúa en ascenso a tal punto de haber sobrepasado en tiempo récord 100,000 stars (“likes”) en GitHub; lo cual lo convierte -en el área de inteligencia artificial- en el segundo proyecto de código abierto en haber logrado semejante proeza.

Este nuevo sistema fue desarrollado por el developer Thomas Bruce Richard quien está bajo los pseudónimos de ‘Torantulino‘ en Github y, ‘Significant Gravitas‘ en Twitter.

A diferencia de ChatGPT que fue desarrollado por OpenAi a partir de GPT-3.5; la aplicación Auto-GPT se vale de GPT-4 para ampliar la capacidad y funcionalidad de este. Cabe señalar que GPT-3.5 y GPT-4 pertenecen a la familia de GPT’s (Generative Pre-Trained Transformers), los cuales son una serie de modelos conocidos como “Large Language Models” (LLMs), estos a su vez son redes neuronales artificiales entrenadas con una enorme cantidad de datos de texto que les permiten entender y responder al lenguaje humano de una manera muy auténtica.

Cómo funciona Auto-GPT?

De acuerdo a la documentación proveída en el Github de Auto-GPT, la forma cómo funciona este sistema se resume a lo siguiente:

“This program, driven by GPT-4, chains together LLM ‘thoughts’, to autonomously achieve whatever goal you set.”

Es decir, gracias a GPT-4, Auto-GPT conecta entre si y ejecuta una serie de “thoughts” (o mejor dicho, una serie de tareas a seguir) que son generados precisamente por GPT-4 (LLM) hasta conseguir completar -de forma autónoma- cual sea la meta que tú hayas fijado.

Cabe señalar que “Chain-of-Thought Prompting“, es un técnica que mejora significativamente la capacidad que tienen los modelos neuronales “Large Language Models” (LLMs) para llevar a cabo razonamientos muy complejos.

En líneas generales, Auto-GPT es capaz de automatizar un determinado proyecto; que para completarlo usando ChatGPT, se requeriría de un ser humano para tipear por teclado “prompt” tras “prompt“, o mejor dicho tipear “tarea” tras “tarea” hasta la culminación de dicho proyecto.

Como habrás podido darte cuenta, una diferencia clave entre ChatGPT y Auto-GPT es la autonomía. Mientras que ChatGPT requiere de un ser humano para elaborar e ingresar vía teclado “prompt” tras “prompt“; Auto-GPT reemplaza al ser humano (al menos durante una gran parte de su funcionamiento) con un “AI Agent” quien se “comunica” constantemente con GPT-4 via el API de OpenAI.

El objetivo principal del AI Agent es llevar a cabo una serie de tareas que son generadas por GPT-4 (que en este marco de trabajo son definidos como una serie de “thoughts“) en repuesta a lo solicitado por el AI Agent.

Para poner en funcionamiento a Auto-GPT, un usuario ingresa -vía teclado- los siguientes inputs: un nombre (name), un rol (role) y una serie de hasta 5 objetivos (goals).

A continuación veamos dos demos adicionales. En el primer demo, a un “AI Agent” se le ha signado inventar una receta única para una festividad próxima a celebrarse. Y en el segundo demo, a un “AI Agent” se le ha asignado leer, evaluar, mejorar, codificar tests de pruebas y ejecutar el código en Python que se encuentra dentro del archivo basic_math.py.

Demo #1

En este primer demo, mostrado a continuación, vemos que los inputs ingresados por el usuario vía teclado son:

  • Nombre (AI name): Chef-GPT.
  • Rol (AI role): Chef-GPT es una inteligencia artificial diseñada para navegar el internet en busca del próximo evento o festividad con la finalidad de inventar una receta única y exclusiva que vaya en consonancia con tal festividad.
  • Hasta 5 objetivos específicos (Goals): inventar una receta única y exclusiva que vaya en consonancia con el evento encontrado, guardar la receta resultante en un archivo y por último terminar el proceso.

Los ‘thoughts‘, como habrás podido ver en el video del demo, no son otra cosa más que los famosos ‘prompts‘ que se generan -de forma automática- hasta completar la meta trazada.

En el video se observa que Chef-GPT (el AI Agent creado en el demo) va ejecutando un plan de acción, el cual desglosa en ‘thoughts‘, ‘reasoning‘ y ‘criticism‘; estos 3 últimos te informan qué es exactamente lo que Chef-GPT está haciendo y por qué lo está haciendo.

En el demo mostrado arriba, el primer ‘thought‘ o tarea a realizar es:

  • “buscaré qué eventos se avecinan para dar con uno apropiado y así crear una receta única”.

El ‘reasoning‘ es el “por qué” o la lógica detrás del ‘thought’. En este ejemplo el ‘reasoning’ es:

  • “el hecho de encontrar un próximo evento, me ayudará a dar con una receta interesante y relevante al evento”.

En el ‘criticism“, Chef-GPT expresará de manera “crítica” -en caso sea necesario- algunas preocupaciones y limitaciones en torno a lo que se esté realizando.

Como puedes ver en el demo, Chef-GPT toma una serie de medidas de forma autónoma para cumplir con la meta que se le ha asignado, es decir, como dijimos líneas arriba: “un AI Agent diseñado para navegar el internet en búsqueda del próximo evento o festividad con la finalidad de inventar una receta única y exclusiva que vaya en consonancia con tal festividad“.

Al final del demo, Chef-GPT crea una receta a base de quinoa -en el cual incorporó ingredientes sostenibles y ecológicos- para conmemorar el “Día Mundial de la Tierra” a celebrarse cada 22 de abril. .

Demo #2

Veamos ahora otro demo -realmente impresionante- de la versión más actualizada de Auto-GPT que ha sido publicado en Twitter por Significant Gravitas (developer de Auto-GPT). Esta versión actualizada de Auto-GPT está integrado con la aplicación ElevenLabs para que el AI Agent se “exprese” en lenguaje hablado.

En este segundo demo se crea un “AI Agent” llamado “Self-Improvement-GPT” a quien se le ha asignado el rol de “leer, evaluar, mejorar, codificar tests de pruebas y ejecutar el código que se encuentra dentro del archivo basic_math.py“. A “Self-Improvement-GPT” se le ha especificado 5 “goals”, uno de los cuales es: “improve basic_math.py” (mejorar el código dentro del archivo basic_math.py).

Al final de todo el proceso, “Self-Improvement-GPT” encuentra un error de sintaxis en la palabra “radious” que se encuentra dentro de la función “def calc_circunference()”, realiza la corrección y guarda todos los cambios realizados en el archivo basic_math.py.

Qué se dice en las redes acerca de Auto-GPT?

Ethan Mollick, renombrado catedrático de la universidad ‘The Wharton School of the University of Pennsylvania’, comenta que, a pesar que Auto-GPT aún no está del todo bien pulido por ser una herramienta prácticamente nueva, funcionaría muy pronto a la perfección.

Andrej Karpathy, ex Director de Inteligencia Artificial en Tesla y PhD de Stanford, toma como ejemplo Auto-GPT y opina que, en términos generales, los AutoGPTs se convertirían en el próximo gran avance tecnológico en cuanto a “prompt engineering” se refiere.

“ChatGPT es una locura. Pero Auto-GPT está alocando a todos en el internet”.

Por cierto, ChatGPT es cosa del pasado. Auto-GPT es lo más novedoso hoy en día”, Greg Isenberg.

Para el año 2025, ‘AI Agents‘ autónomos estarán en cada aspecto de nuestras vidas“, Sully.

Si piensas que ChatGPT es de temer, espera hasta que escuches acerca de Auto-GPT!“, Alvin Foo

Auto-GPT podría ser el próximo gran salto en inteligencia artificial“, Lior.

Auto-GPT está tomando por asalto el internet. Está por todos lados“, Sully.

Requisitos para instalar Auto-GPT

Los requisitos para su instalación son Python 3.10 o posterior, OpenAi API key y Pinecone API key (opcional).

Pinecone es una base de datos vectorial que le provee a Auto-GPT lo que se conoce como “long-term memory“. En otras palabras, el AI Agent puede almacenar y recuperar -dentro de una vasta cantidad de datos- información relevante relacionada al rol u objetivos que tú hayas trazado.

En la mayoría de los casos, almacenamiento local será suficiente para uso personal. Pinecone u otras bases de datos vectoriales solo serán necesarias en ambientes de producción.

Puedes instalar y probar Auto-GPT yendo a este enlace de GitHub: github.com/Torantulino/Auto-GPT, además puedes unirte a la comunidad en GitHub y contribuir con mejoras como lo vienen haciendo muchos developers.

3 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *