第六节课《Lagent & AgentLego 智能体应用搭建》学习笔记

本次课程由樊奇主讲。


首先了解为什么要有智能体?

随着大语言模型的发展,我们逐渐发现即使是GPT-4这样的大语言模型,在某些场景下也不能满足实际需求,有着诸多的局限性如:产生幻觉(模型可能生成虚假信息,其内容与现实严重不符或脱节)、缺乏时效性(模型训练数据过时,无法反映最新的趋势和信息)、缺乏可靠性(面对复杂任务时,可能频发错误输出现象,影响信任度)。因此,基于大语言模型的智能体应运而生

什么是智能体?

一个智能体应满足以下三个条件:可以感知环境中的动态条件,能采取动作影响环境,能运用推理能力理解信息、解决问题、产生推断、决定动作。

智能体的组成:

大脑(作为控制器,承担记忆、思考和决策任务。接受来自感知模块的信息,并采取相应动作。)、感知(对外部环境的多模态信息进行感知处理。包括但不限于图像、音频、视频、传感器等。)、动作(利用并执行工具以影响环境。工具可能包括文本的检索、调用相关API、操作机械臂等。)

智能体的范式:

经典的智能体范式包括AutoGPT、ReWoo和ReAct。

AutoGPT的流程:

用户将目标和任务输入给整个系统后,任务的列表将会将任务发送给相对应的智能体,智能体在执行后,会将相关的结果以及任务存入到存记忆当中,并且把相关的结果发送给另外一个智能体,由这个智能体再创建出新的任务,由此循环直至最终完成任务。

ReWoo的流程:

ReWoo将用户的输入做拆分,将各种工具之间的依赖形成一个有向无环图,并且在图中进行计划执行,直到达到最终的结果。由来自ReWoo论文中的图可以了解到:Planner作为一个决策,它将输入拆分成了多步,其中的每一步都对应着相应的任务,然后将其中需要执行的部分发送给Worker进行执行,最终两部分的结果一并发送给Solver得到最终的结果。

ReAct的流程:

接收用户输入后,会选择相对应的工具进行执行,在拿到工具的结束条件后,模型会进一步思考它是否应该选择下一个工具并执行,直到达到结束条件及完成用户的输入为止。由来自ReAct论文中的图可以了解到:ReAct结合了推理与行为两部分,更好地实现了智能体的思维模式。

关于Lagent和AgentLego:

Lagent是一个轻量级开源智能体框架,旨在让用户可以高效地构建基于大语言模型的智能体。它支持多种智能体范式,如上述提到的AutoGPT、ReAct、ReWoo等。它也支持谷歌搜索、Python解释器等多种工具。Lagent的基本流程图如下,可以了解到它的大语言模型板块可以接收到来自人类的反馈、人类指令以及外部观察等,会在做出相应的规划和行动后交付到动作执行器中。而动作执行器包括各种动作,如Python的解释器和搜索等等。

AgentLego是一个多模态的工具包,旨在像乐高积木那样,可以快速简便地拓展自定义工具,从而组装出自己的智能体。它支持Lagent、LangChain、Transformers Agents等多个智能体框架。提供大量视觉、多模态领域前沿算法。

Lagent和AgentLego的关系:

用户将输入内容输入到大语言模型时,大语言模型会根据自身进行判断其是否需要调动工具。如果不需要调动工具则直接进行输出。如果需要调动工具则会进入Lagent的相应逻辑当中,它首先会调用工具,而工具会选择去找到工具的那些功能支持,而一部分的多模态的相关工具的功能支持就在AgentLego算法库中有相应的实现。在得到工具的输出后,模型再经过后处理就变成了智能体的输出。

实战前环境配置

配置conda环境

初始化成功结果如下图所示:

安装 Lagent 和 AgentLego

安装其他依赖

准备Tutorial

实战一:Lagent轻量级智能体框架

  1. Lagent Web Demo

    1.1使用 LMDeploy 部署

        1.2 启动并使用 Lagent Web Demo

端口映射

接下来在本地的浏览器页面中打开 http://localhost:7860 以使用 Lagent Web Demo。

2. 用 Lagent 自定义工具

2.1 创建工具文件

2.2 获取 API KEY

2.3 体验自定义工具效果

端口映射

在输入模型地址并选择好工具后,就可以开始体验了。这里因为我喜欢南京,所以我们就以南京的天气查询为例啦!可以看到成功查询了南京的天气!

实战二:AgentLego组装智能体“乐高”

1. 直接使用 AgentLego

原图与结果对比展示如下

2 作为智能体工具使用

2.1 修改相关文件

2.2 使用 LMDeploy 部署

2.3 启动 AgentLego WebUI

2.4 使用 AgentLego WebUI

3. 用 AgentLego 自定义工具

3.1 创建工具文件

3.2 注册新工具

3.3 体验自定义工具效果

本节课的记录以及实现的回顾均告一段落。

  • 13
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值