CAMEL 多智能体框架上手指南:装好环境,跑通两个 AI 的第一次协作
【免费下载链接】camel🐫 CAMEL: The first and the best multi-agent framework. Finding the Scaling Law of Agents. https://www.camel-ai.org项目地址: https://gitcode.com/GitHub_Trending/ca/camel
你想让 AI 不只是陪聊,而是分工把活儿干完:一个查资料、一个写代码,最后汇总成一份结果。CAMEL(全称 Communicative Agents for "Mind" Exploration of Large Language Model Society)就是为这件事设计的开源多智能体框架——让多个大模型智能体各自扮演角色,通过对话协作完成单个智能体做不好的任务。
一句话定位:CAMEL 是什么,处于什么阶段
CAMEL 是目前最老牌的多智能体框架之一,出自 NeurIPS 2023 论文,当前版本仍在 0.2.x 预发布阶段(pyproject.toml中标注0.2.91a5),迭代很快。
它值得留意的三点:
- 角色扮演是主线机制:智能体之间靠"用户/助手"两种角色对话推进任务,而不是靠硬编码流程
- 模块拆得很细:
camel/下按 agents、models、toolkits、societies 等目录分层,用得到什么装什么 - 自带可运行的示例库:examples/ 目录里按场景分好了几十组脚本,照着改就能跑
机制拆解:把任务交给一个"两人班组" 🐫
CAMEL 最基础的合作单元,可以类比一个两人班组。你给它一句任务,比如"开发一个股票交易机器人",框架会做三件事:
- 派单:一个叫"任务指定"的内部智能体先把模糊的任务提示词扩写成明确的执行目标,再为两个角色(比如 Python 程序员 和 股票交易员)各生成一份系统提示词,写清楚各自的立场和职责
- 执行:两个智能体开始轮流出招——"用户"角色提需求、验收,"助手"角色干活、交付,一轮一轮对话,每一轮都会检查任务是否完成
- 汇总:当任一方判断任务结束(比如输出
CAMEL_TASK_DONE标记),对话停止,过程里产出的内容就是最终结果
图:两个智能体扮演不同角色,围绕任务提示词交替发言直至任务完成
如果任务更复杂,CAMEL 还提供 Workforce(劳动力)机制:一个协调者智能体接收总任务,拆成子任务派给多个工人智能体,等全部干完再自动合并结果,类似"派单—并行执行—汇总"的流水线。
图:Workforce 模式下任务从接收、分解到多智能体执行的整体结构
三步装好环境
环境要求很克制:Python 3.10 到 3.14 之间(requires-python = ">=3.10,<3.15"),其余靠 pip 解决。
# 1. 安装核心包(只需联网,无需本地模型) pip install camel-ai # 2. 配置模型密钥(以 OpenAI 为例,其他模型见 camel/configs/) export OPENAI_API_KEY='你的密钥'如果后续要用搜索、RAG 等工具,再按功能加扩展包即可,例如pip install 'camel-ai[web_tools]'。完整说明见 docs/get_started/installation.md。
完整示例走一遍:两个 AI 协作开发交易机器人 📈
仓库里最经典的入门脚本是 examples/ai_society/role_playing.py,它的完整逻辑只有四步:
输入:一行任务提示词"Develop a trading bot for the stock market",加上两个角色名(Python Programmer和Stock Trader)。脚本用RolePlaying类初始化会话时,with_task_specify=True会触发前面说的"派单"环节,先打印出系统提示词和扩写后的任务说明。
执行:调用role_play_session.init_chat()拿到开场消息,然后进入循环——每次step()让两个智能体各发言一轮。脚本设置了 50 轮上限(chat_turn_limit=50),防止对话失控。
输出:对话以"用户"角色说出CAMEL_TASK_DONE或某一方主动终止而结束,终端会打印终止原因。整个过程你看到的就是两个 AI 的完整对话记录:程序员提出方案、交易员追问细节、修改、再验收。
想本地跑通,把示例里的model=None换成本地创建好的模型对象即可,模型创建方式参考 examples/agents/create_chat_agent.py。
它能做的 2~3 件事
- 多任务流水线协作:examples/workforce/pipeline_workflow_example.py 演示了 fork-join 模式——一个文献检索任务拆成 5 个并行摘要子任务,干完后自动合成一篇综述。想把"先调研、再分析、后成文"这类工作自动化,可以从这个脚本起步改角色和提示词。
- 聊天平台机器人:examples/bots/ 下有 Discord 和 Telegram 机器人的完整示例,把智能体接到聊天软件里当客服或助手,配合 camel/bots/ 的封装类使用。
- 合成数据生成:examples/datagen/ 提供了 Self-Instruct、Evol-Instruct 等数据生成脚本(对应 camel/datagen/ 模块),可以用它批量造指令数据,服务于模型训练或评测。
要注意什么 ⚠️
- 版本还在快速演进:0.2.x 预发布版本里 API 可能有变动,升级前建议看一眼 test/ 下的测试或用 git tag 固定版本,别默认接口长期不变。
- Python 版本卡得死:只支持 3.10~3.14,用 3.8、3.9 或 3.15+ 的环境会直接装不上,先用
python3 --version确认。 - 对话示例是真金白银:角色对话示例默认要跑几十轮模型调用,且每轮都有 token 开销;调试时把
chat_turn_limit调小,或者按文档切换到本地模型。另外多数高级功能(RAG、网页工具、文档解析)都要单独装对应的 extras,不是核心包自带。 - 适合与不适合:适合做原型验证、协作流程编排、数据生成;如果你只需要一次简单的模型调用,直接用模型 SDK 即可,CAMEL 的抽象层对你反而是多余。
资源导航
- 入门与安装文档:docs/get_started/installation.md
- 关键模块说明(agents、societies、tools 等):docs/key_modules/
- 可运行示例库:examples/
- 核心源码:camel/
【免费下载链接】camel🐫 CAMEL: The first and the best multi-agent framework. Finding the Scaling Law of Agents. https://www.camel-ai.org项目地址: https://gitcode.com/GitHub_Trending/ca/camel
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考