Primero hubo modelos LLM y ahora tenemos agentes y programas autónomos capaces de realizar tareas complejas sin intervención humana. ¿Qué sabemos sobre ellos? ¿Y están preparados para cambiar la forma en que hacemos negocios?
En 2022, AMC lanzó una de las mejores series de ciencia ficción de este siglo, una animación de corta duración llamada Pantheon, basada en cuentos del autor Ken Liu ( The Hidden Girl and Other Stories ). La historia sigue a una niña de 14 años llamada Maddie Kim, una niña introvertida que un día descubre que su difunto padre ha sido transformado en una UI (inteligencia cargada), esto envía a Maddie a una red de engaños y conspiraciones, mientras empresas y Los gobiernos de todo el mundo compiten para crear el primer agente autónomo completamente funcional. ¿El final resulto? Una singularidad y el colapso del mundo tal como lo conocemos.
Aparte de algunos de los aspectos más dramáticos de Pantheon, la historia es casi profética, estamos en 2023 y parece que este es un año que pasará a la historia como el año de la inteligencia artificial. Un día no sabíamos hasta qué punto la IA formaba parte de nuestra vida diaria y al día siguiente vemos cientos de artículos e hilos en las redes sociales sobre excelentes modelos de lenguaje y lo que están logrando. Estamos viendo a todos los gigantes tecnológicos abandonar cualquier proyecto en el que estuvieran trabajando y poner la IA en primer plano.
Puede que OpenAI haya marcado el camino, pero todo el mundo quiere una parte del pastel, incluso las pequeñas empresas emergentes. Hace unos meses, parecía imposible ejecutar un LLM en algo que no fuera una granja de servidores, pero aquí estamos con cientos de competidores ejecutando modelos derivados de LLaMA con una fracción de los recursos de los gigantes tecnológicos.
Y eso sin tener en cuenta el ejército de pequeñas empresas que utilizan API para trabajar con modelos grandes. No sé cuántos datos procesa OpenAI diariamente, pero con la cantidad de errores de "demasiadas solicitudes" que nuestro equipo ha enfrentado al trabajar con GPT-3.5, es seguro decir que están casi a su capacidad actual.
¿Cuál es el próximo paso? ¿Quién ganará esta carrera armamentista? Según un empleado de Google, las probabilidades favorecen a los pequeños desarrolladores y a la comunidad de código abierto. Sería un gran error centrarse en los peces gordos y perder de vista algunas de las implementaciones de IA más interesantes y poderosas provenientes de comunidades pequeñas, por ejemplo, los agentes autónomos.
Agentes Autónomos
Si ha probado alguno de los modelos modernos de lenguajes grandes, ya conoce su esencia. Es un entorno similar a un chat en el que escribes algo de texto y el modelo devuelve algo de texto. Por ejemplo, si escribiera "Por favor, escriba un artículo sobre AutoGPT", haría todo lo posible por hablar de ello. En este caso concreto, si usáramos ChatGPT, respondería que no sabe qué es eso o alucinaría alguna respuesta muy creativa pero inventada. ¿Por qué? Porque el punto límite de ChatGPT es 2021, lo que significa que no se ha entrenado en nada desde entonces.
Ahora bien, por supuesto, hay maneras de evitar esto. Por ejemplo, podría escribir un programa Python que realice una búsqueda en la web, recopile los 10 resultados principales, los pase a chatGPT para un breve entrenamiento y luego imprima el resultado. De ninguna manera es una solución perfecta, pero es lo suficientemente buena como una forma rápida y sucia de escapar del entorno limitado de OpenAI.
Con esto, tenemos una IA que está “conectada a Internet” (vale, en realidad no, pero es lo suficientemente buena para este ejemplo). Ahora imagine que extiendo mi secuencia de comandos Python para que tome la salida de chatGPT, verifique que sea código Python y lo ejecute. Ahora tenemos una IA que está conectada a Internet y es capaz de ejecutar código (para los entusiastas, si quieren probar algo como esto, usen una máquina virtual).
En este punto, tenemos un agente rudimentario.
Un agente informático es un programa de software que puede realizar tareas en nombre de un usuario u otro programa informático. Los agentes suelen estar diseñados para ser autónomos y proactivos, lo que significa que pueden tomar decisiones y actuar sin necesidad de intervención humana.
Si bien no es completamente autónomo, nuestro bebé agente tiene suficiente independencia para hacer algunas cosas realmente extravagantes. Es por eso que deberías ejecutarlo en una máquina virtual, realmente no sabemos qué tipo de código ejecutará al final del día. Podemos continuar desarrollando este programa, por ejemplo, podríamos introducir una forma para que nuestro modelo de lenguaje cree primero una serie de pasos para lograr nuestro objetivo. Luego podríamos pasar cada paso a nuestro modelo de lenguaje, probar el resultado y volver a intentarlo, pasar a la siguiente tarea o crear subtareas según la solución.
Y poco a poco, capa a capa, vamos añadiendo funcionalidades a nuestro agente. Observe cómo después de nuestra primera instrucción (la que pone en marcha la bola), nuestro agente comenzará a utilizar el diálogo interno para seguir trabajando en cada tarea. Por ejemplo, si el código devuelve un error, el agente se dirá a sí mismo: “Ups, algo salió mal; "Depuremos esto e intentemos de nuevo", no hay necesidad de que un humano aburrido supervise su trabajo. Si esto te provoca un escalofrío, está bien, significa que ya estás empezando a ver las implicaciones.
Los agentes de TI son como pequeños ayudantes que facilitan nuestra vida digital. Pueden hacer todo tipo de tareas por nosotros sin que nos demos cuenta, algo así como un asistente personal se encarga de las cosas detrás de escena para que su jefe no tenga que preocuparse por todo.
Hay tres tipos principales de agentes computacionales: agentes reactivos, agentes deliberativos y agentes híbridos.
Agentes reactivos
Estos tipos son como puro instinto. Reaccionan a estímulos específicos de su entorno sin ninguna conciencia o análisis del contexto más allá de aquel para el que han sido programados explícitamente. Es como cuando instalas un software antivirus en tu computadora portátil: entra en acción inmediatamente cuando se detecta un archivo sospechoso en tu sistema.
Agentes deliberantes
Por otro lado, tenemos agentes deliberados: estos tipos piensan antes de actuar (¡exactamente como deberíamos!). Razonan a través de problemas utilizando experiencias pasadas y conocimientos almacenados en sus bases de datos para tomar decisiones informadas basadas en las circunstancias actuales. Piense en Siri o Alexa cuando haga preguntas: responden después de procesar múltiples fuentes de datos antes de dar una respuesta.
Agentes híbridos
En el tercer tipo es donde las cosas se ponen locas: ¡combinaciones híbridas! Estos chicos malos combinan características de agentes reactivos y deliberativos, lo que les permite lidiar con entornos dinámicos con condiciones en constante cambio, así como resolver problemas relacionados con escenarios de misión con una eficiencia incomparable con otros tipos.
Nuestro ejemplo estaría entre híbrido y deliberativo. Pero con suficiente esfuerzo y dedicación, podríamos convertirlo en un agente híbrido completo como autoGPT, babyAGI o agentGPT.
Llega un nuevo retador: AutoGPT vs. Chat GPT
AutoGPT es una aplicación experimental de código abierto que utiliza el modelo de lenguaje GPT-4 de OpenAI para lograr objetivos autónomos. Fue creado por el desarrollador de juegos Toran Bruce Richards y lanzado en marzo de 2023.
Al igual que nuestro ejemplo, AutoGPT funciona dividiendo un objetivo definido por el usuario en una serie de subtareas. Luego utiliza GPT-4 para generar texto y código que se pueden utilizar para completar estas subtareas. AutoGPT se puede utilizar para realizar una variedad de tareas, que incluyen:
- Escribir código
- Generando texto
- Traducir idiomas
- Respondiendo preguntas
- Resolviendo problemas
AutoGPT aún está en desarrollo, de hecho si visitas el GitHub del proyecto tiene más advertencias que un frasco de medicina. Es inestable, poco confiable y puede destruir totalmente su billetera con consultas de la API de OpenAI. Pero también tiene el potencial de ser una poderosa herramienta para automatizar tareas y mejorar la eficiencia. También es una herramienta valiosa para los desarrolladores que desean aprender más sobre GPT-4 y cómo se puede utilizar para crear aplicaciones independientes.
Estos son algunos de los beneficios de usar AutoGPT:
- Puede automatizar tareas: AutoGPT se puede utilizar para automatizar una variedad de tareas, como escribir código, generar texto, traducir idiomas, responder preguntas y resolver problemas. Esto puede ahorrarle tiempo y esfuerzo y también ayudarle a ser más productivo.
- Es fácil de usar: AutoGPT es muy fácil de usar. Sólo necesitas establecer un objetivo y AutoGPT hará el resto. No es necesario escribir ningún código ni aprender comandos complejos.
- Es poderoso: AutoGPT funciona con GPT-4, que es uno de los modelos de lenguaje más poderosos del mundo. Esto significa que AutoGPT se puede utilizar para realizar una amplia variedad de tareas y con un alto grado de precisión.
No puedo enfatizar esto lo suficiente: autoGPT es el primero de su tipo y es absolutamente poco confiable. Sería una locura intentar implementarlo en un entorno de producción. Pero, por otro lado, si está pensando en crear agentes autónomos, es esencial consultar el repositorio GitHub de este proyecto. Hay tantas buenas ideas en este proyecto que pueden usarse, redefinirse y adaptarse a otros entornos.
La solución simple: AgentGPT
AgenteGPT es como una navaja suiza para cualquier CTO que quiera aumentar la productividad de su equipo. Imagine un asistente súper eficiente que pueda ayudarlo con tareas que van desde desarrollar una estrategia de marketing hasta crear un sitio web con muy poca intervención humana: eso es AgentGPT para usted.
Mira, AgentGPT es una plataforma que crea agentes de IA para alcanzar tus objetivos, al igual que autoGPT. Es un proyecto de código abierto que aprovecha los modelos GPT-3.5 y GPT-4 de OpenAI. Piense en ello como un primo evolucionado de ChatGPT que no sólo puede chatear, sino también crear de forma autónoma sus propias tareas, navegar por la web e incluso enviar nuevos agentes al campo de batalla digital para cumplir la misión asignada.
¿La mejor parte? Es como un amigable superhéroe de vecindario. No es necesario ser un mago de la codificación ni tener ningún conocimiento técnico especial para utilizar AgentGPT. ¿No quieres lidiar con Dockers, configurar entornos y otras cosas tecnológicas? ¿Quieres experimentar lo que los agentes independientes tienen para ofrecer ahora mismo? Entonces AgentGPT es la solución más sencilla.
Acceder a AgentGPT es tan sencillo como pedir una pizza. Todo lo que tienes que hacer es visitar el sitio web de AgentGPT, o si eres más un aficionado al bricolaje, puedes tomar el código del repositorio oficial de GitHub e instalarlo en tu sistema local.
Una vez que te unas, tendrás tres niveles de acceso. Puedes jugar como invitado con tokens limitados y sin posibilidad de salvar agentes. Suba de nivel creando una cuenta y podrá administrar cuentas y guardar agentes implementados. El nivel superior requiere una clave API de OpenAI y desbloquea funciones avanzadas como configurar el nivel de enfoque del agente y el número máximo de bucles.
Obtener AgentGPT casi no requiere trabajo. Debe ensamblar y configurar un agente, asignarle un objetivo e implementarlo. Literalmente se trata simplemente de darle un nombre y un objetivo. Es como ponerle un nombre a tu nueva mascota y enseñarle trucos. Cuando creé mi primer agente, lo llamé "Buscador de ofertas". Puedes elegir cualquier nombre siempre que esté relacionado con el rol u objetivo del agente.
Aquí es donde se vuelve interesante configurar su agente. Aquí es donde ajusta el comportamiento de su agente. Es como elegir los ingredientes de una receta compleja. Tiene la opción de seleccionar el modelo GPT, el modo de ejecución, el nivel de enfoque, los tokens y los bucles máximos. Es crucial encontrar el equilibrio adecuado: demasiado alto o demasiado bajo, y podrías terminar con un plato quemado o pasta poco cocida.
En este caso, apunta demasiado alto y tendrás una IA errática y desenfocada; si apuntas demasiado bajo, tu IA será un agente bastante dócil y predecible que hará lo mínimo absoluto. Después de instalar y configurar su agente, es hora de dejarlo ir en la jungla digital. Implemente su agente y luego podrá monitorear su recorrido en la consola principal del sitio.
Suena fantástico, ¿verdad? Bueno, al igual que su primo AutoGPT, experto en tecnología, todavía no es confiable y depende del modelo OpenAI. Aún así, en mi experiencia personal, es un pequeño experimento divertido que realmente podría convertirse en una herramienta líder en la industria y fácil de usar.
Lo mejor para el final: BabyAGI
Uno de los principales problemas de los grandes modelos de lenguaje es que son amnésicos. Cierra la ventana o elimina el chat y tu fiel compañero de IA desaparecerá para siempre. Pero ¿y si pudiéramos inspirarnos en la humanidad y darle una memoria a largo plazo? Ingrese BabyAGI de Yohei Nakajima basado en su artículo "Agente autónomo orientado a tareas que utiliza GPT-4, Pinecone y LangChain para diversas aplicaciones". Como su nombre lo indica, es una pila de tecnología con tres componentes principales. GPT, Pinha y LangChain
Cono de pino
Pinecone es un servicio de base de datos vectoriales diseñado para proporcionar capacidades de búsqueda de vectores eficientes y escalables. Se lanzó con el objetivo de permitir a las empresas crear aplicaciones que aprovechen el aprendizaje automático de forma más fácil y eficaz. El servicio está basado en la nube y está totalmente administrado, lo que significa que los usuarios no necesitan preocuparse por administrar la infraestructura, escalar o actualizar los sistemas: Pinecone se encarga de todo.
He aquí un vistazo más de cerca a cómo funciona Pinecone:
- Incorporación e Indexación:
Pinecone comienza incorporando datos en un espacio vectorial utilizando un modelo de aprendizaje automático. Este proceso de incrustación transforma texto, imágenes u otros datos en un vector numérico que captura sus características esenciales. Pinecone indexa sus vectores incrustados para una búsqueda eficiente.
- Búsqueda de vectores:
Ingrese un vector de consulta y busque en su base de datos vectores similares. Pinecone utiliza un algoritmo de búsqueda aproximada del vecino más cercano (ANN) para buscar grandes bases de datos de una manera eficiente y escalable.
- Actualización del índice:
El índice puede incorporar nuevos datos sin reconstruirlos. Pinecone es perfectamente adecuado para aplicaciones con datos variables.
- Dimensionamiento y gestión:
Pinecone fue desarrollado para aplicaciones grandes. A medida que su base de datos crece, administra la infraestructura, escala y optimiza las operaciones de búsqueda. Los desarrolladores pueden centrarse en el desarrollo de aplicaciones sin preocuparse por la infraestructura gracias a esta escalabilidad y gestión.
LangChain
La presentación del extraordinario proyecto de código abierto LangChain por parte de Harrison Chase en octubre de 2021 causó un gran revuelo en la industria de TI. Ha ganado mucha atención e inversión, incluida una ronda de financiación de 20 millones de dólares de Sequoia Capital, gracias a su comunidad en rápida expansión en GitHub, Twitter, Discord y otras plataformas.
Es una arquitectura innovadora que funciona con una amplia gama de sistemas y servicios, desde proveedores de almacenamiento en la nube como Amazon y Google hasta modelos de lenguaje como OpenAI, Anthropic y Hugging Face. Sirve como una plataforma unificada y extensible para una amplia variedad de aplicaciones.
La gama de posibles aplicaciones es enorme. Puede utilizar noticias, listas de películas y contenedores de API meteorológicos. Es capaz de ejecutar programas de shell, rastrear la web e incluso generar indicaciones de aprendizaje rápidas. Desde manipulación de PDF hasta SQL, esta herramienta lo tiene cubierto.
Admite una amplia variedad de tipos de documentos y fuentes de datos. y bases de datos no relacionales (NoSQL). Además de sus capacidades de gestión de datos, LangChain también puede generar, analizar y depurar scripts escritos en Python y Java. Cuando se combinan todos estos elementos, obtenemos uno de los agentes autónomos más sofisticados posibles.
Una vez más, no es perfecto, pero utiliza algunas técnicas de aprendizaje automático de vanguardia para crear un compañero de IA capaz y con espacio para crecer. BabyAGI también tiene la ventaja adicional de poder ejecutarse en modelos basados en GPT-4 o LLaMA. Por lo tanto, es probable que la comunidad de código abierto invierta más en BabyAGI.
¿Cuál es el siguiente?
Puede que sea demasiado pronto para poner en producción estas herramientas para cualquier tarea significativa, pero apostaría mi vida a que los agentes autónomos tienen el potencial de robarle el protagonismo a los grandes modelos lingüísticos. Puedo imaginar robots multimodales complicados en el futuro, que produzcan no solo texto sino también contenido visual y de audio. Aunque los ordenadores no tengan conciencia, no tengo ninguna duda de que ya han pasado el test de Turing.
Si le gustó este artículo, consulte uno de nuestros otros artículos sobre IA.
- Cómo la inteligencia artificial ayudará a alimentar al mundo
- Cinco formas en que las empresas B2B pueden utilizar la IA
- Cómo afectará GitHub Copilot a la productividad
- Cómo las emociones y la IA hacen crecer las empresas
- Cómo Internet de los Comportamientos (IoB) está revolucionando el mercado
Fuente: BairesDev