IoA 项目简介
什么是代理互联网(Internet of Agents, IoA)?
代理互联网(IoA)是一个开源框架,旨在创建一个平台,让不同的人工智能代理像人类在互联网上一样协作解决复杂任务。想象一下,像AutoGPT和Open Interpreter这样的AI代理可以聚在一起,分享它们的独特技能,共同应对那些单个代理可能无法解决的复杂问题。这就是IoA的核心理念!
项目的关键特性
- 互联网式架构:IoA通过类似互联网的方式连接不同的AI代理,确保它们可以在不同的环境中进行有效的合作。
- 自主的嵌套团队形成:代理可以自主形成团队和子团队,从而能够更好地适应复杂任务的需求。
- 异构代理集成:将拥有不同技能和背景的代理集合在一起,形成一支“全明星”团队。
- 异步任务执行:代理可以同时处理多个任务,提高整个系统的效率。
- 自适应对话流:对话流可以自主管理,使代理间交流既结构化又灵活。
- 可扩展性:轻松添加新类型的代理或处理不同种类的任务。
详情请参考我们的论文。
快速入门指南
以下是让IoA快速运行的简要步骤:
1. 准备条件
- 确保你的系统上已安装Docker。
2. 克隆代码库
git clone git@github.com:OpenBMB/IoA.git
cd IoA
3. 构建Docker镜像
核心组件 可以直接从Docker Hub拉取预构建的Docker镜像:
# 服务器
docker pull weize/ioa-server:latest
# 客户端
docker pull weize/ioa-client:latest
# 服务器前端
docker pull weize/ioa-server-frontend:latest
# 重命名镜像
docker tag weize/ioa-server:latest ioa-server:latest
docker tag weize/ioa-client:latest ioa-client:latest
docker tag weize/ioa-server-frontend:latest ioa-server-frontend:latest
也可以从源代码构建:
# 服务器
docker build -f dockerfiles/server.Dockerfile -t ioa-server:latest .
# 客户端
docker build -f dockerfiles/client.Dockerfile -t ioa-client:latest .
# 服务器前端
docker build -f dockerfiles/server_frontend.Dockerfile -t ioa-server-frontend:latest .
代理镜像(按需构建)
# ReAct Agent
docker pull weize/react-agent:latest
docker tag weize/react-agent:latest react-agent:latest
# AutoGPT(已修复AutoGPT原始Docker镜像中的一些bug)
docker pull weize/autogpt:latest
docker tag weize/autogpt:latest autogpt:latest
# Open Interpreter
docker pull weize/open-interpreter:latest
docker tag weize/open-interpreter:latest open-interpreter:latest
或者从源代码构建:
# ReAct Agent
docker build -f dockerfiles/tool_agents/react.Dockerfile -t react-agent:latest .
# AutoGPT(已修复AutoGPT原始Docker镜像中的一些bug)
docker build -f dockerfiles/tool_agents/autogpt.Dockerfile -t autogpt:latest .
# Open Interpreter
docker build -f dockerfiles/tool_agents/open_interpreter.Dockerfile -t open-interpreter:latest .
4. 启动Milvus服务
docker network create agent_network
docker-compose -f dockerfiles/compose/milvus.yaml up
5. 启动IoA
cd dockerfiles/compose/
cp .env_template .env
在 .env
文件中,填写你的OpenAI API密钥和其他可选环境变量。然后可以通过以下命令进行快速演示:
cd ../../
docker-compose -f dockerfiles/compose/open_instruction.yaml up
这样你就可以设置你自己的小规模IoA系统,结合AutoGPT和Open Interpreter进行使用!
6. 进行测试
你可以使用以下脚本在我们的Open Instruction数据集上测试IoA。
python scripts/open_instruction/test_open_instruction.py
或者简单地发送一个post请求:
import requests
goal = "我想知道2014年至2020年微软的年度收入。请生成一张以文本格式显示年度收入趋势的图表,并给我一份分析报告。"
response = requests.post(
"http://127.0.0.1:5050/launch_goal",
json={
"goal": goal,
"max_turns": 20,
"team_member_names": ["AutoGPT", "Open Interpreter"], # 当设置为 "None" 时,代理将决定是否自主组建团队
},
)
print(response)
加入IoA之旅!
IoA项目刚刚起步,我们期待您的参与让它变得更好!有关于IoA的新奇想法,例如让PC代理与移动代理连接?我们拭目以待!
- 在Discord与我们交流
- 或发送邮件至 ioa.thunlp@gmail.com
让我们一起构建AI协作的未来吧!🚀