以下是一些关于 Agent 方面的场景案例:
吴恩达最新演讲中提到的四种 Agent 设计范式:
Ranger 文章中的相关内容:
从词源和历史变迁来看:
我们的研究结果表明,如果你使用GPT3.5+Zero-shot的正确率为48%,GPT4+Zero-shot的正确率为67%,但是,如果你用GPT3.5+Agentic Workflow,你会得到超越GPT4的效果!因此,Agent在构建AI应用时非常重要。(然后就到了主题)尽管很多学者、专家谈论了很多关于Agent的东西,但我今天想更具体的分享我在Agent中看到比较广泛的四种设计模式(尽管很多团队,开源项目等做了很多种多样的尝试,但我还是按我的理解划分成了四类)。Reflection和Tool Use属于比较经典且相对已经广泛使用的方式,Planning和Multi-agent属于比较新颖比较有前景的方式。第一个讲的就是Reflection(反思,类似于AI的自我纠错和迭代),举个栗子,我们让用Reflection构建好的一个AI系统写个xxx代码,然后AI会把这个代码,加上类似“检查此段代码的正确性,告诉我如何修改”的话术,再返回给AI,AI可能会给你提出其中的Bug,然后如此反复,AI自己完成了自我迭代,虽然修改后的代码质量不一定能保证,但基本上来说效果会更好。(每页PPT下方,吴恩达大佬都推荐了一些相关论文,可以去看看)如上表述的是案例是Single-agent(区别于Mutli-agent的单智能体),但其实你也可以用两个Agent,一个写代码,然后另一个来Debug👇这两个Agent可以用相同的LLM,也可以用不同的,这种Reflection的方式在很多场景都适用。接下来第二个是Tool Use(如果你经常玩GPT4或者国产的一些AI对话产品,那就不陌生了),大语言模型调用插件,极大的拓展了LLM的边界能力。
agent算是从年前到现在,比较火的一个概念了,也被很多人认为是大模型的未来的一个主要发展方向。首先我们看这个很经典的一张图看起来还是蛮复杂的,然后市面上的很多描述agent的文章写的也比较复杂,说智能体是啥智能的最小单元,相较于copilot,是可以给他设定一个目标后主动完成任务的等等。当然这些说法都没错,但是我觉得还是有些不好理解的。所以我们依然先从原理着手去理解下,agent是个什么东西。首先这张图里,中间的“智能体”,其实就是llm,或者说大模型。四个箭头,分别是我们为llm增加的四个能力。工具、记忆、行动、规划。那么这个是怎么新增的呢?目前行业里主要用到的是一个叫langchain的框架,这个框架可以简单理解为,他把llm和llm之间,以及llm和工具之间,通过代码或prompt的形式,进行了串接。这个其实也像是在rag的基础上再进了一步。因为我们知道rag其实是给了大模型一个浏览器工具来使用嘛,那agent,其实就是给了大模型更多的工具。比如像是长期记忆,其实就是给了大模型一个数据库工具让其往里记录重要信息。规划和行动,其实就是在大模型的prompt层做的些逻辑,比如让其将目标进行每一步的拆解,拆解完成后,每一步去输出不同的固定格式action指令,给到工具作为输入。当然langchain或者说agent还不止这些,也会有很多其他的代码逻辑体现在其中,不过其主要的主干逻辑,其实还是在prompt层和工具层,完成的设计。
随着大航海时代及全球贸易的兴起,“Agent”的角色在商业领域变得日益重要。16至17世纪间,贸易代理和公司代理商开始在全球范围内进行商品交易,如荷兰东印度公司的代理人。18至19世纪工业革命期间,“Agent”的职能进一步拓展到保险、房地产等新兴行业。此外,在19世纪,政府及情报领域也开始广泛使用“Agent”,比如情报特工和便衣警察,在维护国家安全与社会秩序方面发挥了不可或缺的作用。现代(20世纪至21世纪):在20世纪至21世纪的现代社会中,“Agent”一词涵盖了多种职业角色,尤其在娱乐和体育行业中,它指的是艺人经纪人和运动员经理等职位。这些专业经理人负责安排试镜、进行合同谈判以及规划职业生涯,确保客户能在竞争激烈的行业中获得成功。此外,“Agent”还包括劳务代理和招聘代理(猎头)。劳务代理提供劳动力匹配服务,帮助求职者找到合适的工作,并为雇主提供所需的人才,如劳务派遣公司将临时员工派遣到需要额外支持的企业单位。而猎头则专门为公司招募高技能或高级管理职位的专业人士,通过筛选简历、安排面试并评估候选人来帮助企业找到最合适的员工。凭借深厚的行业知识与广泛的联系网络,这些猎头为企业与顶尖人才之间搭建了重要桥梁。从词源和词的历史变迁中,大家就能看到,“Agent”这个词本身就具有行动的含义,到了后期又附加了“替身”的意思。且无论哪个领域,“Agent”都多数情况下都在指:“拥有行动的替身,都是替代他人做某事“