关注AI炼金术 2023-08-03 19:01 上海
卷首语几周前,OpenAI 两位大神开始吆喝 Agent,刚好同期我们发了Vol.21 不要做 AI 应用!
卷首语
几周前,OpenAI 两位大神开始吆喝 Agent,刚好同期我们发了Vol.21 不要做 AI 应用!要设计智能体组织 。一个非共识的认知,瞬间又变成了热门共识,所有观念都在流动,太阳每天都是新的,这个行业实在太好玩了:)
这周一半时间在带娃旅行,一半时间在思考设计一个多智能体产品的 MVP,那么就接着聊聊智能体好啦。
第一部分,介绍两篇框架性的科普文章,一是 Lilian Weng 的科普文,二是《人工智能:一种现代的方法》读书笔记,我正在读这些东西补课,如果你也是外行想装内行的话,赶紧按图索骥学起来吧。
第二部分,介绍几个最近比较有意思的多智能体的项目,比如拍《南方公园》的 ShowerRunner,开游戏公司的 ChatDev,和开软件公司想自己进化自己的 MetaGPT。听 MetaGPT 创始人直播的时候听到他在参考文章那段推荐我们这篇 Vol.19 99% 的软件会消失,真正的 AI 原生产品怎么设计?有一种吃瓜吃到自己头上的感觉:)
最后一部分,讲讲我们自己在产品设计过程中一些奇奇怪怪的想法,帮助大家一起开拓思路。如果你也在做这方面的工作,欢迎联系我们聊天儿哈,大家碰撞碰撞~
科普:
什么是 Agent 啊 ?
Lilian Weng 这篇博文可以用来做 AI Agent 全面科普。
她把 Agent 定义为 LLM、任务规划(Planning)、记忆(Memory)和工具使用(Tool Use)的集合。任务规划包含了任务拆解(Task Decomposition)和自我反思(Self Reflection);记忆包含感知记忆、短期记忆和长期记忆;工具使用包含任务定义、模型选择、任务执行和反馈生成。
感兴趣的同学建议查看原文按图索骥。
如果想系统性的了解机器学习领域对 Agent 的框架,可以翻一下另一篇文章,里面有很多定义框架,(对我这种其实已经把技术忘光的人)读一遍还是很有启发。
比如把一个任务环境(task environment)定义成 PEAS:性能(Performance)、环境(Environment)、执行器(Actuator)和 传感器(Sensor)。
或者把学习型智能体模块分成:学习元件(Learing Element),性能元件(Performance element),Critic, 问题生成器(Problem generator) 。性能元件负责选择外部行动,接受感知信息并决策。学习元件负责改进提高,评判元件根据固定的性能指标告诉学习元件Agent的运转情况,问题产生器负责对新的和有信息的经验的行动提议,建议探索性行动(次优的行动)。
延伸阅读
AI Agents大爆发:软件2.0雏形初现,OpenAI的下一步
https://mp.weixin.qq.com/s/Jb8HBbaKYXXxTSQOBsP5Wg
LLM Powered Autonomous Agents
https://lilianweng.github.io/posts/2023-06-23-agent/
人工智能:一种现代的方法(第四版【2020】原版)- Chapter 2 Intelligent agent
案例:
ShowRunner、ChatDev和 MetaGPT
老外搞了个南方公园的模拟器,让 Agent 在里面根据设定自由发挥,拍了一集《南方公园》。
觉得在“创造性”上有一个很值得借鉴的点,就是可以由人类来给出一个特别开脑洞的前提(比如穿越;比如时间轮回;或者这个例子中的“其实明星已经被 Elon 抓火星陪他去了,现在的都是 DeepFake),然后由 AI 来演绎故事。
因为前提足够有趣,所以 AI 只需要老老实实推演故事线,就会有很多新奇和抓马的剧情发生,这种设计比期待 AI 既有逻辑又有创造力,要更讨巧务实。
除了拍戏之外,更多的人在研究怎么给 Agent 组队干活。
清华出了个 ChatDev,让 Agent 组了个游戏公司,有 CEO、设计师、程序员……多重角色。
人类给一个初步 idea,然后 idea 进入到整个工作流当中一步一步实现。
比较有意思的事情是,每一步,都是两个 Agent 聊出来,而不是一个 LLM 想出来的,这样可以避免一些幻觉问题,也可以提高成品质量。另一方面,可能也更容易 debug……(如果某个环节一直无法达成共识往下走,就会唤起反思流程)。
看起来没有那么 fancy,但感觉上更好用的是 MetaGPT。
作者吴承霖的直播中,有很多有意思的点。
一,在 Lilian 对 Agent 的定义上加入了神经(sensor)和直觉,又打开了两个可能性维度。
二,把 SOP 解释成“对团队编程”,而给一群 Agents 增加优质的 SOP 可以显著提高产出质量——两家公司,就算员工水平差不多,但公司 SOP 不同的话,水平也可能迥异。
三,把“ 多智能体”定义为“智能体 + 环境 + SOP + 路由 + 订阅 ”,路由都想得到,但“订阅”这个抽象很有意思。
最后,他在直播最后给出的参考文章只有两篇,其中一篇就是 Vol.19 99% 的软件会消失,真正的 AI 原生产品怎么设计?,看视频看到这里的时候有一种吃瓜吃到自己头上的感觉:)。被一线前沿实战的同学引用参考一下还是很开心的!
延伸阅读
AI智能体联手GPT-4淘汰人类导演,模仿斯坦福西部世界拍出《南方公园》
https://36kr.com/p/2353412806833926
MetaGPT开源发布:人类古法编程?AI-Agents 10分钟就写完工程了
https://mp.weixin.qq.com/s/X2sKGmE5sStwcWAfyP0IQw
MetaGPT作者深度解析直播回放
https://www.bilibili.com/video/BV1Ru411V7XL/?vd_source=ba00f5af54102491778da605c64c8aa3
思考:
为什么要引入多智能体的概念?
我的理解是几方面:首先,这其实是为了方便人类来理解和设计,就有点像“面向对象编程”,为什么要给桌子椅子设计一个“对象”呢?理论上最后不都是转化成了过程执行么?本质上,还是为了适应我们自己的大脑,我们脑子里已经有了很多“对象”概念,复用一下很好理解和设计;同理,我们脑子里已有“智能体”(人)的概念,借用这个概念来设计会比较轻松。
其次,独立个体之间的协作,可以涌现出超越个体的能力。就好像扎克伯格在播客里说的“我们其实已经设计出超越个体智能的物种了——公司就是。“我们设计一个个智能体,然后设计交互的方式和环境,还有自身的迭代进化机制,其实很可能实现出远超乎我们规划和想象的能力。就好像你拉几个兄弟开一家公司,这家公司慢慢就会有自己的生命,可能 3 天就死,也可能 3 年上市,绝大部分故事都会在你意料之外。
而且,智能体之间的协作,可能反过来会发挥它们特殊的优势。或许人类个体能力 80 分,GPT 50 分。但 100 个 80 分的人类协作带宽很窄,需要大量的 SOP、文档和行政管理,说不定 100 x 80 = 500 而已;但智能体之间没这个问题,可以非常高效完整沟通,说不定 100 x 50 = 5000。单个任务上人类完胜,但智能体协作产生的组织能力上或许刚好反过来。
最后,还有个最朴素的角度,就是“ Those GPTs need more tokens to think ”。人类如果需要深度思考、提升产出质量,会需要更多的时间。类似的,GPT 需要更多的 token。本质上不管是 COT 还是 TOT,把形态去掉其实都是给了 GPT 更多的 token 去思考、得到更好的结果。而设计多个 Agent 的交互,逻辑上也很朴素而有道理的提供了更多的 token。
用这个思维模型的局限性在哪里?
可能会被我们脑子里关于”人类“的理解束缚住:虽然我们在设计 Agent,但很容易不由自主地把设计对象拟人化,这会使得我们毫无必要地延续一些对于人类能力的隐含假设来设计任务。
比如,我们对于另一个人类,可能有一个自己都没有意识到的隐含假设是“ TA 不可能啥都懂 ”。所以,我们设计的任务,常常只需要一两种专业能力,一两个垂直行业知识,以及大量常识。大量的人类,也是被这种任务训练出来的,在这些任务上表现良好——比如你手下一个 4 年经验的公众号小编,很容易多快好省写出你想要的文章。这时,如果我们设计一个 Agent,但给它的是这种”其实视为人类量身定做的“任务,很容易产生鲜明对比发现它不靠谱。
但是,如果是另一类任务呢?如果这个任务同时需要懂 60 分水平的量子物理、古典诗词、西班牙语和地理知识呢?这时会发现几乎找不到胜任的人类,但 GPT-4 总是能轻松完成。事实上,我自己在看《人工智能的火花》里那些 GPT-4 测试题时,很多 GPT-4 能搞定的题我都做不出来……
之所以这个世界上很少有这样的”综合性要求高,单项要求低“的任务,不见得是世界本质,而是因为这些任务是根据人类能力局限性定制的。
如果小猫咪统治了世界,估计会给自己造很多猫爬架。这时,如果某个布偶猫(比如我们家喵欢喜)发明了 CatGPT,它们很自然会考验这个 CatGPT 是否擅长腾挪跳跃,给 CatGPT 安排的任务也可能是”上树摘果“和”钻洞抓老鼠“。但有可能 CatGPT 是异种智能,具备的不是猫的特长而是狗的特长,这时逼它去上树钻洞是缘木求鱼,更应该识别它“ 鼻子好 ”和“ 会游泳 ”,安排它“ 野外追踪 ”和“ 下河捉鱼 ”。
所以,要提醒自己,不要太把 GPT 拟人化(类人智能),而要当成是“异种智能”(当做刚刚降临地球的外星人好了)。识别他们的长处和局限,重新设计适合它们的任务、工作流和组织方式,这样才能真的把能力释放出来。
好啦,终于又水完精心打造完一期~
觉得有价值的话,欢迎把“AI 炼金术”推荐给朋友们哈~