大家好,我是鱼皮,继前段时间爆火的 ChatGPT 后,又一个炸裂的开源项目 Auto-GPT
出现了。
仅在最近 10 天,这个项目就收获了 8 万多个 star,目前总 star 数超过 10 万!
那 Auto-GPT 到底是个什么玩意?它到底凭什么这么火?如何使用和部署它?它到底真的实用么?
带着这些问题来看这篇文章,下面我就给大家分享下 Auto-GPT 的介绍、最简单的部署方法、并且做一个简单的上手体验。
本文对应视频教程:https://www.bilibili.com/video/BV1ho4y1b75o/
什么是 Auto-GPT?
Auto 即自动,Auto-GPT 就表示自动的 GPT。
什么意思呢?
以前假如我们想使用 ChatGPT 来写一篇论文,可能要 人工 问它好几个问题,比如:
问:我想写一篇关于 AI 的论文,我需要怎么做?
AI 答:确认选题、写背景、写程序、写实验、写总结等。
问:帮我想 1 个选题
AI 答:AutoGPT
问:帮我介绍下 AutoGPT 的背景
。。。
你需要多次人工地向 AI 提问,直到你最后完成一篇论文。
但有了 AutoGPT,你只需要告诉它一个目标,比如 “写一篇关于 AI 的论文”,它就能够用程序全自动地完成目标。
当然,和人类一样,它也不是一步到位的,而是先自动向 AI 提问,然后根据 AI 的回答再自动提出新的问题,如此循环往复直到达成你告诉它的目标。
AutoGPT 本身也是结合了 LLM 大语言模型,相当于让 AI 来指挥 AI。
此外,AutoGPT 还有个很 🐂 的能力,当它发现 GPT 无法回答他的问题时,会主动到网上搜索答案,这样就弥补了 GPT 训练数据只到 21 年 9 月的不足。
听上去感觉很厉害,那接下来我们就来整一个自己的 Auto-GPT 吧~
搭一个自己的 Auto-GPT
网上很多教程都是让大家在自己本地搭建 Auto-GPT,其实是不推荐的,不仅麻烦,而且可能存在环境、依赖不一致的情况。
个人认为最简单的方式是使用 GitPod
云托管服务,直接用别人提供的服务器来部署 Auto-GPT,用来学习再好不过了。
首先访问官方仓库:https://github.com/Significant-Gravitas/Auto-GPT
然后点击 Fork,复制仓库到自己的 GitHub 中:
这一步千万要注意!取消勾选 Copy the master branch only
!因为 master
分支的代码可能是不稳定的(我就翻过车)!
Fork 成功之后,我们进入到自己的仓库中,然后把浏览器地址中的 github.com
改为 gitpod.io/#
。
比如我的是地址: https://github.com/liyupi/Auto-GPT
,改成 https://gitpod.io/#/liyupi/Auto-GPT
,然后访问,现在就可以一键用 GitPod 来部署项目了!
然后我们就进入到了 GitPod 项目主页,大家现在就可以把这个网页当做自己的电脑(服务器)来使用了,比如使用 VS Code 编辑器。
进到这个页面后,第一件事是切换分支,一定要选择 origin/stable
分支!否则后面说不定遇到什么奇奇怪怪的 Bug。
如下图:
然后,我们在左侧目录中找到 .env.template
文件,右键修改文件名为 .env
,并且修改 OPEN_API_KEY 为自己的。
因为 Auto-GPT 底层也是向 OpenAI 提问的,所以必须要有 OpenAI 的 key。
修改完成后,在终端中输入 ./run.sh
命令,就会自动安装所需环境和依赖,等着就好~
看到下图中的消息,就表示安装成功了!
然后我们按 ctrl + c
退出程序,以后不要用 run.sh
命令启动了,因为每次都要检查依赖,我们可以直接用 python -m autogpt
命令来启动 autogpt。
比如执行 python -m autogpt --help
,查看 autogpt 的用法和参数说明:
上图中,有几个参数是需要额外关注的,比如:
- -c:是否开启连续模式。这是一个非常危险的命令!表示 autogpt 会不经过你的同意全自动执行,包括但不限于死循环、无限创建文件、占满空间后删除你电脑上的文件等等。就和人类一样:可能会为了达到目的不择手段!
- -l:指定连续执行的次数限制。可以防止死循环。
- –speak:开启语音模式。但不是说在浏览器内部播放声音,而是生成音频文件。
OK,了解了这些后,我们来体验一下~
牛刀小试
就给一个很简单的任务吧,让 autogpt 帮忙 “写一个网站,赞美一只鸡在打篮球”。
首先执行 python -m autogpt
命令,然后依次输入 AI 名称、AI 角色和目标:
然后 autogpt 就屁颠儿屁颠儿去工作了,我们可以看到他的想法、计划和下面要做的行动。比如他打算到网上搜索更多信息,使用 Google 搜索命令。
我们可以输入 y
表示同意他这么做,也可以输入任何内容和建议来影响他的操作。
这里我就同意他吧~
然后呢,这货竟然说要看网上的视频来学习!好家伙,AI 也要摸鱼?
同意之后,他直接就下载视频文件了,结果没想到因为我的服务器上没有浏览器,他看不了视频!只能再倒回去 Google 搜索。
那我们再输入 y
表示同意:
结果你猜怎么着,他又想去看视频!已经陷入循环了。。。
所以可想而知,如果你让 autogpt 全自动跑一天,除了你的 OpenAI Key 余额被消耗完之外,说不定没有任何的成果。
所以人类必须要出手了,我让它:不要再看视频了,任何文本都行!
结果呢。。。它表示要去浏览其他的网页,不听话啊!
所以我态度只能再强硬一点!“停止调研,立刻给我开发网站!”
这次他听话了,而且计划执行 write_to_file
命令生成了网站:
输入 y
表示允许,然后他就帮我们在工作空间下生成了 index.html
文件:
网站生成完毕!让我们本地打开验证一下,看到了如下的文字 “鸡不仅能用来吃,他们也会打篮球”。并且分享了一篇文章和一个视频!
视频来源于 youtube,点开视频,我笑疯了:
虽然有点投鸡取巧,但不管怎么样,autogpt 也算是在短时间内完成了一个网站吧,还是很不错的!
不过完成这个网站后,autogpt 并没有挺值得意思,依然执着地在 youtube 搜索鸡打篮球相关的视频。
所以朋友们,连续模式是真的危险,AI 如果脱离了人的控制,也是真的危险啊!
我的编程导航网站:https://www.code-nav.cn