paint-brush
GPT automatizado... Otra vezpor@mcmurchie
4,494 lecturas
4,494 lecturas

GPT automatizado... Otra vez

por McMurchie4m2023/04/10
Read on Terminal Reader

Demasiado Largo; Para Leer

Estos repositorios de automatización de GPT son demasiado complejos, le mostraré cómo crear los suyos propios, como mi generador de proyectos GPT, para que pueda hacer que los bots construyan recursivamente su proyecto.
featured image - GPT automatizado... Otra vez
McMurchie HackerNoon profile picture

➡ Una linda imagen de cómo me gustaría que fuera nuestro futuro con IA (arte a mitad del camino)


TLDR: estos repositorios de automatización de GPT son demasiado complejos; Le mostraré cómo crear el suyo propio como mi generador de proyectos GPT para que pueda hacer que los bots construyan recursivamente su proyecto.


Las personas normales y sanas que no se distraen constantemente con la más mínima GPT (no yo), es posible que aún no sepan que los principales repositorios de tendencias en GitHub están llenos de arneses de automatización de GPT.


La frase popular en Reddit es algo así como: "Los chatbots están acabados, el futuro pertenece a los agentes".


El más popular en este momento es Auto-GPT , que se conecta a su cuenta de OpenAI y crea un proyecto completo para usted de forma recursiva. La exageración es real con cientos de videos de YouTube ya, tanto que uno pensaría que están vendiendo NFT.


De todos modos, lo intenté pero no pude hacerlo funcionar; Tengo una Mac M1, hubo demasiados errores y no quería registrarme para obtener una cuenta de Pinecone (tan genial como era la idea).


Entonces, decidí intentar construir uno propio, y aquí quiero mostrarte cómo lo hice, así que si no te gusta el de ellos o el mío, puedes hacerlo tú mismo.

Paso 1: El Concepto de Agentes

Debido a que los LLM de modelos de lenguaje grande como GPT3 tienen recuentos de tokens limitados para entrada y salida, no pueden escupir exactamente un proyecto de servidor web completo (con todos los archivos html, db y route).


Tienes que engatusarlo y recordarle las cosas que produjiste antes; a veces, te quedas sin asignación de conversación y nunca puedes darle un contexto completo.


Entonces surgió la idea de los agentes (¿por quién? No tengo idea); lo que es tener contenedores especializados alrededor de las API de GPT que lo solicitan de ciertas maneras y procesan los resultados de ciertas maneras, por lo que puede tener cosas como:


  • Agente rápido
  • Agente generador de código
  • Agente depurador


Mientras que cada uno maneja un cierto nivel de abstracción, esto le permite liberar tokens y dividir su proyecto en partes.

Paso 2: Diseño

Ok, tener diferentes agentes para diferentes cosas tiene sentido, pero ¿cómo los unes? ¿No necesitan todos saber lo que están haciendo los demás?


Más o menos, el truco es usar la salida de un agente, comprimirla y pasar solo los bits relevantes al siguiente agente; eso es complicado porque tienes que encontrar una manera de definir claramente qué importa y qué no.


Tener la API de GPT dividiendo las tareas en Yaml significa que puede canalizar el yaml en su próxima llamada a la API



Entonces, en mi caso, lo que hice fue tener un papá agente que clasificó el problema:


 if(solvableWithCode): callAgents else: print("Sorry mate, here is a business plan instead")


Si el problema pudiera resolverse mediante código, le pediría que generara YAML como el anterior; De esta manera, cada ENTREGABLE sería una llamada separada a la API de GPT de forma estructurada, lo que le permitiría producir solo el código para esa única cosa.

Paso 3: Automatizarlo todo

Entonces, tenemos 3 pasos:


  1. El usuario declara su solicitud "¡Dame una plataforma comercial ahora!"


  2. Classifier Agent lo divide en partes más pequeñas a través de Yaml.


  3. Decomposer Agent itera a través de cada Yaml y construye el código.


K, entonces, ¿qué sucede si la respuesta es demasiado grande y el código se corta? En el código, me aseguro de que el indicador le diga que solo devuelva 150 líneas a la vez; Itero a través de él en un bucle, agregando continuamente la salida al archivo de destino.


Entonces, supongamos que hay un proyecto de servidor web que necesita manage.py, blogList.js e index.html, construiría cada uno a la vez y escribiría en un archivo.

El futuro y mis sentimientos al respecto

Esto no es ciencia espacial; de hecho, es simplemente una antigua automatización de girar la manija. Hice un blog llamado hacer pan con fideos donde dije que la gente piensa que nos estamos acercando a AGI, pero no es así.


Simplemente tenemos un modelo de lenguaje muy inteligente que estamos tratando de unir en AGI como si estuviéramos tratando de hacer pan con fideos.


El producto final puede parecerse a algo así como una barra de pan, pero no lo es; así es como me siento acerca de la automatización de los LLM.


Sin embargo, sigue siendo asombroso ser parte de este movimiento Dev; hay un gran valor en GPT, ChatGPT y LLM, y la creatividad de las personas que crean arneses de automatización a su alrededor para facilitar la vida de las personas es algo grandioso de lo que ser parte.


Entonces, si eso es lo tuyo, diviértete: comunícate conmigo si quieres consejos o si tienes cosas que quieres que mejore.


Nota : el proyecto no está completo; hay depuración, registro y otras partes para agregar, ¡pero siéntase libre de jugar con él, bifurcarlo o copiarlo y crear uno propio! ¡Me encantaría saber qué se te ocurre!


Más de mí:

Juegos y mi proyecto de IA youtube

LinkedIn

Gorjeo