何为一个合格的agent?
ChatAgent() 类是 CAMEL 🐫 框架的核心。我们agent设计的核心原则是围绕一个关键问题:
我们能否设计一个有自主性的可交流沟通的agent,其可在最少的人类监督下,能够有效地引导对话朝着任务完成的方向前进?
在当前的实现中,CAMEL的agent具备以下几个重要特性:
角色: 每个agent都有一个特定的角色设定,自定义目标和内容,这构成了agent的初始状态,这些设定引导agent在连续的互动中采取适当的行动。
记忆: agent具有上下文记忆和外部记忆功能,使其能够在更扎实的基础上进行推理和学习,这些记忆功能帮助agent更好地理解和处理当前的对话情境。
工具: 我们为agent提供了一组可以与外部世界互动的函数,这些工具赋予了agent具体的操作能力,使其能够执行各种任务。
通信: 我们的框架支持agent之间灵活且可扩展的通信,有效的通信是解决关键研究问题的基础,有助于agent协同完成复杂任务。
推理: 我们为agent配备了不同的规划和奖励(批评)学习能力,使其能够在任务完成过程中进行优化。通过这种方式,agent能够以更有指导性的方式完成任务。
本篇教程将简单有效地教你如何使用CAMEL框架去创建一个属于自己的可自定义的可沟通协作的agent,让我们开始吧~
详细教程如下
安装CAMEL
2. 导入需要的模块和安装包
3. 设置OPENAI的API Key
CAMEL支持不同的模型来驱动Agent,以OpenAI为例子,在环境中设置你的OpenAI的API Key,如果你还未拥有API key,可在OpenAI的官网获取。
4. 设置在CAMEL框架中role playing机制里的assistant role
可以通过修改‘role_name’ 和 ‘content’ 来为你的第一个Agent设定包括角色名和内容的系统提示词。
5. 初始化你的agent
创建你的agent,可自定义的参数’message_window_size‘是聊天记忆的长度。
6. 通过.step()与你的agent进行互动
'make_user_message' 用于设置用户角色的基本消息。可以通过修改 'role_name' 和 'content' 来自定义角色。.step() 会将把消息发送到我们在上一步创建的agent。
7. 高级功能-Tool usage
CAMEL 已经集成了多种工具,例如搜索功能和数学计算功能。在这里,你可以尽情体验可以进行搜索和计算的agent!我们近期将会发布CAMEL中Tool Usage的详细中文教程,敬请关注~
The end
接下来,feel free to play with your own agent! 随时试试这些拥有强大功能的agent,让我们一起探索AI agent的无限可能性吧!
CAMEL微信群
加入CAMEL微信群,请添加CAMEL官方微信号CamelAIOrg,会有工作人员通过您的好友申请并邀请您加入我们的微信群~
Join CAMEL Community
www.camel-ai.org
github.com/camel-ai/camel
https://discord.gg/fm5Mvt7z
撰稿/排版 | 瞿思思
校对 | 范文栋