人工智能 | 实现定制化 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 做接口测试,从入门到实战/ 接口抓包(最新最全教程)

相关推荐
羊小猪~~4 分钟前
神经网络基础--什么是正向传播??什么是方向传播??
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
AI小杨5 分钟前
【车道线检测】一、传统车道线检测:基于霍夫变换的车道线检测史诗级详细教程
人工智能·opencv·计算机视觉·霍夫变换·车道线检测
晨曦_子画9 分钟前
编程语言之战:AI 之后的 Kotlin 与 Java
android·java·开发语言·人工智能·kotlin
道可云11 分钟前
道可云人工智能&元宇宙每日资讯|2024国际虚拟现实创新大会将在青岛举办
大数据·人工智能·3d·机器人·ar·vr
人工智能培训咨询叶梓20 分钟前
探索开放资源上指令微调语言模型的现状
人工智能·语言模型·自然语言处理·性能优化·调优·大模型微调·指令微调
zzZ_CMing20 分钟前
大语言模型训练的全过程:预训练、微调、RLHF
人工智能·自然语言处理·aigc
newxtc21 分钟前
【旷视科技-注册/登录安全分析报告】
人工智能·科技·安全·ddddocr
成都古河云22 分钟前
智慧场馆:安全、节能与智能化管理的未来
大数据·运维·人工智能·安全·智慧城市
UCloud_TShare25 分钟前
浅谈语言模型推理框架 vLLM 0.6.0性能优化
人工智能
软工菜鸡29 分钟前
预训练语言模型BERT——PaddleNLP中的预训练模型
大数据·人工智能·深度学习·算法·语言模型·自然语言处理·bert