CAMEL:大型语言模型社会的“心智”探索沟通代理

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 英文名称: CAMEL: Communicative Agents for “Mind” Exploration of Large Language Model Society 中文名称: CAMEL:大型语言模型社会的“心智”探索沟通代理 链接: https://arxiv.org/pdf/2303.17760.pdf 代码: https://github.com/camel-ai/camel 4.4K Star 作者: Guohao Li(李国豪), Hasan Abed Al Kader Hammoud, Hani Itani, Dmitrii Khizbullin, Bernard Ghanem 机构: 沙特阿拉伯阿卜杜拉国王科技大学 日期: 2023-03-31 引用次数: 56 |

1 读后感

以往的工作流程主要通过人与 LLM 的交互来控制。文中作者使用一个 Agent 来取代人的计划和决策,而另一个 Agent 负责执行具体的操作。通过这两者的交互,实现复杂工具,从而把人们从繁重的工作中解脱出来。为了示范这个过程,作者开发了一个股票投资机器人。同时通过实验发现并总结了 Agent 交互过程中可能出现的问题,以及相应的解决方法。

2 相关知识

"是什么神奇的技巧让我们变得聪明?其实并没有什么神奇的技巧。我们的聪明才智来自于我们极其丰富的多样性,而非任何单一的、完美的原则。" - 马文·明斯基,《心智社会》

3 摘要

  • 目标:探索构建可扩展技术以促进沟通代理之间的自主合作,并深入了解它们的"认知"过程。
  • 方法:提出了一种新颖的沟通代理,以解决实现自主合作的挑战。
  • 结论:研究表明,构建可扩展技术有助于促进沟通代理之间的自主合作,并提供了对其"认知"过程的洞察。

4 引言

面对现实世界任务的复杂性,通常需要多个步骤才能解决。大模型的成功很大程度上依赖于人类的投入,引导对话朝正确的方向发展。然而,制作有效的提示通常需要对特定知识领域的深刻理解和专业知识,这无疑增加了难度。那么,如何在最少的人工监督下引导对话完成任务呢?

作者提出了一种名为角色扮演的新型合作代理框架,以自动化沟通代理之间的合作。这种方法只需要人类的初步想法来引导对话朝着复杂的任务解决方向发展。具体来说,这种方法涉及使用角色扮演和启动提示来自主引导沟通代理完成任务。

5 方法

开发了:助手 - 用户场景,在开始时给出了一个初步的想法。智能体将把这个想法概念化为一个特定的任务,并通过对话自主完成它。

5.1 角色扮演框架

任务的目标是开发一个股票交易机器人。任务涉及角色包括作为 Python 程序员的 AI 助手代理 和作为 股票交易员的 AI 用户代理。任务说明使代理使得任务更具体化,从而能够为助手提供具体明确的任务。AI 用户和 AI 助手都有明确的任务指定,通过多轮对话,他们共同完成指定任务,直至 AI 用户确认任务完成。此外,我们还引入了批评者代理,它能够从角色扮演代理中选择建议,或向角色扮演代理提供反馈。

具体来说,是开发配备情绪分析工具的交易机器人,该工具能够监控社交媒体平台上对特定股票的正面或负面评论,并根据情绪分析结果进行交易。

5.2 启动提示

提示的主要作用在于对话的初始阶段。它由三个不同的部分组成:任务说明符提示 (PT)、AI 助手系统提示 (PA) 和 AI 用户系统提示 (PU)。AI 助手系统提示和 AI 用户系统提示在大多数情况下是对称的,包含了任务分配、角色、通信协议、终止条件,以及避免不良行为的限制或要求的相关信息。请参考图 -2 以获得具体的说明。

6 实验

6.1 常见问题

  • 角色翻转:在对话中,助手和用户的角色有时会发生转换。这通常发生在助手开始提供指令或命令,而不是跟随用户的提示,可能导致混淆和角色反转。为避免角色翻转,助手不应提问,因为这也可能导致问题。
  • 助手重复指令:另一个挑战是,助手只是重复用户的指令,而没有发生角色翻转。
  • 空洞回复:我们还观察到助手有时会用 "I will..." 这样的空洞回复,这些消息并未有助于当前任务,因为助手承诺采取行动但最终未能执行。
  • 无限循环的消息:助手和用户陷入无意义对话的无限循环,比如反复感谢对方或说再见但没有推进任务。

6.2 终止条件

  • 用户无指令:如果用户连续三轮没有指示助手,对话将结束。
  • 助手指令:如果助手向用户提供指令,表示角色反转,对话将被终止。
  • 任务结束标记:如果用户认为任务已经解决,他们应该说来标志任务的完成。接收到此消息后,对话将被终止。
  • 助手和用户的令牌限制:考虑到 gpt-3.5-turbo 对令牌数量有限制,如果助手或用户达到令牌限制,对话将被终止。
  • 最大消息数量:为了控制生成聊天的成本,设定了最多 40 条消息的限制。这个限制确保用户和助手之间有足够长的对话,同时也确保生成的数据不会产生过高的成本。对话长度与成本呈二次方关系,因此设定限制非常重要。

7 附录

附录 A 中,展示了从获取股票信息到编写程序,再到进行交易的示例过程。

8 启发

以 AI 编程为例,往往是语言模型 (LM) 扮演上例中"Python 程序员"的角色,而人则是"AI 用户"的角色:提问,接收反馈,运行,并再次提问,直到问题得到解决。

在这里,我们希望 AI 能扮演"人"的角色。虽然代理模型(Agent)在语言模型 (LM) 出现后很快就成为了热门,但目前我们的大部分工作还是由人和 LM 协作完成,还有很大的优化空间:理论上,只要我们能想明白,描述清楚,所有可重复的工作都可以由 LM 完成。

在优化代理模型方面,我们的主要目标是让语言模型 (LM) 通过提示或训练,能够更好地扮演"人"的角色。过去的引导学习主要集中在聊天场景的优化上,使 LM 能够更好地与人沟通。未来,我们可能会扩大其应用范围,覆盖所有可描述的工作。

相关推荐
旋生万物几秒前
分形自相似:微服务、缓存、Prompt 模板为什么长一样
人工智能·缓存·微服务·云原生·prompt
虎鲸不是鱼2 分钟前
【虎鲸进化论 02】三阶跃迁:Tab 补全 → Vibe Coding → Agent,人在每一层退到哪里
大数据·人工智能·大模型·llm·自进化agent
Yolanda_20224 分钟前
Claudecode报错402 insufficient balance(1008)
人工智能·神经网络·chatgpt
武天旭4 分钟前
AI安全--AI大模型的漏洞攻防与数据投毒风险
人工智能·安全
智恒百亿6 分钟前
RTX 5090 多卡集群工程实践:消费旗舰卡搭建 8 卡算力平台的坑与边界
服务器·人工智能·ai算力·rtx5090
JavaEdge.7 分钟前
Qodo v.s AI IDE Code Review
ide·人工智能·代码复审
for_ever_love__8 分钟前
LangChain 多工具协作:一个 Agent 不够用时怎么办
人工智能·langchain·langgraph·协作·多agent·多工具·工具编排
野生码农AI实战8 分钟前
我把P1迭代丢给免费模型MIMO:4.4小时干完,全口径token账7233万
人工智能
小飞象—木兮9 分钟前
经营分析核心思路:经营分析的六层执行框架、底层原则、 全行业通用经营分析方法论
大数据·人工智能·矩阵·数据分析·用户运营
luiyarch10 分钟前
TBOX信息安全系列6设计篇-系统数据安全方案
人工智能·安全·车载系统·汽车