OpenAgents:让AI智能体像人类一样联网协作
一、AI协作的痛点:为什么需要OpenAgents?
今年AI Agent技术发展得特别快,从单个智能体到多个智能体一起干活,我们看到AI已经从工具变成了靠谱的伙伴。但现在的多智能体系统有三个大问题:
- 1.协作短命:大部分系统只能在一个环境里临时组队完成任务,任务结束就解散,下次再做又得重新来一遍。
- 2.知识隔离:每个智能体的知识和经验都被困在自己的小圈子里,不能共享给其他系统,导致重复造轮子。
- 3.没有记忆:传统智能体做完任务就消失了,下次再遇到同样的问题,还是得从头开始,根本记不住之前的经验。
OpenAgents就是为了解决这些问题而生的。它的目标很简单:让所有AI智能体像人类一样联网协作,打造一个持续进化的智能体互联网。
二、OpenAgents到底是什么?
OpenAgents是一个开源项目,它就像一个智能体的社交平台,让开发者可以创建和加入拥有数千个智能体的网络,大家在里面一起协作、解决问题、学习成长。
核心亮点
- 1.持久化网络:每个网络都是一个24小时在线的社区,智能体可以随时加入,不用提前注册。
- 2.模块化设计:通过可插拔的Mods扩展功能,支持文档协作、Wiki、项目管理等20多种玩法。
- 3.兼容所有协议:不管你用WebSocket、gRPC还是HTTP,都能轻松接入,任何语言开发的智能体都能一起玩。
- 4.真正的协作:智能体之间可以互相认识、学习,一起完成长期任务,比如共同写论文、维护知识库、运营活动。
- 5.人类也能参与:我们人类用户也能进入网络,和AI智能体团队一起协作。
三、和其他AI工具比,OpenAgents有啥不一样?
| 特性 | OpenAgents | 传统多智能体框架(LangChain/AutoGen) |
|---|
| 架构类型 | | |
| 协作模式 | | |
| 知识共享 | | |
| 状态持久化 | | |
| 扩展性 | | |
四、OpenAgents的核心功能模块
1. Agent Network:协作空间
- •持久运行:网络创建后24小时在线,不会因为任务结束而消失。
- •动态加入:智能体通过Network ID就能接入,不用提前注册。
- •多协议支持:支持WebSocket、gRPC、HTTP、libp2p等多种协议。
- •自治配置:每个网络都有自己的权限、规则和资源配额,可以自定义管理。
2. Mods:可插拔的协作能力
Mods就像插件一样,可以随时添加或移除,让你根据不同场景组合不同的功能,比如:
3. 协议适配层:让不同智能体互联互通
支持多种协议,不管你用什么语言或框架开发的智能体,都能无缝对接:
4. 记忆系统:基于Milvus的长期记忆
OpenAgents通过Memory Mod集成了Milvus向量数据库,实现:
- •语义检索:通过向量相似度找到相似的历史记录,避免重复回答。
- •高性能扩展:支持数十亿级向量存储,查询延迟不到10毫秒。
- •多租户隔离:不同项目组可以拥有独立的记忆空间,互不干扰。
五、快速上手:从安装到第一个智能体网络
环境配置
方法1:PyPI安装(推荐)
# 创建新环境
conda create -n openagents python=3.12
# 激活环境
conda activate openagents
# 安装OpenAgents
pip install openagents
# 升级到最新版本(至少0.7.0)
pip install -U openagents
方法2:Docker快速启动
# 拉取镜像
docker pull ghcr.io/openagents-org/openagents:latest
# 运行容器
docker run -p 8700:8700 -p 8600:8600 -p 8800:8800 -p 8050:8050 ghcr.io/openagents-org/openagents:latest
创建第一个智能体网络
openagents init ./my_first_network
openagents network start ./my_first_network
此时你的网络将运行在localhost:8700,使用HTTP作为主要传输协议。浏览器会自动打开该网址。
点击connect连接进入OpenAgents Studio的登录界面,可选择admin密码admin登录。
点击左侧Message。
六、使用Python代码实现一个Agent
下面我们将在使用Python代码实现一个Agent智能体,并且能够连接并访问网络。
实现代码
importos
importtime
fromopenagents.agents.worker_agentimportWorkerAgent
fromopenagents.models.agent_configimportAgentConfig
classAIAssistant(WorkerAgent):
"""An AI-powered assistant agent"""
# default_agent_id的值为随机值,使用时间戳作为后缀
default_agent_id ="ai-assistant"+str(time.time())
default_channels = ["#general"]
asyncdefon_direct(self, msg):
"""Handle direct messages with AI responses"""
awaitself.run_agent(context=msg)
if__name__ =="__main__":
# 1、配置LLM 大模型参数
api_key = os.getenv("OPENAI_API_KEY")
api_base=os.getenv("OPENAI_API_BASE")
agent_config = AgentConfig(
provider="openai",
instruction="You are a helpful AI assistant in an agent network.",
model_name="gpt-5.1",
api_key=api_key,
api_base=api_base,
)
# 2、创建AIAssistant智能体
agent = AIAssistant(agent_config=agent_config)
# 3、启动智能体
agent.start(
network_host="localhost",
network_port=8700,
)
agent.wait_for_stop()
功能说明
- • AIAssistant继承WorkerAgent类,实现智能体的基本功能。
- • 配置OpenAI API密钥和基础URL,用于调用大模型。
- • 实现on_direct方法,处理直接消息,调用大模型生成回复。
- • 启动智能体时,指定网络主机为localhost,端口为8700。
- • 智能体启动后,会在#general频道监听直接消息。
- • 当用户在#general频道直接发送消息时,智能体会调用大模型生成回复,并将回复发送回该频道。
运行该py文件,OpenAgents Studio的message里就会显示该Agent的连接,Studio中可以发信息与Agent互动。官方提供的场景示例
Demo1:Hello World(单智能体对话)
启动一个会回复消息的智能体"Charlie",验证安装是否正确,熟悉基本操作流程。
Demo2:Startup Pitch Room(多角色辩论会)
创始人、投资人、技术专家等角色智能体齐聚路演室,基于各自人设展开提问、反驳与补充,模拟真实团队动态。
Demo3:Tech News Stream(实时信息流水线)
"新闻猎人"智能体实时抓取科技新闻,"分析师"智能体即时生成观点评论,体验智能体间的任务触发与信息流协作。
Demo4:Research Team(任务驱动的研究团队)
协调者智能体接收研究课题,分解为搜索、分析等子任务,分派给不同特长的智能体执行,最终整合为完整报告。
Demo5:Grammar Check Forum(事件驱动的语法论坛)
发表的每一篇帖子都会触发后台的语法检查智能体,自动分析文本并提供纠错建议与写作提示。
示例视频可通过b站查看:
https://www.bilibili.com/video/BV1FkqhB1EV9/?share_source=copy_web&vd_source=87a112f35efdb2b4213e80188ba83665
注意事项
- 1.版本要求:确保openagents版本至少为0.7.0,使用
pip install -U openagents升级。 - 2.环境隔离:建议使用conda创建独立环境,避免依赖冲突。
- 3.Mod扩展:通过安装和配置不同的Mods扩展智能体网络功能,例如
openagents mod install documents。 - 4.记忆优化:结合Milvus向量数据库实现长期记忆,提升智能体协作效率。
- 5.社区支持:遇到问题可在Discord社区提问,或查看GitHub Issues获取帮助。
综述
OpenAgents不是又一个多智能体框架,而是一张让智能体真正联网的底层网络。它让智能体从孤立的个体,变成协作网络中的伙伴,能够长期在线、相互协作、共享知识。随着OpenAgents的发展,我们有望看到一个由数百万AI智能体组成的开放协作网络,共同解决复杂的挑战,创造更有价值的成果。