从零拆解一款爆火Agent智能体,4步学会设计自主决策Agent
以前我们开发的大多数智能体是固定的工作流模式,很少有按照下面的框架,开发具有和的智能体。前两天,我分享了一款可以自动使用浏览器完成简单任务的开源Agent——。是一款开源 Agent,在 GitHub 上有 1.5w star,一条命令就可以在本地安装使用,门槛非常低。自从上次分享完之后,我的职业病就犯了,总想拆解一下看看是怎么实现的,所以就有了今天这篇文章。只用了一条提示词完成了上面第一张图中
以前我们开发的大多数智能体是固定的工作流模式,很少有按照下面的框架,开发具有自主决策和自主使用工具的智能体。

前两天,我分享了一款可以自动使用浏览器完成简单任务的开源Agent——browser-use。
browser-use 是一款开源 Agent,在 GitHub 上有 1.5w star,一条命令就可以在本地安装使用,门槛非常低。

自从上次分享完之后,我的职业病就犯了,总想拆解一下看看是怎么实现的,所以就有了今天这篇文章。
browser-use 只用了一条提示词完成了上面第一张图中 Agent 的四个模块——Memory、Planning、Tools和Action。
这条提示词在源文件 prompts.py 中,有130行

虽然提示词有点长,但不用担心,按照上面四个模块拆解完就会发现如此清晰、简单。

上面这段提示词是对四个模块的定义,下面我们一个一个来说。
Memory(记忆) - 记录已经完成的任务和接下来要进行的任务。
`"memory": "Description of what has been done and what you need to remember until the end of the task",`
我把上面‘打开博客’案例的执行过程记录了下来,可以看到 Memory 实际的栗子
`'memory': "Baidu is open, ready to search for '渡码'."`
Planning(规划**)**- 根据当前页面(网页)判断上一步执行是否成功,生成接下来应该执行的任务。
`"evaluation_previous_goal": "Success|Failed|Unknown - Analyze the current elements and the image to check if the previous goals/actions are successful like intended by the task. Ignore the action result. The website is the ground truth. Also mention if something unexpected happened like new suggestions in an input field. Shortly state why/why not",``"next_goal": "What needs to be done with the next actions"`
这里包含两部分,第一步是 evaluation_previous_goal 判断之前任务是否成功,之前的任务是什么,可以在记忆中获取,这就解释了为什么第一张图中 Memory 有一条虚线指向 Planning。
之前任务状态决定了下一个任务的规划,如果之前任务失败则重试,如果成功则规划新任务。
实际的栗子:
`'evaluation_previous_goal': 'Success - Baidu was successfully opened in a new tab.',``'next_goal': "Input '渡码' into the search box and submit the search."`
Tools(工具)- browser-use 定义了15个可以操作网页的工具。

工具的定义会放在提示词中,以便大模型选择。每一个工具都有对应的代码用于完成具体的任务。

Action(行动)- 根据 Planning 生成一系列具体的行动
直接上栗子:
`'action': [{'input_text': {'index': 12, 'text': '渡码'}}, {'click_element': {'index': 13}}]`
这个例子中,有两个行动,第一步,在页面元素标号12的地方(搜索框)输入‘渡码’;第二步,在页面元素标号13的地方(搜索按钮)点击,完成搜索。
只不过巧合的是,在 browser-use 中所有 Action 都是用 Tools 完成。
有些朋友可能会有疑问,这些标号是怎么来的。
browser-use 是通过分析页面 HTML 代码,识别出页面中的组件(元素),并给每个组件设置一个标号。

在这个页面中,可以看到五颜六色的标记框和框上的标号,这就是 browser-use 识别的。
最终这些信息会转成 ‘1[:]设置’ 这种格式的文本,追加到提示词中,送入大模型

这样,大模型就能知道页面长什么样,从而可以规划任务。
我觉得这个思路非常值得学习,正是由于大模型具备强大的理解能力,才能用几行文本就代替一个复杂的页面,将一件看似复杂的事情大大简化。
browser-use 在实现上还有一些其他值得学习的细节,比如:有些 Action 执行后可能导致页面变化,这时候会中断任务,重新生成新 Action。
再比如,支持视觉大模型,上传整个网页截图,可以让大模型更好理解页面,从而更好地规划任务。感兴趣的朋友可以下载源码继续研究。
另外,最近看到智能体一个新趋势——主动学习。依赖这项能力,Genius智能体仅用10%的数据和2小时训练就在经典游戏Pong中超越顶尖人类玩家和其他AI模型。
我在工作中搭建智能体也深有体会,由于工作中是私有场景,智能体不理解你的业务,所以就无法给你做出正确的 Planning,这时候智能体自主学习能力就很有必要了。
零基础如何学习AI大模型
领取方式在文末
为什么要学习大模型?
学习大模型课程的重要性在于它能够极大地促进个人在人工智能领域的专业发展。大模型技术,如自然语言处理和图像识别,正在推动着人工智能的新发展阶段。通过学习大模型课程,可以掌握设计和实现基于大模型的应用系统所需的基本原理和技术,从而提升自己在数据处理、分析和决策制定方面的能力。此外,大模型技术在多个行业中的应用日益增加,掌握这一技术将有助于提高就业竞争力,并为未来的创新创业提供坚实的基础。
大模型典型应用场景
①AI+教育:智能教学助手和自动评分系统使个性化教育成为可能。通过AI分析学生的学习数据,提供量身定制的学习方案,提高学习效果。
②AI+医疗:智能诊断系统和个性化医疗方案让医疗服务更加精准高效。AI可以分析医学影像,辅助医生进行早期诊断,同时根据患者数据制定个性化治疗方案。
③AI+金融:智能投顾和风险管理系统帮助投资者做出更明智的决策,并实时监控金融市场,识别潜在风险。
④AI+制造:智能制造和自动化工厂提高了生产效率和质量。通过AI技术,工厂可以实现设备预测性维护,减少停机时间。
…
这些案例表明,学习大模型课程不仅能够提升个人技能,还能为企业带来实际效益,推动行业创新发展。
学习资料领取
如果你对大模型感兴趣,可以看看我整合并且整理成了一份AI大模型资料包,需要的小伙伴文末免费领取哦,无偿分享!!!
vx扫描下方二维码即可
加上后会一个个给大家发
部分资料展示
一、 AI大模型学习路线图
整个学习分为7个阶段

二、AI大模型实战案例
涵盖AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,皆可用。


三、视频和书籍PDF合集
从入门到进阶这里都有,跟着老师学习事半功倍。


四、LLM面试题


五、AI产品经理面试题

六、deepseek部署包+技巧大全

😝朋友们如果有需要的话,可以V扫描下方二维码联系领取~
更多推荐

所有评论(0)