AutoGPT 使用教程及上手体验(一分钟配置可用)

ChatGPT 是新一代 AI 文本助手,可以帮助解决我们在多个领域的问题。

在某些复杂问题上,ChatGPT 需要经过不断的调教与沟通,才能得到接近正确的答案。

当你是某个领域的专家时,你很容易做到这一点。

但是,在你不熟悉的领域,你甚至不知道该怎么提问。

所以,在一个不精通的领域,要怎么向 ChatGPT 正确提问,得到正确答案呢?

我们可以使用 AutoGPT,AutoGPT 是基于 ChatGPT 的文本 AI 助手,在 ChatGPT 的基础上做了增强,用户在终端输入指令后,AutoGPT 可以根据最终的目标,不断生成任务及提示语交给 ChatGPT 处理,然后一步又一步的接近正确答案,在得到最终结果返回给用户。

使用教程

在引入 docker 后,AutoGPT 的使用变得更加简单。

第一步:拉取 docker 镜像

docker pull significantgravitas/auto-gpt

第二步:创建项目文件夹

AutoGPT 需要一个目录放置配置文件及运行日志,创建一个项目目录,并且将其添加进 dockerFile sharing(如下图)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SEC3gY3R-1685585258603)(http://shadows-mall.oss-cn-shenzhen.aliyuncs.com/images%5Cimages%5C%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20230530164644.png)]

第三步:添加配置文件

  1. 添加 .env 配置文件
OPENAI_API_KEY=【写入你的 OpenAI key】
ALLOWLISTED_PLUGINS=
DENYLISTED_PLUGINS=

个人的 openai-key 需要写入 env 文件中,可以在 OpenAI Keys 生成一个用于使用。(如下图)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yqLQJ2Et-1685585258604)(http://shadows-mall.oss-cn-shenzhen.aliyuncs.com/images%5Cimages%5C%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20230530165257.png)]

  1. 添加 docker-compose.yml 配置文件
version: "3.9"
services:
  auto-gpt:
    image: significantgravitas/auto-gpt
    depends_on:
      - redis
    env_file:
      - .env
    environment:
      MEMORY_BACKEND: ${MEMORY_BACKEND:-redis}
      REDIS_HOST: ${REDIS_HOST:-redis}
    profiles: ["exclude-from-up"]
    volumes:
      - ./auto_gpt_workspace:/app/autogpt/auto_gpt_workspace
      - ./data:/app/data
      ## allow auto-gpt to write logs to disk
      - ./logs:/app/logs
      ## uncomment following lines if you want to make use of these files
      ## you must have them existing in the same folder as this docker-compose.yml
      #- type: bind
      #  source: ./azure.yaml
      #  target: /app/azure.yaml
      #- type: bind
      #  source: ./ai_settings.yaml
      #  target: /app/ai_settings.yaml
  redis:
    image: "redis/redis-stack-server:latest"

第四步:启动 AutoGPT

输入命令:

docker-compose run --rm auto-gpt --gpt3only

可以看到控制台输出,代表启动成功(如下图)

image

到这里,就可以向 AutoGPT 输入你的目标了。

上手体验 - 淘宝童装选品

我准备让 AutoGPT 帮我做 淘宝童装选品,看看它是怎么做的吧。(如下图)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PiAy5p2m-1685585258605)(http://shadows-mall.oss-cn-shenzhen.aliyuncs.com/images%5Cimages%5C%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20230530170409.png)]

可以看到,它对于一个任务,会将其按照套路拆解:

- Name:任务名称
- Role:给 ChatGPT 设定的角色
- Goals:任务目标
- THOUGHTS:想法 —— 它认为当前第一步是需要分析当前市场流行的趋势,分析流行趋势有利于帮助更好选品。
- REASONING:推理 —— 分析市场从而更好的了解当前的市场需求,
- PLAN:行动计划
    1. 使用谷歌搜索当前童装市场的流行趋势
    2. 分析数据找到市场机会
    3. 将分析结果写入到本地文件中
- CRITICISM:意见 —— 需要保证数据是正确的,从而保证分析结果是正确的。
- NEXT ACTION:下一步 —— 使用 Google 搜索当前童装市场的流行趋势

输入 y 可以让它继续,输入 y -N 可以让它继续往下 N 步而不需要确认,这里我输入 y,它将在 Google 进行搜索。(如下图)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kHkqDIom-1685585258605)(http://shadows-mall.oss-cn-shenzhen.aliyuncs.com/images%5Cimages%5C%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20230530171603.png)]

这里可以看到:

- 系统操作:在 `Google` 搜索到了一堆童装市场的数据,JSON 格式。
- 想法:现在,我们有了一些市场数据,我们需要分析这些数据,分析前先把这些数据存起来。
- 推理:分析数据可以有助于得出更有效的答案。把数据存起来可以在后面分析时随时进行回顾。
- 计划:分析数据,存储数据。
- 意见:仍然需要保证数据的正确性。
- 下一步:将数据写到本地存起来先。

输入 y,就可以在本地看到存储的文件记录了。(如下图)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kj6nxfFv-1685585258605)(http://shadows-mall.oss-cn-shenzhen.aliyuncs.com/images%5Cimages%5C%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20230530172133.png)]

然后再看它下一步准备做什么,他准备执行一个 python 脚本来进行数据分析。由于这个文件不存在,所以他又自己把这个文件写进来,然后又做了一轮代码分析。代码分析完了以后,觉得代码有问题,它又进行调整…

image

这是它写的代码,我感觉还是有问题的,它要读取的 csv 文件并不存在啊(如下图)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GLkcWg2r-1685585258606)(http://shadows-mall.oss-cn-shenzhen.aliyuncs.com/images%5Cimages%5C%E4%BC%81%E4%B8%9A%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20230530172704.png)]

然后,我发现我高估它了,它连 pandas 这个依赖包都不存在,它还要去谷歌搜索一下怎么安装 pandas 包。然后,我们又可以看到它的一系列迷惑行为。(如下图)

image

image

image

迷惑归迷惑,它还真把依赖问题给解决了,然后接着往下执行,果然还是遇到了 csv 文件不存在的问题,类似的问题还有一大堆,我这里直接输入 y -20,让它自己先跑一段时间,等下我们再来看结果。

下面就是运行了 20 次后的结果。

image

我简单描述一下:它发现 csv 文件不存在,然后跑去网上找数据,然后找了半天,在 yahoo 上找到了,准备下载,写了个下载数据的脚本,结果下载数据的脚本又报错了,然后又在改下载数据的脚本。

结果就是,我的账户已经烧掉了 0.3 刀乐,也就是两块多,结果它连一点有效信息也还没提供给我,还在 debug 它的那个破脚本。

我决定让它再跑一阵子试试…

又跑了 10 次后,然后我发现它进入了一个死循环:

- 执行 `python` 脚本分析数据
- csv 文件不存在,下载文件(实际下载没成功)
- 执行 `python` 脚本分析数据
- csv 文件不存在,下载文件(实际下载没成功)
- ...

image

它一直反复这两步,无法再继续工作下去了,更别说达成目标了。

本次体验,到此结束。

体验小结

它能做的事情看起来确实很强大,全自动化的 AI 助手,只需要你输入指令,他就能自己设定目标和计划,然后去完成。

但是,经过实际体验后,我发现它还是存在几个问题,导致它没法很好的应用于实际生产工作中:

1. 非异步模型,任务执行周期长,我到现在还没有完整执行完成过一次任务,实际可应用性存疑。
2. 每一次都是从 0 开始,单次费用成本特别高(预计 $1 - $15),一次下去烧的都是真金白银的刀乐,我用的是还是 GPT3 模型, 而 GPT4 更贵。免费额度($5)用完后,很难再持续维系下去。
3. 重复性的动作特别多,这些动作会增加任务耗时,同时消耗你的 OpenAI 费用额度,在某些情况下还会陷入死循环。
4. 中文支持仅限于第一句,后续都是英文,对英文阅读水平有要求。

最后,我的结论是:

这是一个初见感觉很惊艳的产品,但是实际上手后会发现,目前来说它可能只是个充满科技感的高级“玩具”,并不能给你的工作带来更多实质性的帮助。

最后一件事

如果您已经看到这里了,希望您还是点个赞再走吧~

您的点赞是对作者的最大鼓励,也可以让更多人看到本篇文章!

如果觉得本文对您有帮助,请帮忙在 github 上点亮 star 鼓励一下吧!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Cube是一个用于嵌入式系统的软件工具,它提供了一个图形化界面来帮助开发者快速搭建和配置嵌入式系统。以下是Cube快速上学习教程中的16个例程。 1. 环境搭建:首先,安装STM32Cube软件包,并选择开发板型号。 2. GPIO控制:学习如何配置GPIO引脚作为输入或输出,并进行读写操作。 3. 外部中断:了解如何通过配置外部触发引脚来处理外部中断事件。 4. 定时器:学习如何使用定时器来进行精确的时间测量和操作。 5. PWM输出:了解如何配置定时器来生成PWM信号。 6. UART通信:学习如何配置串口来进行与外部设备的通信。 7. I2C通信:了解如何配置I2C总线以实现与其他设备的通信。 8. SPI通信:学习如何配置SPI总线以实现高速数据传输。 9. ADC采样:了解如何配置使用ADC模块来进行模拟信号的采样。 10. DAC输出:学习如何使用DAC模块来进行模拟信号的输出。 11. DMA传输:了解如何配置DMA来进行高速数据传输。 12. USB通信:学习如何配置USB接口以实现与计算机的通信。 13. CAN通信:了解如何配置CAN总线以实现车载通信。 14. 文件系统:学习如何配置使用文件系统以实现存储和读写文件。 15. 电源管理:了解如何配置使用低功耗模式以优化系统功耗。 16. 软件调试:学习如何使用调试工具来进行程序调试和性能优化。 通过学习以上16个例程,使用Cube快速上学习教程能够帮助开发者快速了解并掌握Cube软件工具的使用方法和基本功能,为嵌入式系统的开发打下良好的基础。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值