Skip to content

Generate different roles for GPTs to form a collaborative entity for complex tasks.

License

Notifications You must be signed in to change notification settings

TabbbSY/AutoAgents

 
 

Repository files navigation

AutoAgents: The Automatic Agents Generation Framework

autoagents logo: The Automatic Agents Generation Framework.

Generate different roles for GPTs to form a collaborative entity for complex tasks.

CN doc EN doc License: MIT

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.

🚀 Features

  • Planner: Determines the expert roles to be added and the specific execution plan according to the problem.
  • Tools: The set of tools that can be used, currently only compatible with the search tools.
  • Observers: Responsible for reflecting on whether the planner and the results in the execution process are reasonable, currently including reflection checks on Agents, Plan, and Action.
  • Courier: Responsible for information exchange between agents and coordinating the execution order of multiple agents.
  • Agents: Expert role agents generated by the planner, including name, expertise, tools used, and LLM enhancement.
  • Plan: The execution plan is composed of the generated expert roles, each step of the execution plan has at least one expert role agent.
  • Actions: The specific actions of the expert roles in the execution plan, such as calling tools or outputting results.

Demo

DEMO

Installation and Usage

Installation

git clone https://github.com/LinkSoul-AI/AutoAgents
cd autoagents
python setup.py install

Configuration

  • Configure your OPENAI_API_KEY in any of config/key.yaml / config/config.yaml / env
  • Priority order: config/key.yaml > config/config.yaml > env
# Copy the configuration file and make the necessary modifications.
cp config/config.yaml config/key.yaml
Variable Name config/key.yaml env
OPENAI_API_KEY # Replace with your own key OPENAI_API_KEY: "sk-..." export OPENAI_API_KEY="sk-..."
OPENAI_API_BASE # Optional OPENAI_API_BASE: "https://<YOUR_SITE>/v1" export OPENAI_API_BASE="https://<YOUR_SITE>/v1"

Usage

  • Commandline mode:
python main.py --mode commandline --llm_api_key YOUR_OPENAI_API_KEY --serapi_key YOUR_SERPAPI_KEY --idea "Plan a tour for architectural photography in Barcelona"
  • Websocket service mode:
python main.py --mode service --host "127.0.0.1" --port 9000

Docker

  • Build docker image:
IMAGE="linksoul.ai/autoagents"
VERSION=1.0

docker build -f docker/Dockerfile -t "${IMAGE}:${VERSION}" .
  • Start docker container:
docker run -it --rm -p 7860:7860 "${IMAGE}:${VERSION}"

Contact Information

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.

License

Apache-2.0 license

Wechat Group

Wechat Group

Acknowledgements

This code base has borrowed several implementations from this link

About

Generate different roles for GPTs to form a collaborative entity for complex tasks.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 50.6%
  • JavaScript 38.5%
  • CSS 4.8%
  • HTML 4.6%
  • Shell 1.2%
  • Dockerfile 0.3%