第六讲 Lagent & AgentLego 智能体应用搭建

笔记

1、智能体的意义

大模型回答的幻觉:模型可能会产生虚假信息,与现实严重不符或者脱节。

模型训练数据过时,无法反应最新趋势和信息。

面对复杂任务时,可能频发错误输出现象,影响信任度。

2、智能体范式

AutoGPT/ReWoo/ReAct

3、Lagent

Lagent是一个轻量级框架,专门用于构建基于LLM(Logical Layered Modeling)的代理。这种框架的设计目的是为了简化和提高基于这种模型的代理的开发效率。LLM模型是一种强大的工具,可以用于模拟和管理复杂的系统,而Lagent就是这种模型的实现。它的出现让开发者能够更加方便地创建和管理基于LLM模型的代理,无论是在开发过程中还是在实际应用中都可以大大提高效率。

4、AgentLego

AgentLego 通过提供一个易于扩展、易于使用、易于部署的工具集合,让大家能够轻松地在各种 Agent 系统中发挥想象力,赋予大模型更强大的能力。

作业

Lagent Web Demo

1、配置agent所需环境,这里我装在前面的LMDeploy的环境里

2、部署LMDeploy的api_server

conda activate agent
lmdeploy serve api_server /root/share/new_models/Shanghai_AI_Laboratory/internlm2-chat-7b \
                            --server-name 127.0.0.1 \
                            --model-name internlm2-chat-7b \
                            --cache-max-entry-count 0.1

3、启动并使用 Lagent Web Demo

conda activate agent
cd /root/agent/lagent/examples
streamlit run internlm2_agent_web_demo.py --server.address 127.0.0.1 --server.port 7860

4、将 LMDeploy api_server 的23333端口以及 Lagent Web Demo 的7860端口映射到本地

ssh -CNg -L 7860:127.0.0.1:7860 -L 23333:127.0.0.1:23333 root@ssh.intern-ai.org.cn -p 你的 ssh 端口号

5、接下来在本地的浏览器页面中打开 http://localhost:7860 以使用 Lagent Web Demo。首先输入模型 IP 为 127.0.0.1:23333,在输入完成后按下回车键以确认。并选择插件为 ArxivSearch,以让模型获得在 arxiv 上搜索论文的能力。结果很好地利用检索工具检索到相关的文献。

直接使用 AgentLego

1、下载demo文件

cd /root/agent
wget http://download.openmmlab.com/agentlego/road.jpg

2、AgentLego 所实现的目标检测工具是基于 mmdet (MMDetection) 算法库中的 RTMDet-Large 模型,因此我们首先安装 mim,然后通过 mim 工具来安装 mmdet

conda activate agent
pip install openmim==0.3.9
mim install mmdet==3.3.0

3、新建检测脚本文件

touch /root/agent/direct_use.py

4、填入检测代码

import re

import cv2
from agentlego.apis import load_tool

# load tool
tool = load_tool('ObjectDetection', device='cuda')

# apply tool
visualization = tool('/root/agent/road.jpg')
print(visualization)

# visualize
image = cv2.imread('/root/agent/road.jpg')

preds = visualization.split('\n')
pattern = r'(\w+) \((\d+), (\d+), (\d+), (\d+)\), score (\d+)'

for pred in preds:
    name, x1, y1, x2, y2, score = re.match(pattern, pred).groups()
    x1, y1, x2, y2, score = int(x1), int(y1), int(x2), int(y2), int(score)
    cv2.rectangle(image, (x1, y1), (x2, y2), (0, 255, 0), 1)
    cv2.putText(image, f'{name} {score}', (x1, y1), cv2.FONT_HERSHEY_SIMPLEX, 0.8, (0, 255, 0), 1)

cv2.imwrite('/root/agent/road_detection_direct.jpg', image)

5、执行推理

python /root/agent/direct_use.py

结果如下:

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值