Guía completa sobre agentes autónomos

Todo lo que necesitas saber sobre ellos y más (AutoGPT, BabyAGI, Camel...)

Guía completa sobre agentes autónomos

La inteligencia artificial puede utilizarse para realizar tareas muy específicas, como recomendar contenidos, redactar textos, responder preguntas e incluso generar fotografías que no se distinguen de la vida real.

Le dices a la IA que realice una tarea y la realiza. Muy sencillo.

Pero, ¿y si no quieres tener que idear todas las tareas para que las realice la IA? ¿Y si quieres un compañero de equipo en lugar de una simple herramienta? ¿Y si quieres que la IA piense por sí misma?

Que piense de verdad por sí misma.

Imagina que creas una IA a la que pudieras asignar un objetivo, aunque fuera algo tan vago como "Crea un juego de cartas para niños pequeños", y que la IA elaborara una lista de tareas, las realizara, añadiera otras nuevas en función de su progreso y continuara el proceso hasta alcanzar el objetivo.

Esto es exactamente lo que hacen los "agentes autónomos", que son la tendencia de más rápido crecimiento entre los desarrolladores de IA, aunque la mayoría de la gente no los conoce.

"Los agentes autónomos [inteligentes] son el punto final natural de la automatización en general. En principio, un agente podría utilizarse para automatizar cualquier otro proceso. Una vez que estos agentes lleguen a ser muy sofisticados y fiables, es fácil imaginar un crecimiento exponencial de la automatización en todos los campos e industrias."

https://twitter.com/tunguz


Soy Samu Sarmiento, embajador de thirdweb y desarrollador de software. Mi experiencia incluye trabajar con TypeScript y frameworks populares como React, Next.js y Node.js, así como construir aplicaciones Web 3.0 usando thirdweb y Alchemy Platform.

A 24 de Mayo de 2023, llevo aproximadamente dos meses investigando el mundo de la inteligencia artificial, machine learning, deep learning, modelos de lenguaje, agentes autónomos.... Y de ahí nace esta guía ;)

En los próximos días y semanas estaré trayendoles en mi Newsletter más notícias, actualizaciones, nuevos agentes o frameworks. Nuevos casos de uso. Y sobretodo muchos tutoriales y guías prácticas para que no pierdas mucho tiempo investigando y puedas poner en marcha tus ideas rápidamente.

Espero que les guste y la disfruten. Todo feedback es más que bienvenido, contacta conmigo en Twitter directamente ( @SamuSarmiento_ ).


¿Qué son los agentes autónomos?

Los agentes autónomos son programas, impulsados por la IA, que cuando se les da un objetivo son capaces de crear tareas para sí mismos, completar tareas, crear nuevas tareas, volver a priorizar su lista de tareas, completar la nueva tarea principal, y el bucle hasta que su objetivo se alcanza.

Lea la descripción anterior una vez más, porque aunque es simple, es salvaje.

"El futuro de los agentes autónomos pasa por que todo el mundo se convierta en manager".

Yohei Nakajima, creador de BabyAGI

Los agentes autónomos pueden diseñarse para hacer cualquier cantidad de cosas, desde gestionar una cuenta en las redes sociales, invertir en el mercado o idear el mejor libro infantil.

"¿Y esto es real? ¿Existen ahora mismo?"

Sí, ya sé que suena a ciencia ficción, pero funcionan y son reales. Si sabes programar, puedes hacer uno en unos minutos. Y esto es sólo el principio.

"Los seres humanos pierden una cantidad desmesurada de tiempo haciendo un trabajo que es tedioso y manual cuando podría ser realizado por ordenadores y liberarlos para actividades más creativas, o para hacer cosas que actualmente sólo pueden hacer los humanos. Los agentes autónomos permitirán hacer mucho más en mucho menos tiempo y, con un poco de suerte, pasar mucho menos tiempo delante de una pantalla".

https://twitter.com/ericabrescia

Las técnicas de programación y la IA necesarias para impulsar agentes autónomos son reales y extremadamente nuevas. Hay muchos proyectos de código abierto, como AutoGPT, BabyAGI y Jarvis de Microsoft, que son tendencia en Github y dentro de las comunidades y departamentos de IA. Y cada día salen nuevos y con más casos de uso.

En las dos primeras semanas de creación de bases de código de agentes autónomos de código abierto, casi 100.000 desarrolladores construyeron agentes autónomos, mejorándolos y llevándolos a sus límites, y eso sólo en las primeras semanas de invención de estos conceptos. El número de desarrolladores que trabajan con esta tecnología crece a un ritmo cada vez más rápido.

Popularidad del github de Auto-GPT

Fíjate en este experimento realizado en colaboración entre Stanford y Google, en el que crearon una ciudad virtual de 25 agentes autónomos y le dijeron a uno de ellos que organizara una fiesta de San Valentín.

Las personas simuladas se dedicaron a hablar entre ellas, a crear nuevos recuerdos y, finalmente, la mayoría se enteró de la fiesta de San Valentín y acudió a ella.

"Es una "AGI primitiva". Es sorprendente que simplemente envolviendo un LLM dentro de un bucle se consiga un agente autónomo capaz de razonar, planificar, pensar, recordar y aprender, todo ello por sí mismo. Demuestra el poder sin explotar y la flexibilidad de lo que los LLM pueden hacer si se envuelven en las estructuras y los estímulos adecuados. Todo el concepto tiene menos de un mes, así que estoy impaciente por ver cómo influyen en el mundo los agentes cada vez más sofisticados creados a partir de LLM cada vez más capaces".

Siqi Chen, fundador y director ejecutivo de Runway

Además de analizar su objetivo e idear tareas, los agentes autónomos pueden tener una serie de habilidades que les permitan completar cualquier tarea digital que un humano pudiera realizar, como por ejemplo

  • Acceso a navegar por Internet y utilizar aplicaciones

  • Memoria a largo y corto plazo

  • Control de su ordenador

  • Acceso a una tarjeta de crédito u otra forma de pago

  • Acceso a grandes modelos lingüísticos (LLM) como GPT para análisis, resúmenes, opiniones y respuestas.

Además, estos agentes autónomos tienen y tendrán todas las formas y tamaños. Algunos funcionarán entre bastidores, sin que el usuario sea consciente de lo que hacen, mientras que otros serán visibles, como en el ejemplo anterior, donde el usuario puede seguir cada "pensamiento" de la IA.

Ejemplo sencillo de cómo podría funcionar un agente autónomo

Supongamos que hay un agente autónomo que ayuda en la investigación, y queremos un resumen de las últimas noticias sobre un determinado tema, digamos "Noticias sobre las últimas actualizaciones de la IA de Google"

  • Le decimos al agente "Tu objetivo es averiguar las noticias recientes sobre las últimas actualizaciones de la IA de Google y luego enviarme un resumen".

  • Así que el agente mira el objetivo, utiliza una modelo como la GPT-4 de OpenAI que le permite entender lo que está leyendo, y se le ocurre su primera tarea. "Tarea: Buscar en google noticias relacionadas con [...]".

  • El agente busca en Google, encuentra los artículos más importantes y vuelve con una lista de enlaces. La primera tarea se ha completado.

  • Ahora el agente vuelve a mirar su objetivo principal (averiguar las noticias recientes sobre las últimas actualizaciones de la IA de Google y enviar un resumen) y lo que acaba de completar (obtener un montón de enlaces de noticias) y decide cuáles deben ser sus próximas tareas.

  • Se le ocurren dos nuevas tareas. 1) Escribir un resumen de la noticia. 2) Leer el contenido de los enlaces de noticias encontrados a través de google.

  • Ahora el agente se detiene un segundo antes de continuar, necesita asegurarse de que estas tareas están en el orden correcto. ¿Debería escribir primero el resumen? No, determina que la máxima prioridad es leer el contenido de los enlaces de noticias encontrados a través de google.

  • El agente lee el contenido de los artículos y, una vez más, vuelve a la lista de tareas pendientes. Piensa añadir una nueva tarea para resumir el contenido, pero esa tarea ya está en la lista de tareas pendientes, así que no la añade.

  • El agente comprueba la lista de tareas, el único elemento que queda es resumir el contenido que ha leído, así que lo hace. Te envía el resumen tal y como le pediste.

De BabyAGI por Yohei Nakajima

¿Por qué los agentes autónomos son una gran oportunidad?

Está bastante claro que pronto no sólo tendrás la opción de contratar humanos como empleados, sino que tendrás la posibilidad de contratar IA en forma de agentes autónomos.

Y no van a ser ni de lejos tan caros como la gente, no van a dormir, no van a renunciar y van a trabajar de forma extremadamente eficiente.

"Parte de la tesis cuando empecé Product Hunt en 2013 era la creencia de que la barrera para construir productos de software seguiría bajando, permitiendo a equipos más pequeños (o a una sola persona) construir más y más rápido que nunca. Esto nunca ha sido más cierto hoy en día, acelerado por la IA y los agentes autónomos. Esto genera ansiedad para algunos y oportunidades para otros que aprovechan esta tecnología para ampliar sus ideas con menos personal y capital. Al final, los consumidores se beneficiarán enormemente gracias al aumento de la competencia y la experimentación de nuevas soluciones a sus problemas."

Ryan Hoover, fundador de Weekend Fund y ProductHunt

¿Qué puedes hacer con esta información?

Hay dos oportunidades muy reales.

  1. Creas agentes autónomos y los pones a disposición de otros para que los contraten.

  2. Contratas agentes autónomos y ahora puedes permitirte ser más productivo en tu vida personal, o en los negocios.

Imagina un mundo en el que una persona crea una empresa con agentes autónomos en su equipo. Es probable que en algún momento de tu vida veas a un equipo de una sola persona hacer esto y alcanzar una capitalización de mercado de más de mil millones de dólares, algo que normalmente requiere que muchas personas trabajen juntas para lograrlo.

"Los agentes autónomos tienen el potencial de potenciar la producción de los pequeños creadores de contenidos y los miembros de la comunidad, especialmente aquellos con imaginación creativa. Será una bendición para muchos proyectos de Web3".

Jeffrey Zirlin, cofundador de Axie Infinity

Cómo construir y utilizar agentes autónomos

Ya estás preparado para lanzarte de cabeza al mundo de los agentes autónomos. Voy a darte los recursos que necesitas para empezar a construir o utilizar agentes autónomos por tu cuenta.

Aquí tienes un par de opciones diferentes.

  • Auto-GPT: Se trata de una popular opción de código abierto creada por Toran Richards. Incluye opciones para conectarse a Internet, utilizar aplicaciones, memoria a largo y corto plazo, etc.

    • AgentGPT: Crea y ejecuta un agente autónomo (AutoGPT) desde un sitio web, sin necesidad de iniciar sesión.
  • BabyAGI: Otra opción popular de código abierto, ésta creada por Yohei Nakajima. Aunque todavía no se conecta a Internet, es extremadamente elegante, con menos de 200 líneas de código.

  • Jarvis de Microsoft: Muy similar a Auto-GPT y BabyAGI, pero mucho más robusto y traído por Microsoft y HuggingFace.

  • Constrúyelo tú mismo: A continuación te dejaré un marco con el que embarcarte en un viaje para construirlo todo desde cero:

    • Inicializar Meta: Definir el objetivo para la IA.

    • Creación de tareas: La IA comprueba en su memoria las últimas X tareas completadas (si las hay) y, a continuación, utiliza su objetivo y el contexto de las tareas completadas recientemente para generar una lista de nuevas tareas.

    • Ejecución de tareas: La IA ejecuta las tareas de forma autónoma.

    • Almacenamiento en memoria: La tarea y los resultados ejecutados se almacenan en una base de datos vectorial.

    • Recogida de comentarios: La IA recoge feedback sobre la tarea completada, ya sea en forma de datos externos o de diálogo interno de la IA. Este feedback se utilizará para informar la siguiente iteración del Bucle de Proceso Adaptativo.

    • Generación de nuevas tareas: La IA genera nuevas tareas basándose en la información recopilada y en el diálogo interno.

    • Priorización de tareas: La IA vuelve a priorizar la lista de tareas revisando su objetivo y observando la última tarea completada.

    • Selección de tareas: La IA selecciona la tarea más importante de la lista priorizada y procede a ejecutarla tal y como se describe en el paso 3.

    • Iteración: La IA repite los pasos 4 a 8 en un bucle continuo, permitiendo que el sistema se adapte y evolucione en función de la nueva información, la retroalimentación y los requisitos cambiantes.

Definitivamente puedes hacerlo, no es tan aterrador como podría parecer. Algunas soluciones de software recomendadas son GPT-4 de OpenAI, la base de datos vectorial Pinecone y el framework LangChain.

Agentes autónomos populares

Los "AutoGPT", que aparecieron en Abril, están diseñados para automatizar tareas GPT-4, permitiendo la creación de agentes que completan tareas por ti sin ninguna intervención.

Los más populares son BabyAGI de @yoheinakajima y Auto-GPT de @SigGravitas .

Principales características:

  1. Asigna tareas/objetivos en los que trabajar automáticamente hasta completarlos

  2. Encadena varios modelos para colaborar en las tareas

  3. Acceso a Internet y capacidad para leer/escribir archivos

  4. Memoria para saber lo que se ha hecho

Auto-GPT

¿Cómo empezó?

Comenzó como un proyecto python de código abierto de https://twitter.com/SigGravitas

AutoGPT dispone de acceso a Internet, gestión de la memoria a largo y corto plazo, acceso, almacenamiento y resumen de archivos mediante GPT-3.5, generación de texto e integración con 11 Labs (generador de texto a voz de inteligencia artificial).

Características:

🌐 Acceso a Internet para búsquedas y recopilación de información

💾 Gestión de la memoria a largo y corto plazo

🧠 Instancias GPT-4 para la generación de textos

🔗 Acceso a sitios web y plataformas populares

🗃️ Almacenamiento y resumen de archivos con GPT-3.5

🔌Extensibilidad con plugins

Aquí te dejo una demo:

Cómo correr Auto-GPT en local

Lo primero tendrás que saber cómo ejecutar comandos en la terminal. Eso es todo.

Vas a necesitar:

Luego tienes que clonar el repo https://github.com/Significant-Gravitas/Auto-GPT (En el Readme.md tienes todas las instrucciones también)

git clone -b stable https://github.com/Significant-Gravitas/Auto-GPT.git
cd Auto-GPT

Verás un archivo llamado .env.template, pon tu OPENAI_API_KEY. A continuación, duplica el archivo, y cambia el nombre a sólo .env

Imagen

Una vez hecho esto, puede ejecutar el comando pip install -r requirements.txt. Esto descargará todos los paquetes de python. Recuerda que necesitas python descargado y ¡Ten docker funcionando! Yo uso docker desktop, y funciona perfectamente en windows y mac. Sólo necesita estar encendido.

No te preocupes que no necesitas descargar ningún contenedor ni nada.

Luego ejecutas python scripts/main.py y la terminal empezará a preguntarte. Puedes hacerlo en modo continuo si quieres que sea totalmente autónomo, o puedes sentarte ahí y aprobar cada acción tú mismo. Para el modo continuo: python scripts/main.py --continuous

¡Y eso es todo para ponerlo en marcha!

Los 10 Casos de uso más populares

  1. La máquina de hacer de todo

    Esta es una lista ToDo que se hace a sí misma. Sí, has leído bien. Pones una tarea en la lista, y se generará un agente GPT-4 para hacerla.

  1. AutoGPT para investigación de productos

  1. Utilizarlo como una IA que analiza el mercado para simulaciones de aprendizaje en línea

  1. Auto-GPT para la investigación de podcasts

  1. Market Research

  1. Cómo configurarlo en tu iPhone y utilizarlo para programar

  1. Ejecución de código. Esto muestra a AutoGPT leyendo y escribiendo su propio código y ejecutando scripts de python

  1. Crear aplicaciones

  1. Crea un sitio web desde cero.

    En menos de 10 minutos, AutoGPT hace un sitio web delante de sus ojos.

  1. AutoGPT Como analista de inversiones personales.

No importa si sabes programar o aún no sabes cómo, te animo a que te tomes unas horas para experimentar con esto. No es tan complejo ni tan difícil como puede parecer y cuanto antes te ensucies las manos más rápido vas a aprender sobre agentes autónomos.

"Como inversor, el uso de agentes autónomos para hacer el trabajo de analistas y asociados, o al menos sobrecargarlos, me entusiasma. Podrían programarse para buscar operaciones en determinadas condiciones, analizar a través de ciertos factores y, a continuación, preparar correos electrónicos personalizados para que yo los envíe con el fin de iniciar conversaciones."

Brayton Williams, cofundador de Boost VC

BabyAGI

Baby AGI era una idea sencilla, presentada en forma de código, ¡pero despertó la imaginación! Rápidamente vimos cómo la gente impulsaba este sencillo planteamiento en distintas direcciones, y creo que es en el debate donde se produce la magia. Tenemos mucho trabajo y mucho que aprender juntos.

Yohey Nakajima, creador de BabyAGI

El 26 de Marzo el señor Nakajima estaba jugando con la idea de construir un fundador de IA y compartió este prototipo en Twitter

El 28 de marzo dada la popularidad de este proyecto, hizo público el proceso - hacer que GPT4 escribiera un trabajo de investigación. Introducido este marco.

Presentación de "🤖 Agente autónomo impulsado por tareas".

Un agente que aprovecha GPT-4 de OpenAI, búsqueda vectorial Pinecone y LangChain para crear y realizar de forma autónoma tareas basadas en un objetivo.

"Paper": https://yoheinakajima.com/task-driven-autonomous-agent-utilizing-gpt-4-pinecone-and-langchain-for-diverse-applications/

Imagen

El sistema puede completar tareas, generar otras nuevas en función de los resultados y establecer prioridades en tiempo real. Demuestra el potencial de los modelos lingüísticos basados en IA para realizar tareas de forma autónoma dentro de diversas limitaciones y contextos. El agente autónomo utiliza GPT-4 para la realización de tareas, Pinecone para la búsqueda eficiente y el almacenamiento de datos relacionados con las tareas, y el framework de python LangChain para mejorar los procesos de toma de decisiones.

El sistema mantiene una lista de tareas para gestionarlas y priorizarlas. Crea nuevas tareas de forma autónoma en función de los resultados obtenidos y vuelve a priorizar la lista de tareas en consecuencia, lo que demuestra la capacidad de adaptación de los modelos lingüísticos basados en IA.

Imagen

Para completar las tareas, el sistema utiliza GPT-4 y las capacidades de LangChain, enriqueciendo y almacenando los resultados en Pinecone. Este enfoque integrado permite al agente de IA interactuar con su entorno y realizar tareas de forma eficiente.

El sistema genera nuevas tareas basándose en los resultados de las tareas completadas y las prioriza utilizando GPT-4. Esto permite al sistema adaptarse y responder a nueva información y prioridades.

El día 3 de Abril hizo open source el BabyAGI

Y de ahí nacieron ¡TONELADAS de grandes proyectos construidos por la comunidad! En este blog también hemos recogido ejemplos de estos proyectos

Casos de uso

  1. Búsqueda

  1. Copiloto

  1. INSIGHT : Una IA autónoma capaz de realizar investigaciones médicas

  1. NexusGPT: Simula un marketplace de freelance con más de 800 agentes autónomos con habilidades específicas

Camel AGI - Agentes comunicadores

Los ganadores del hackaton de Ben Tossell crearon CamelAGI, llevándolo al producto #1 en Product Hunt y con más de 700 estrellas en github.

Camel AGI es rol playing entre agentes autónomos en el navegador, creado por Ankur Singh y Anil Chandra

BabyAGI UI

BabyAGI UI es una interfaz de usuario de código abierto para BabyAGI. Se puede desarrollar y desplegar fácilmente.

  • Framework: Nextjs

  • Estilo/UI: Tailwindcss / RadixUI

  • Vector DB: Pinecone

  • Desarrollo de LLMs: LangChain

Demo

Enlace Github

Conclusión

En las últimas semanas, ha habido un aumento masivo en el uso de LLMs. En concreto, han surgido proyectos como AutoGPT, BabyAGI, CAMEL y Generative Agents. Mientras investigábamos e implementábamos estos proyectos, hemos intentado comprender lo mejor posible cuáles son las diferencias entre ellos y cuáles son las características novedosas de cada uno. Este blog es una explicación breve de lo que hemos aprendido.

Este espacio se mueve increíblemente rápido, más rápido que nada que hayas visto antes. Cada hora parece que hay nueva información, nuevos experimentos y nuevos lanzamientos. Entonces, ¿cómo mantenerse al día?

Yo te cubro. Acompáñame.

Si estás sentado pensando algo de lo siguiente, entonces tengo las soluciones perfectas para ti:

  • "Me gustaría estar al día de los nuevos desarrollos en agentes autónomos"

  • "Tengo una idea para un agente autónomo, ¡quiero compartirla con alguien y ver qué piensa!"

  • "He construido un agente autónomo, ¡me encantaría compartirlo con la gente!"

  • "Quiero invertir en gente que construya agentes autónomos"

  • "Quiero saber cómo implementarlo en mi día a día o en mi empresa"

Si esto te suena a ti, y se ha despertado tu curiosidad por los agentes autónomos, esto es lo que debes hacer a continuación.

  1. Sígueme en Twitter

  2. Suscríbete a mi Newsletter para no perderte las últimas noticias sobre Agentes autónomos, LLMs y productos potenciados por IA.