
? GPTSWARM es un marco basado en gráficos para agentes basados en LLM, que proporciona dos características de alto nivel:

A nivel granular, GPTSwarm es una biblioteca que incluye los siguientes componentes:
| Módulo | Descripción |
|---|---|
| enjambre. Medio ambiente | Operaciones, agentes, herramientas y tareas específicas del dominio |
| enjambre. | Funciones relacionadas con gráficos para crear y ejecutar gráficos de agente y gráficos compuestos de enjambre |
| swarm.llm | Interfaz para seleccionar backends de LLM y calcular sus costos operativos |
| enjambre. Memoria | Memoria basada en índices |
| Swarm.Optimizer | Algoritmos de optimización diseñados para mejorar el rendimiento del agente y la eficiencia general del enjambre |

? [10/12] ¿Respeto? Swarm de OpenAi, ¿pero? Gptswarm es la mejor opción si considera el? Inteligencia en enjambre ?.
[08/07] Mingchen asistió a un seminario invitado con Shanghai AI Lab.
[07/25] Louis y Francesco dieron la presentación oral en ICML 2024.
[07/17] Mingchen introdujo GPTSwarm a Meta.
[07/05] Mingchen dio una charla invitada con WAIC.
[21/21] Mingchen dio una charla invitada con IA-CAS.
[20/06] Dmitrii dio una charla invitada con Sberbank.
[03/03] SDAIA invitó al equipo de GPTSwarm (Wenyi, Francesco, Dmitrii) para un seminario de 5 horas.
[06/02] ¡ GPTSWARM se ha seleccionado como presentación oral (Top 1.5%, 144 en 9,473) por ICML2024! ¡Felicidad!
[05/01] GPTSWarm ha sido aceptado por ICML2024.
[8/18] Mingchen dio la charla invitada con byte.
[20/03] Mingchen dio la charla invitada con Huawei.
[13/03] Entrevista exclusiva de Mittr China con Mingchen.
[03/01] GPTSWARM se puede instalar a través de PIP ahora: pip install gptswarm
[27/27] Nuestro artículo académico: se lanzan agentes del idioma como gráficos optimizables.
Aquí está el proceso de optimización de borde que actualiza las probabilidades de borde hacia la mejora de la puntuación de referencia. Observe que dentro de un agente, los bordes son fijos, mientras que las conexiones entre agentes se están optimizando hacia la poda de borde (valor 0, azul) o la creación (valor 1, rojo).

Clonar el repositorio
git clone https://github.com/metauto-ai/GPTSwarm.git
cd GPTSwarm/Instalar paquetes
conda create -n swarm python=3.10
conda activate swarm
pip install poetry
poetry install
Debe agregar claves API en .env.template y cambiar su nombre a .env
OPENAI_API_KEY = "" # for OpenAI LLM backend
SEARCHAPI_API_KEY = "" # for Web SearchComenzar con GPTSwarm es fácil. Ejecutar rápidamente un enjambre predefinido
from swarm . graph . swarm import Swarm
swarm = Swarm ([ "IO" , "IO" , "IO" ], "gaia" )
task = "What is the capital of Jordan?"
inputs = { "task" : task }
answer = await swarm . arun ( inputs )o hacer uso de herramientas, como el analizador de archivos
from swarm . graph . swarm import Swarm
swarm = Swarm ([ "IO" , "TOT" ], "gaia" )
task = "Tell me more about this image and summarize it in 3 sentences."
files = [ "./datasets/demos/js.png" ]
inputs = { "task" : task , "files" : files }
danswer = swarm . run ( inputs )Mira el ejemplo mínimo en el enjambre en Colab aquí :.
Vea cómo crear un agente personalizado y ejecutar un enjambre con él aquí :.
Aquí hay un video de YouTube sobre cómo ejecutar los cuadernos de demostración:

Vea nuestros experimentos para el uso más avanzado de nuestro marco.


Apoyamos la inferencia LM local a través de LM Studio. Descargue su aplicación de escritorio para Mac o Windows, elija un modelo del repositorio de Huggingface e inicie el servidor. Use model_name='lmstudio' en el código GPTSwarm para ejecutarse con el LLM local.

Lea nuestro documento de desarrollador si está interesado en contribuir.
Cite nuestro documento si encuentra la biblioteca útil o interesante.
@inproceedings{zhugegptswarm,
title={GPTSwarm: Language Agents as Optimizable Graphs},
author={Zhuge, Mingchen and Wang, Wenyi and Kirsch, Louis and Faccio, Francesco and Khizbullin, Dmitrii and Schmidhuber, J{"u}rgen},
booktitle={Forty-first International Conference on Machine Learning}
}