5分钟跑通 CAMEL:从单个 Agent 到多 Agent 角色扮演协作
5分钟跑通 CAMEL从单个 Agent 到多 Agent 角色扮演协作【免费下载链接】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/camelCAMEL 是一个基于大模型角色扮演的多智能体框架。它解决的具体问题是让两个模型分别扮演用户和助手自己互相下达指令、交付成果你只给一句需求不用手写对话就能拿到完整产出。快速上手安装与最小运行环境准备Python 3.10 以上即可。默认走 OpenAI 平台的模型所以 运行前确认环境变量里已有OPENAI_API_KEY。安装 CAMEL 并跑通最小示例pip install camel-ai然后新建一个脚本写入下面这段from camel.societies import RolePlaying session RolePlaying( Python Programmer, Stock Trader, task_promptDevelop a trading bot for the stock market, ) msg session.init_chat() for _ in range(10): a_resp, u_resp session.step(msg) print(a_resp.msg.content) msg a_resp.msg跑起来后你会看到两个角色的对话交替滚动Stock Trader先拆解需求再逐条下指令Python Programmer逐条回应一轮轮逼近最终交付物。刚才那段代码背后发生了什么输入你只给了三样东西——两个角色名和一句任务。内部流转RolePlaying先根据角色名自动生成双方各自的系统提示词init_chat()让助手一方先开口请开始逐条下达指令此后每次step()完成一轮用户下指令 → 助手执行的来回。输出每轮的助手消息被打印出来最终交付物就在最后一条助手消息里。有两个设计决策值得展开。为什么对面要放一个用户不是让助手一个人发挥。AI User 扮演的是专家角色持续下指令、提验收要求交付物才会一轮比一轮贴近任务本身而不是跑题。对话终止怎么判断每次返回都带terminated标志框架还会识别回复中的CAMEL_TASK_DONE标记词仓库示例脚本就是在检测到标记词时退出循环的上面for的 10 轮上限只是兜底。另外可以初始化时加with_task_specifyTrue框架会先把一句话任务展开成更具体的描述再开始对话。核心能力拆解按场景选模块当你需要用对话跑完一整个任务→ 你只需一句话需求RolePlaying 完成双角色对话闭环 → 你得到完整对话记录和最终答案不用手写双方提示词。当任务复杂到单轮对话装不下→ 用 Workforce 机制管理器 Agent 把任务拆成子任务、分派给多个工人 Agent 执行 → 子任务结果被自动整合成最终输出。当 Agent 需要查实时信息或执行代码→ 纯文本对话不够用时给它挂上 Toolkit搜索、天气、网页抓取、代码执行 → Agent 在对话中自主决定何时调用工具。当你要换模型供应商→ 构造 Agent 时传入平台与模型名比如 Anthropic 的模型 → 业务代码不用动供应商就能切换。实际场景能拿它做什么客服机器人输入用户在聊天频道里问产品使用问题过程Agent 通过 RAG 检索产品文档后组织答复输出基于文档的回答直接发回频道落地页制作输入一句话需求创建产品 landing page过程管理器拆出文案、HTML 编码两个子任务分派给对应工人输出整合后可直接打开的 HTML 页面动态旅行规划输入目的地、日期、预算过程Agent 依次查询实时天气与路线信息输出逐日行程天气变化时自动调整踩坑记录与进阶方向常见卡点 ⚠️对话打转两个 Agent 反复围绕同一条指令白烧 token——没检查terminated或没设轮数上限。解决每轮判断终止标志并保留 for 上限兜底。缺 API Key 直接报错默认走 OpenAI 平台没配密钥跑不起来。解决导出OPENAI_API_KEY或显式传model参数切到你要用的平台。产出和任务对不上一句话需求太模糊助手会自己猜需求。解决加with_task_specifyTrue让框架先把任务展开成具体描述再开工。进阶方向自定义角色自己写角色名与任务描述直接传给 RolePlaying模型混搭给 ChatAgent 传平台, 模型元组比如换 Anthropic工具集成在 camel/toolkits/ 下挑选需要的 Toolkit 挂给 Agent任务分解在 camel/societies/workforce/ 用 Workforce 处理多子任务场景示例对话跑通之后最快的成长方式就是照 examples 里的脚本逐个跑。官方文档示例代码核心源码【免费下载链接】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),仅供参考