1 前言

迄今为止,Github已经7.7万stars了,项目真的顶 image.png GitHub 地址: https://github.com/torantulino/auto-gpt

这里提前下载好了,如果登不上Github或者下载失败的可以在后台回复 autogpt 领取v0.2.1的源码压缩包

1.1 什么是AutoGPT

十分重磅!GPT3.5都还没玩明白,傍着GPT4的AutoGPT就又要乱杀了,特斯拉前 AI 总监、刚刚回归 OpenAI 的 Andrej Karpathy也提到 “AutoGPT”将成为提示工程的下一个前沿 ,网上很多人只提突破性,不提局限性,twitter的原话是 prompt engineering领域 ,因此其他领域还是坐观新测

image.png

Auto-GPT 是一个实验性的开源 Python 应用程序,它使用GPT-4自主运行。听名字也知道,auto,自主人工智能,这意味着 Auto-GPT 可以在几乎没有人为干预的情况下执行任务,并且可以自我提示。 一言以蔽之,AutoGPT可以实现:分配一个任务,它能自行生成一个结果及任务的每一个提示 ,其实这类的AI还有AgentGPT、BabyAGI,但,真不够AutoGPT火,其也有火的道理

1.2 为什么是AutoGPT

Auto-GPT 可以将 AI 的行为分解为“思想”、“推理”和“批评”,这展示了 GPT 令人印象深刻的文本生成能力。此功能使用户能够准确了解 AI 在做什么以及为什么这样做。简单说是, 有一个人能帮你完成任务,还会告诉你怎么做。 例如,就 Chef-GPT 而言,AI 的第一个“想法”是“搜索即将发生的事件以找到合适的事件来创建独特的食谱”。这一行动背后的“原因”是“找到即将发生的事件将帮助我想出一个相关且令人兴奋的食谱。”

Auto-GPT 的“批评”分析了对其行为的潜在约束或限制,进一步展示了其在实现用户设定的目标的同时自主运行的能力。此外,Auto-GPT 具有长期和短期记忆功能,以及通过 ElevenLabs 进行的文本转语音功能。这些功能的融合使 Auto-GPT 更像人,增强了它与人互动的能力。

有人会问 ChatGPT Auto-GPT 区别,哪个更好?

都好,且不同一个纬度,无法平行比较。首先知道一下 人工智能AI 通用人工智能AGI 的区别:人工智能 (AI) 是一个广义术语,指的是能够执行需要人类智能才能完成的任务的计算机系统。然而,通用人工智能 (AGI) 指的是可以像人类一样使用自己的过程、推理和智力执行任务的人工智能。

尽管 ChatGPT 是一个非常有能力的聊天机器人,但它仍然只是一个聊天机器人。作为聊天机器人,它仅限于仅对通过提示立即询问的内容做出回应。因此,它可以完成惊人的事情,但只有通过人类的指导。 Auto-GPT 的能力远不止于此,可以要求它完成一项一无所知的任务,然后看着它完成所有工作。即: ChatGPT 需要人去引导他,得到自己想要的东西; AutoGPT 是给他指令,他自己去思考,自己去想办法完成结果交付。这可以很明显看出后者的特色 Auto ,更自主化。

2 AutoGPT部分实例

2.1 类似一个Workflow

生成一个 GPT-4 代理来完成添加到待办事项列表中的任何任务 image.png

视频链接: https://twitter.com/i/status/1645918390413066240

2.2 市场调研

运营一个 AI 代理,负责进行产品研究并撰写有关最佳耳机的摘要 image.png

第二个视频是关于博客研究的,此外Nathan Lands还展示了用于销售勘探的 BabyAGI
image.png

视频1链接: https://twitter.com/i/status/1646095934177124353
视频2链接: https://twitter.com/i/status/1645898646762782735

2.3 自己写播客

自行阅读近期发生的事件自行总结并且撰写播客内容

image.png

视频链接: https://twitter.com/i/status/1645898646762782735

2.4 接入客服

AutoGPT可以不需要使用者一直输入指令,直接化身24h全天候智能客服,通达全语种,理解客户查询,提供支持,甚至建议追加销售

image.png

推文链接: https://twitter.com/gregisenberg/status/1645817335024869376?ref_src=twsrc^tfw|twcamp^tweetembed|twterm^1645817335024869376|twgr^1bcdfa0f1f346feb279a7821bda593c41ddc14de|twcon^s1_&ref_url=https%3A%2F%2Fautogpt.net%2Famazing-use-cases-for-auto-gpt-on-twitter%2F

3 安装和使用AutoGPT

image.png

安装要求

  • Python 3.8 或更高版本
  • OpenAI API 密钥
  • Pinecone API 密钥
  • ElevenLabs Key(这个是可以转换成语音,非必要要求)

3.1 安装

确保满足安装要求,记得下载git工具,然后在bash或者cmd或者turminal克隆库:

git clone https://github.com/Torantulino/Auto-GPT.git

进入库

cd Auto-GPT

安装依赖项

pip install -r requirements.txt

重命名 .env.template .env 并填写 OPENAI_API_KEY . 如果打算使用语音模式,也需要填写 ELEVEN_LABS_API_KEY

这样就可以了,如果需要在 Azure 实例上使用 GPT,请设置 USE_AZURE True 然后:

  • 重命名 azure.yaml.template 为 并提供部分 中相关模型的 azure.yaml 相关 azure_api_base 和 所有部署 ID  : azure_api_versionazure_model_map

    • fast_llm_model_deployment_id :gpt-3.5-turbo 或 gpt-4 部署 ID

    • smart_llm_model_deployment_id :gpt-4 部署 ID

    • embedding_model_deployment_id :text-embedding-ada-002 v2 部署 ID
  • 将所有这些值指定为双引号字符串

# Replace string in angled brackets (<>) to your own ID

azure_model_map:

fast_llm_model_deployment_id: ""

...

3.2 基础用法

  1. 在目录运行py文件

python scripts/main.py


# 授权单个命令,输入y

# 授权一系列N个连续命令,输入y -N

# 退出程序,进入n

也可以在 AUTO-GPT 的每个动作之后,键入“NEXT COMMAND”以授权它们继续。

要退出程序,请键入“exit”并按 Enter。

  1. 可以在文件夹中找到活动和错误日志 ./output/logs ,输出调试日志:

python scripts/main.py --debug

  1. 语音模式:

python scripts/main.py --speak


#目前已有的11个lab id

Rachel : 21m00Tcm4TlvDq8ikWAM

Domi : AZnzlk1XvdvUeBnXmlld

Bella : EXAVITQu4vr4xnSDxMaL

Antoni : ErXwobaYiN019PkySvjV

Elli : MF3mGyEYCl7XYWbV9V6O

Josh : TxGEqnHWrfWFTfGW9XjX

Arnold : VR6AewLTigWG4xSOukaG

Adam : pNInz6obpgDQGcFmaJgB

Sam : yoZ06aMxZJJ28mfd3POQ

  1. docker:

# 调用和运行

docker build -t autogpt .

docker run -it --env-file=./.env -v $PWD/auto_gpt_workspace:/app/auto_gpt_workspace autogpt


# 或者

docker-compose run --build --rm auto-gpt


# 其他参数

docker run -it --env-file=./.env -v $PWD/auto_gpt_workspace:/app/auto_gpt_workspace autogpt --gpt3only --continuous

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

  1. 命令行常用命令:

# 查看所有可行参数

python -m autogpt --help


# 用其他ai设置文件运行

python -m autogpt --ai-settings


# 指定内存后端

python -m autogpt --use-memory

  1. 内存后端设置
    启动redis的docker

docker run -d --name redis-stack-server -p 6379:6379 redis/redis-stack-server:latest

然后配置 .env

MEMORY_BACKEND=redis

REDIS_HOST=localhost

REDIS_PORT=6379

REDIS_PASSWORD=

  1. 设置缓存类型
    默认情况下,Auto-GPT 将使用 LocalCache 而不是 redis 或 Pinecone。

若要切换到任一值,请将 env 变量更改为所需的值: MEMORY_BACKEND

local(默认值)使用本地 JSON 缓存文件

pinecone使用在 ENV 设置中配置的 Pinecone.io 帐户

redis将使用配置的 Redis 缓存

milvus将使用配置的 milvus 缓存

weaviate将使用配置的编织缓存

  1. 连续模式

无需用户授权即可运行AI,100%自动化。 不建议使用连续模式。 这是潜在的危险,可能会导致你的 AI 永远运行或执行您通常不会授权的操作。 使用风险自负

python -m autogpt --speak --continuous

Ctrl + C 退出程序

  1. 设置GPT-3.5

如果用不了GPT4可以改成3.5

python -m autogpt --speak --gpt3only

3.3 配置OpenAI的API

大家最熟悉了, https://platform.openai.com/account/api-keys

image.png

3.4 配置谷歌API

在谷歌云控制台 https://console.cloud.google.com/ ,在左栏中找到API,新建一个项目,命名随意,这里用了demo

image.png

然后create 一个 credentials, API image.png

每日免费自定义搜索配额最多只允许 100 次搜索。要增加此限制,需要为项目分配一个计费帐户,以从每天多达 10,000 次搜索中获利


设置自定义搜索引擎: https://cse.google.com/cse/all ,命名随性,搜索范围可以全网,或者自定义。建议按领域来,像做生物生命科学的定向pubmed和谷歌学术镜像,可以稍微省时

image.png

准备好了API,开始设置环境变量:

Windows 用户:

setx GOOGLE_API_KEY "YOUR_GOOGLE_API_KEY"

setx CUSTOM_SEARCH_ENGINE_ID "YOUR_CUSTOM_SEARCH_ENGINE_ID"

macOS 和 Linux 用户:

export GOOGLE_API_KEY="YOUR_GOOGLE_API_KEY"

export CUSTOM_SEARCH_ENGINE_ID="YOUR_CUSTOM_SEARCH_ENGINE_ID"

3.5 配置Pinecone API

  • 去Pinecone https://app.pinecone.io/ 并创建一个帐户。
  • 选择计划以避免被收费。 Starter
  • 在左侧边栏的默认项目下找到 API 密钥和区域

windows用户:

setx PINECONE_API_KEY ""

setx PINECONE_ENV "" # e.g: "us-east4-gcp"

setx MEMORY_BACKEND "pinecone"

macOS 和 Linux 用户:

export PINECONE_API_KEY=""

export PINECONE_ENV="" # e.g: "us-east4-gcp"

export MEMORY_BACKEND="pinecone"

4.讨论

这个虽然是刚出来的实验性项目,但是潜力,真的很大很大,关于 Memory pre-seeding Image Generation Milvus 笔者这里没有提,内容太多太干太硬了,跟着上面的代码可以部署体验一波,需要重度使用务必仔细研究Github

【Docker】【GitLab】dokcer 安装搭建最新 gitlab 中文社区版 (搭建一个小型个人的“Gitee” 或 “GitHub”)
【Docker】【GitLab】dokcer 安装搭建最新 gitlab 中文社区版 (搭建一个小型个人的“Gitee” 或 “GitHub”)
Git的安装、初次配置以连接github,在第三方软件中配置、使用git 命令,提交项目到github的远程仓库出现bug的解决
Git的安装、初次配置以连接github,在第三方软件中配置、使用git 命令,提交项目到github的远程仓库出现bug的解决
【Jekyll搭建GITHUB个人博客】安装Ruby 环境、包管理器 RubyGems、Jekyll与错误解决
【Jekyll搭建GITHUB个人博客】安装Ruby 环境、包管理器 RubyGems、Jekyll与错误解决
【Visual Studio 2019】上传代码到 GitHub ( 16.9.2 版本 | 安装 GitHub 扩展插件 | 创建 Git 仓库 | 推送到远程仓库 )(二)
【Visual Studio 2019】上传代码到 GitHub ( 16.9.2 版本 | 安装 GitHub 扩展插件 | 创建 Git 仓库 | 推送到远程仓库 )(二)
【Visual Studio 2019】上传代码到 GitHub ( 16.9.2 版本 | 安装 GitHub 扩展插件 | 创建 Git 仓库 | 推送到远程仓库 )(一)
【Visual Studio 2019】上传代码到 GitHub ( 16.9.2 版本 | 安装 GitHub 扩展插件 | 创建 Git 仓库 | 推送到远程仓库 )(一)
【OpenGL】二、Visual Studio 2019 配置 GitHub ( 下载并安装 GitHub 扩展 | 配置 GitHub )(二)
【OpenGL】二、Visual Studio 2019 配置 GitHub ( 下载并安装 GitHub 扩展 | 配置 GitHub )(二)