Generate different roles for GPTs to form a collaborative entity for complex tasks.
AutoAgents is an experimental open-source application for an Automatic Agents Generation Experiment based on LLM. This program, driven by LLM, autonomously generates multi-agents to achieve whatever goal you set.
<img src=./docs/resources/framework2.jpg width="800">

Online demo: - Demo / HuggingFace Spaces
Video demo: - Rumor Verification
git clone https://github.com/LinkSoul-AI/AutoAgents
cd AutoAgents
python setup.py install
OPENAI_API_KEY (or LLM_API_KEY) and SERPAPI_API_KEY.OPENAI_API_MODEL (default: gpt-4o)OPENAI_API_BASE, OPENAI_API_TYPE, OPENAI_API_VERSION, DEPLOYMENT_ID (Azure-style OpenAI)GLOBAL_PROXY or OPENAI_PROXY for HTTP(S) proxy; or use --proxy flagSEARCH_ENGINE (default: serpapi_google). Other keys: SERPER_API_KEY, GOOGLE_API_KEY, GOOGLE_CSE_IDExamples
# Minimum required
export OPENAI_API_KEY="sk-..."
export SERPAPI_API_KEY="your-serpapi-key"
# Optional: change model and set proxy
export OPENAI_API_MODEL="gpt-4o-mini"
export GLOBAL_PROXY="http://127.0.0.1:7890"
# Optional: Azure-style OpenAI
export OPENAI_API_TYPE="azure"
export OPENAI_API_BASE="https://<your-azure-endpoint>/openai/deployments"
export OPENAI_API_VERSION="2024-02-01"
export DEPLOYMENT_ID="<your-deployment>"
# Using environment variables (prompts for any missing ones)
python main.py --mode commandline --idea "Is LK-99 really a room temperature superconducting material?"
# Or pass keys explicitly
python main.py --mode commandline \
--llm_api_key "$OPENAI_API_KEY" \
--serpapi_key "$SERPAPI_API_KEY" \
--idea "Is LK-99 really a room temperature superconducting material?"
# Optional HTTP proxy
python main.py --mode commandline --proxy "http://127.0.0.1:7890" --idea "..."
python main.py --mode service --host 127.0.0.1 --port 9000
The service opens a WebSocket endpoint at ws://<host>:<port>. You can use the demo UI under frontend/app/demo.html by serving the frontend/app folder with any static HTTP server.
IMAGE="linksoul.ai/autoagents"
VERSION=1.0
docker build -f docker/Dockerfile -t "${IMAGE}:${VERSION}" .
docker run -it --rm -p 7860:7860 "${IMAGE}:${VERSION}"
AutoAgents is dedicated to creating a cutting-edge automated multi-agent environment for large language models. We are actively seeking enthusiastic collaborators to embark with us on this thrilling and innovative journey.
This project exists thanks to all the people who contribute:
Issue Reporting and Pull Requests: Encountering difficulties with AutoAgents? Feel free to raise the issue in English. Additionally, you're welcome to take initiative by resolving these issues yourself. Simply request to be assigned the issue, and upon resolution, submit a pull request (PR) with your solution.
Software Development Contributions: As an engineer, your skills can significantly enhance AutoAgents. We are in constant pursuit of skilled developers to refine, optimize, and expand our framework, enriching our feature set and devising new modules.
Content Creation for Documentation and Tutorials: If writing is your forte, join us in improving our documentation and developing tutorials or blog posts. Your contribution will make AutoAgents more user-friendly and accessible to a diverse audience.
Innovative Application Exploration: Intrigued by the prospects of multi-agent systems? If you're keen to experiment with AutoAgents, we're excited to support your endeavors and curious to see your innovative creations.
User Feedback and Strategic Suggestions: We highly value user input. Engage with AutoAgents and share your feedback. Your insights are crucial for ongoing enhancements, ensuring our framework's excellence and relevance.
If you have any questions or feedback about this project, please feel free to contact us. We highly appreciate your suggestions!
We will respond to all questions within 2-3 business days.
If you find our work and this repository useful, please consider giving us a star :star: and a citation :beer::
@inproceedings{ijcai2024p3,
title = {{AutoAgents}: A Framework for Automatic Agent Generation},
author = {Chen, Guangyao and Dong, Siwei and Shu, Yu and Zhang, Ge and Sesay, Jaward and Karlsson, Börje F. and Fu, Jie and Shi, Yemin},
booktitle = {Proceedings of the Thirty-Third International Joint Conference on
Artificial Intelligence, {IJCAI-24}},
pages = {22--30},
year = {2024},
month = {8},
note = {Main Track},
doi = {10.24963/ijcai.2024/3},
url = {https://doi.org/10.24963/ijcai.2024/3},
}
The system, action_bank and role_bank of this code base is built using MetaGPT
Icons in the framework made by Darius Dan, Freepik, kmg design, Flat Icons, Vectorslab from FlatIcon
$ claude mcp add AutoAgents \
-- python -m otcore.mcp_server <graph>