LangChain 实战课
黄佳
新加坡科研局首席研究员
8120 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 28 讲
结束语 & 结课测试 (2讲)
LangChain 实战课
15
15
1.0x
00:00/00:00
登录|注册

18|CAMEL:通过角色扮演脑暴一个鲜花营销方案

你好,我是黄佳,欢迎来到 LangChain 实战课!
大模型的成功,在很大程度上依赖于用户的输入来引导对话生成。如果用户能够详细描述他们的任务和需求,并与 ChatGPT 建立一个连贯的聊天上下文,那么 ChatGPT 往往能提供更精确和高质量的答案。但是,为模型提供这种引导是一项既费时又费力的任务。
这就引出了一个有趣的问题:能否让 ChatGPT 自己生成这些引导文本呢?
基于这个想法,KAUST(阿卜杜拉国王大学)的研究团队提出了一个名为 CAMEL 的框架。CAMEL 采用了一种基于“角色扮演”方式的大模型交互策略。在这种策略中,不同的 AI 代理扮演不同的角色,通过互相交流来完成任务。

CAMEL 交流式代理框架

下面我们一起来看看 CAMEL——这个多 AI 通过角色扮演进行交互的框架,以及它在 LangChain 中的具体实现。
CAMEL,字面意思是骆驼。这个框架来自于论文《CAMEL: Communicative Agents for “Mind” Exploration of Large Scale Language Model Society》(CAMEL:用于大规模语言模型社会的“心智”探索的交流式代理)。这里面所谓的 CAMEL,实际上来自沟通(也就是交流)代理心智探索以及 LLM 这五个单词的英文首字母。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

CAMEL框架是一个基于角色扮演的大型模型交互策略,旨在促进交流代理之间的自主合作,并为其“认知”过程提供洞察。该框架通过启示式提示来指导聊天代理完成任务,同时保持与人类意图的一致性。文章介绍了CAMEL框架的设计和应用,强调了其创新之处。通过角色扮演和启示式提示的方式引导代理的交流过程,为研究多代理系统的合作行为和能力提供了一种可扩展的方法。CAMEL框架为多代理系统的合作行为提供了一种新颖的方法,同时也为人工智能交互设计提供了有益的思路。文章还详细介绍了系统消息模板和头脑风暴的过程,展示了CAMEL框架在模拟助手和用户之间的多轮对话中的应用。总体而言,CAMEL框架为交流代理的发展提供了新的视角,通过角色扮演和启示式提示的方式开发出更加智能和人性化的交流代理,为日常生活带来更多便利。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《LangChain 实战课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(6)

  • 最新
  • 精选
  • neohope
    一、感觉可以再增加一个方案评价的角色,每一轮对结果进行挑战和质疑,帮助AI进一步进行优化,这样方案是不是就可以用于实操了。 以鲜花营销方案为例,可以这样调整一下: 1、营销要求进一步具体化,给出期望达到的目标 2、每一轮营销专员给出方案后,花店老板对给出的方案进行评价,并进一步给出优化要求 3、营销专员根据评价和进一步的要求,改进自己的方案 4、当花店老板评价方案达标时,结束循环 最后应该可以形成一个完善、可行的方案。 二、此外,花店老板、营销专员可以交叉使用不同的大模型,相互碰撞,将碰撞结果进行评分,最终由GPT给出评分最高的三个方案,可以得到更好的结果。

    作者回复: 好滴,很棒的思考!

    2023-10-18归属地:上海
    4
  • 您好,老师,请教一个疑惑,怎么限制这个对话达到某个token数值前停止,防止超出token限制,而且要得出答案。

    作者回复: 可以在提示语中告诉模型,把答案限制在XXX字以内,同时要给出完整回答。

    2023-10-19归属地:广东
    1
  • 鲸鱼
    老师,我运行您的demo,输出的结果不是很理想。总是花店老板自己就开始给方案了,然后营销专员就简单重复花店老板的方案;对话到后面花店老板开始问营销专员下一个请求了。重复了好几次都是这样 开头的对话================== AI User (花店老板): 指令:确定目标人群。 输入:夏季玫瑰之夜的目标人群是年龄在25-45岁的城市居民,对浪漫活动和花卉有兴趣的人群。他们可能是情侣、夫妻或单身人士,他们喜欢参加社交活动并寻求独特的体验。他们有一定的消费能力,愿意为特殊的活动支付适当的费用。 AI Assistant (花店营销专员): 解决方案:夏季玫瑰之夜的目标人群是年龄在25-45岁的城市居民,对浪漫活动和花卉有兴趣的人群。他们可能是情侣、夫妻或单身人士,他们喜欢参加社交活动并寻求独特的体验。他们有一定的消费能力,愿意为特殊的活动支付适当的费用。下一个请求。 最后的对话================== AI User (花店老板): 指令:设计广告和社交媒体推广计划。 输入:设计夏季玫瑰之夜的广告和社交媒体推广计划需要考虑以下方面: 1. 广告渠道:选择适合目标人群的广告渠道,如报纸、杂志、户外广告牌等。 2. 广告内容:设计吸引人的广告内容,包括活动主题、时间、地点和参与方式等信息。 3. 社交媒体平台:选择适合目标人群的社交媒体平台,如Facebook、Instagram、微信等。 4. 社交媒体内容:制作有吸引力的社交媒体内容,包括活动海报、短视频、活动介绍等。 5. 广告预算:确定广告投放的预算,并根据预算选择合适的广告形式和频率。 6. 推广策略:制定推广策略,如合作推广、优惠活动、分享抽奖等,以吸引更多参与者。 请提供下一个请求。 AI Assistant (花店营销专员): 解决方案:设计夏季玫瑰之夜的广告和社交媒体推广计划如下: 1. 广告渠道:选择适合目标人群的广告渠道,如在当地报纸和杂志上发布广告,租用户外广告牌等。 2. 广告内容:xxx字数超限以xxx代替 3. 社交媒体平台:xxx 4. 社交媒体内容:xxx 5. 广告预算:xxx 6. 推广策略:xxx 下一个请求。 AI User (花店老板): <CAMEL_TASK_DONE> AI Assistant (花店营销专员): 任务完成。

    作者回复: 1. 调整一下Temperature? 2. 调整一下Prompt?

    2023-11-10归属地:北京
    2
  • 账号已注销...
    老师,有可运行的jupyter代码吗?这样看起来比较直观
    2024-03-11归属地:广东
  • 徐冰
    貌似这种模式对大模型本身要求还有一点高。实测下来,3.5turbo会逐步变成老板自己给方案,但是格式起码还一直对的。换成通义千问qwen-max测试,结果聊着聊着连格式都不跟随了,两个代理最后 相互加油变成死循环。尝试调整了pompt也效果不大。o(╥﹏╥)o
    2024-01-31归属地:上海
  • colvin.zhang
    ask_specifier_prompt = """这是一个{assistant_role_name}将帮助{user_role_name}完成的任务:{task}。请使其更具体化。请发挥你的创意和想象力。请用{word_limit}个或更少的词回复具体的任务。不要添加其他任何内容。""" task_specifier_template = HumanMessagePromptTemplate.from_template( template=task_specifier_prompt) 老师demo程序本身没啥问题,变量命令建议交换一下 ask_specifier_template= """这是一个{assistant_role_name}将帮助{user_role_name}完成的任务:{task}。请使其更具体化。请发挥你的创意和想象力。请用{word_limit}个或更少的词回复具体的任务。不要添加其他任何内容。""" task_specifier_prompt = HumanMessagePromptTemplate.from_template( template=task_specifier_prompt)
    2023-10-31归属地:上海
    1
收起评论
显示
设置
留言
6
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部