人工智能 | 实现定制化 AutoGPT 实战

简介

在前面的学习过程中,已经了解到了 AutoGPT 基本的环境安装操作。接下来就可以基于 AutoGPT 完成一些有趣的任务。通过 AutoGPT 实现我们的需求

环境准备

在正式使用 AutoGPT 之前,确认以下环境没有任何问题:

  1. 稳定的科学上网环境。
  2. 配置好的 AutoGPT 环境。
  3. 可以使用的 token。

如果还没有配置好环境,请参考章节 AutoGPT 理念与应用 优先完成环境配置。

实践演练

接下来需要使用 AutoGPT 实现几个 ChatGPT 无法实现的需求:

  1. 生成一个文件。
  2. 连接外网,查询信息,并生成 Excel 结果。

注意事项

  1. 提示词要明确一些,并且在过程中,需要不停的确认 Command 是否正确。
  2. 注意避免让 AutoGPT 陷入死循环中。

生成文件

使用过 ChatGPT 的同学应该都知道 ChatGPT 只能生成文本类结果,是无法直接生成文件的。接下来就使用 AutoGPT 进行写入文件操作:

  1. 进入项目,启动虚拟环境:source venvAutoGPT/bin/activate
  2. 执行启动命令:./run.sh
  3. 此时 AutoGPT 提示我们输入信息,输入提示词:生成一个 txt 文件,内容为 霍格沃兹测试开发学社。
  4. 接下来 AutoGPT 会有一个思考的过程,并会将思考过程展示在终端中,提示要进行的下一步操作:

/5、当发现 AutoGPT 提示以下信息时,代表我们需要进行选择:

#  输入"y"授权命令,"y -N"运行 N 个连续命令,"n"退出程序,或输入 FileCreatorGPT 的反馈...
  Enter 'y' to authorise command, 'y -N' to run N continuous commands, 'n' to exit program, or enter feedback for FileCreatorGPT...

6、如果确定执行 AutoGPT 所提示的命令,输入: y 即可。

7、点击y 之后,其实从日志也开始看到对应的提示信息:

8、接下来就可以终止任务,去本地的auto_gpt_workspace目录中看到对应的文件信息。

9、打开该文件,发现写入的内容满足需求。

查询信息,并生成文件

在成功实现生成文件之后,可以实现更进一步的难度。ChatGPT 还具备的一个缺点就是无法连接外网,而 AutoGPT 也补全了这一能力。接下来就使用 AutoGPT 进行数据查询以及生成文件操作。其实整体的流程和上面的生成文件的信息差不多,只是需要修改一下提示词信息。

  1. 进入项目,启动虚拟环境:source venvAutoGPT/bin/activate
  2. 执行启动命令:./run.sh
  3. 此时 AutoGPT 提示我们输入信息,输入提示词:查找 2023 年 9 月 6 日深圳的天气情况,生成一个 shenzhen.txt 文件,将天气结果写入其中。
  4. 根据返回信息,选择对应的命令。最后可以看一下结果,成功生成一个 shenzhen.txt 文件,并且有天气的数据写入。

其他复杂场景

在使用 AutoGPT 的过程中,AutoGPT 可能会给相关的提示信息,主要包含以下几个字段:

字段名称 作用
ai_goals 表示用户想要完成的目标,最多可以配置 5 个,也可以少于 5 个。
ai_name 本次服务的名称,可以理解为实现你目标的程序是一个机器人,ai_name 就是你给机器人取的名字。
ai_role 主要是为了辅助完成用户目标,对机器人的角色设定,更好的完成用户的任务。
api_budget 是调用 openai 服务接口的预算,单位是美元。

所以需要根据使用的情况,输入适合自己的选项。

AutoGPT Command 原理

其实 AutoGPT 中提示的 Command 其实只是一种由人类编写的程序函数,但它是提供给 GPT 调用的。比如谷歌搜索命令、文件操作命令、python 执行命令等。这一点,从它的底层源码也不难发现。有了这些内容,GPT 就知道它可以如何调用这些人类编写的函数,从而"获得"了网络访问能力和计算能力。

但是其实 AutoGPT 在火爆过一阵之后,人们,尤其是开发者,也发现其问题所在比如:

  1. 它可能会卡住,或者在一个已经有解任务中不停循环求解。
  2. 花费超出预期的 token 使用量。

越为复杂的场景, AutoGPT 处理起来可能愈发困难。但是 Auto-GPT 的底层原理并不复杂,它是依靠 prompt 实现的。如果作为一个比较有开发功底的人,如果我们想自己定制类似 AutoGPT 的效果,其实是比较容易的。

后面会基于 LangChain 的封装打造一个类似于 AutoGPT 的人工智能应用工具。

推荐学习

【霍格沃兹测试开发】7天软件测试快速入门带你从零基础/转行/小白/就业/测试用例设计实战

【霍格沃兹测试开发】最新版!Web 自动化测试从入门到精通/ 电子商务产品实战/Selenium (上集)

【霍格沃兹测试开发】最新版!Web 自动化测试从入门到精通/ 电子商务产品实战/Selenium (下集)

【霍格沃兹测试开发】明星讲师精心打造最新Python 教程软件测试开发从业者必学(上集)

【霍格沃兹测试开发】明星讲师精心打造最新Python 教程软件测试开发从业者必学(下集)

【霍格沃兹测试开发】精品课合集/ 自动化测试/ 性能测试/ 精准测试/ 测试左移/ 测试右移/ 人工智能测试

【霍格沃兹测试开发】腾讯/ 百度/ 阿里/ 字节测试专家技术沙龙分享合集/ 精准化测试/ 流量回放/Diff

【霍格沃兹测试开发】Pytest 用例结构/ 编写规范 / 免费分享

【霍格沃兹测试开发】JMeter 实时性能监控平台/ 数据分析展示系统Grafana/Docker 安装

【霍格沃兹测试开发】接口自动化测试的场景有哪些?为什么要做接口自动化测试?如何一键生成测试报告?

【霍格沃兹测试开发】面试技巧指导/ 测试开发能力评级/1V1 模拟面试实战/ 冲刺年薪百万!

【霍格沃兹测试开发】腾讯软件测试能力评级标准/ 要评级表格的联系我

【霍格沃兹测试开发】Pytest 与Allure2 一键生成测试报告/ 测试用例断言/ 数据驱动/ 参数化

【霍格沃兹测试开发】App 功能测试实战快速入门/adb 常用命令/adb 压力测试

【霍格沃兹测试开发】阿里/ 百度/ 腾讯/ 滴滴/ 字节/ 一线大厂面试真题讲解,卷完拿高薪Offer !

【霍格沃兹测试开发】App自动化测试零基础快速入门/Appium/自动化用例录制/参数配置

【霍格沃兹测试开发】如何用Postman 做接口测试,从入门到实战/ 接口抓包(最新最全教程)

相关推荐
KevinRay_3 分钟前
Python超能力:高级技巧让你的代码飞起来
网络·人工智能·python·lambda表达式·列表推导式·python高级技巧
跃跃欲试-迪之8 分钟前
animatediff 模型网盘分享
人工智能·stable diffusion
Captain823Jack35 分钟前
nlp新词发现——浅析 TF·IDF
人工智能·python·深度学习·神经网络·算法·自然语言处理
被制作时长两年半的个人练习生35 分钟前
【AscendC】ReduceSum中指定workLocal大小时如何计算
人工智能·算子开发·ascendc
Captain823Jack1 小时前
w04_nlp大模型训练·中文分词
人工智能·python·深度学习·神经网络·算法·自然语言处理·中文分词
Black_mario1 小时前
链原生 Web3 AI 网络 Chainbase 推出 AVS 主网, 拓展 EigenLayer AVS 应用场景
网络·人工智能·web3
测试杂货铺2 小时前
Jmeter压测实战:Jmeter二次开发之自定义函数
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试
Aileen_0v02 小时前
【AI驱动的数据结构:包装类的艺术与科学】
linux·数据结构·人工智能·笔记·网络协议·tcp/ip·whisper
数信云 DCloud2 小时前
实力认可 | 通付盾入选《ISC.AI 2024创新能力全景图谱》五项领域
人工智能
itwangyang5202 小时前
AIDD - 从机器学习到深度学习:蛋白质-配体对接评分函数的进展
人工智能·深度学习·机器学习