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
你有没有过这样的经历:让大模型写一份产品方案,得手动一段一段切换提示词,再把上一步的结论复制粘贴进下一个对话,稍微复杂点的任务就完全靠人肉接力。CAMEL 是一个开源多智能体框架,它让多个 AI 智能体分别扮演"程序员""客户"等角色,彼此对话、互相推进,直到任务完成。这篇文章带你从安装到跑通第一个双 Agent 协作,全程只需要一个 API Key。
它到底解决了什么问题
CAMEL 的定位是一个以"角色扮演"为底色的多智能体框架,面向想让多个 LLM 协作完成复杂任务的开发者和研究者:你用一行代码定义两个角色,剩下的对话、推进、终止判断都由框架接管。
图 1:CAMEL 角色扮演多智能体框架——围绕任务协作,自动处理角色漂移、指令重复与对话终止
它替代的几种低效做法:
- "手动切换提示词、人肉搬运中间结果" → RolePlaying 对话循环自己驱动,任务完成自动终止
- "自己写状态机编排多步任务" → Workforce 负责任务分解、并行与结果整合
- "逐个适配各家模型商的 API" → ModelFactory 统一接入 40 多个模型平台(OpenAI、Anthropic、Ollama 等),换模型改一行
- "自己搜索资料再粘进提示词" → 内置工具包(网页搜索、天气、文件读取等),一行代码挂上 Agent
🚀 5 分钟跑通:安装与最小示例
前提是 Python 3.10–3.14,三步跑起来:
- 安装框架:
pip install camel-ai- 配置模型 API Key(默认用 OpenAI,也可换其他平台):
export OPENAI_API_KEY='your_key'- 写一个最小 ChatAgent 示例:
from camel.agents import ChatAgent agent = ChatAgent("You are a helpful assistant.", model="gpt-4o-mini") print(agent.step("What is CAMEL-AI?").msgs[0].content)想看真正的"多智能体"效果,直接运行官方角色扮演示例:
python examples/ai_society/role_playing.py你会看到"Python Programmer"和"Stock Trader"两个角色围绕一个股票交易机器人逐轮讨论,任务完成后对话自动结束。
核心能力,挑重点看
1. 角色扮演:两个 Agent 靠对话自动把任务做完
RolePlaying 只需要两个角色名加一句任务描述,角色设定生成、对话启动、终止判断全部自动完成。官方示例的任务是"Develop a trading bot for the stock market":"Stock Trader"负责提需求、追细节,"Python Programmer"负责写代码,多轮对话后产出方案;当助手判断任务完成并输出 CAMEL_TASK_DONE 信号时,对话即停止。完整写法可对照 examples/ai_society/role_playing.py。
2. 工具调用:让 Agent 自己上网查资料
上面创建的 ChatAgent 可以直接挂工具。挂一个 DuckDuckGo 搜索工具后,你问"What is CAMEL-AI",Agent 会先调用搜索、读取结果、再组织回答——查资料的环节不再是手工活:
from camel.toolkits import SearchToolkit agent = ChatAgent(model=model, tools=[SearchToolkit().search_duckduckgo])3. Workforce 流水线:一条主任务自动拆成 5 路并行
更大规模的工作交给 Workforce:它带一个协调 Agent 和一个任务规划 Agent,主任务可以定义成 fork-join 流水线。官方示例的结构是"1 检索 → 5 并行摘要 → 1 综合":检索 Agent 找出 5 篇论文,5 个摘要专家同时并行工作,最后由综合 Agent 汇总成趋势分析,中间的全程同步不用你手动排队。源码见 examples/workforce/pipeline_workflow_example.py。
落到真实场景
场景 1:会看天气的动态旅行规划
- 你给什么输入:一句话需求"为纽约生成 2 天行程,需结合实时天气"。
- 内部如何流转:AI User 与 AI Assistant 两个智能体启动角色扮演,Assistant 一边规划一边按需调用天气工具,查到未来两天的逐时段预报。
- 你拿到什么结果:一份带天气概览、分时段活动建议的 2 天 Markdown 行程,晴天安排户外、雨天安排室内,无需你再改。
图 2:CAMEL 动态旅行规划器——挂上天气工具的多智能体角色扮演流程
场景 2:文献综述的批量摘要
- 你给什么输入:一条主任务"AI/ML 文献综述与趋势分析"。
- 内部如何流转:协调器拆解任务后,检索 Agent 先产出 5 篇论文,5 个摘要专家并行提炼每篇的核心洞察、方法路线与贡献,综合 Agent 再把 5 份摘要合并成趋势分析。
- 你拿到什么结果:5 份论文摘要 + 1 份完整趋势报告,可以直接写进调研报告。
两条链路的完整代码都在 examples/ 目录里,照抄改角色名就能跑。
⚠️ 新手容易踩的坑
- "OPENAI_API_KEY is not set"报错:Key 只对当前终端会话生效,新开终端要重新 export;建议写进 .env 文件,再用 python-dotenv 加载。
- Python 版本越界:框架要求 3.10–3.14,但 3.13/3.14 上 unstructured、pyobvector 两个文档解析依赖不可用;如果你的场景涉及 PDF 解析,用 3.10–3.12 更稳。
- 自写对话循环不设上限:角色扮演理论上可能无限循环。自己写循环时务必设轮数上限(如示例中的 chat_turn_limit=50),并检查 CAMEL_TASK_DONE 信号及时 break。
CAMEL 的价值在于把"多个 LLM 怎么接力"这件琐碎的事收敛成"定义角色 + 交出任务":对话交给 RolePlaying,编排交给 Workforce,换模型只改一行。跑通上面两步之后,可以继续从这几个入口深入:
- 官方文档:docs/
- 示例代码: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),仅供参考