Auto-GPT 是一个实验性的开源应用程序,展示了 GPT-4 语言模型的能力。这个程序由 GPT-4 驱动,将 LLM“**”链接在一起,自主地实现你设定的任何目标。作为 GPT-4 完全自主运行的首个例子之一,Auto-GPT 推动了 AI 的可行性边界。
Auto-GPT-Demo-2.mp4
如果您愿意捐赠咖啡,您可以帮助支付开发 Auto-GPT 的 API 成本,推动完全自主的 AI 边界! 一整天的开发成本可以轻松达到 20 美元,这对于一个免费项目而言相当有限制性。 您的支持将不胜感激。
贡献者和赞助商使这个免费、开源项目的开发成为可能。如果您想赞助这个项目,并让您的头像或公司标志出现在下面请点击此处。
- 🌐 可以访问互联网以进行搜索和信息收集
- 💾 长期和短期记忆管理
- 🧠 GPT-4实例用于文本生成
- 🔗 访问流行的网站和平台
- 🗃️ 带有GPT-3.5的文件存储和摘要
- 环境(只需选择一个)
- vscode + devcontainer:它已在.devcontainer文件夹中进行了配置,可以直接使用
- Python 3.8或更高版本
- OpenAI API密钥
- PINECONE API密钥
可选:
- ElevenLabs密钥 (如果希望AI能够说话)
要安装Auto-GPT,请按照以下步骤操作:
- 确保您具有上面列出的所有要求,如果没有,请安装/获取它们。
以下命令应在CMD、Bash或Powershell窗口中执行。为此,转到计算机上的文件夹,在文件夹路径上单击,然后键入CMD,然后按Enter键。
- 克隆存储库: 对于此步骤,您需要已安装Git,但是您可以通过单击此页面顶部的按钮下载zip文件而不是安装Git☝️
git clone https://github.com/Torantulino/Auto-GPT.git
- 导航到项目目录: (在CMD窗口中键入此内容,您的目标是导航CMD窗口到刚刚下载的存储库)
cd 'Auto-GPT'
- 安装所需的依赖项: (再次,在CMD窗口中键入此内容)
pip install -r requirements.txt
- 将
.env.template
重命名为.env
,并填写您的OPENAI_API_KEY
。如果您计划使用语音模式,请填写您的ELEVEN_LABS_API_KEY
。
- 从此处获取您的OpenAI API密钥:https://platform.openai.com/account/api-keys。
- 从这里获取您的ElevenLabs API密钥:https://elevenlabs.io。您可以使用网站上的“个人资料”选项卡查看您的xi-api-key。
- 如果要在Azure实例上使用GPT,请将
USE_AZURE
设置为True
,然后:- 将
azure.yaml.template
重命名为azure.yaml
,并在azure_model_map
部分提供相关模型的azure_api_base
、azure_api_version
和所有部署ID:fast_llm_model_deployment_id
-您的gpt-3.5-turbo或gpt-4部署IDsmart_llm_model_deployment_id
-您的gpt-4部署IDembedding_model_deployment_id
-您的文本嵌入ada-002 v2部署ID
- 请将所有这些值指定为双引号字符串
- 详细信息可以在此处找到:https://pypi.org/project/openai/中的“Microsoft Azure Endpoints”部分,以及此处:https://learn.microsoft.com/en-us/azure/cognitive-services/openai/tutorials/embeddings?tabs=command-line有关嵌入模型的信息。
- 将
- 在终端中运行
main.py
Python脚本: (在CMD窗口中键入此内容)
python scripts/main.py
- 在AUTO-GPT的每个操作之后,键入“NEXT COMMAND”以授权它们继续进行。
- 要退出程序,请键入“exit”,然后按Enter键。
您将在文件夹./output/logs
中找到活动和错误日志。
要输出调试日志:
python scripts/main.py --debug
使用此选项在Auto-GPT中使用TTS
python scripts/main.py --speak
此部分是可选的,如果使用谷歌搜索时遇到错误 429,可以使用官方谷歌 API。要使用 google_official_search
命令,您需要在环境变量中设置您的谷歌 API 密钥。
- 前往Google Cloud 控制台。
- 如果您还没有帐号,请注册并登录。
- 点击页面顶部的“选择项目”下拉菜单并点击“新建项目”来创建一个新项目。输入名称并点击“创建”。
- 进入API 和服务仪表板,点击“启用 API 和服务”。搜索“Custom Search API”,点击并启用它。
- 前往凭据页面,点击“创建凭据”。选择“API 密钥”。
- 复制 API 密钥并将其设置为一个环境变量,命名为
GOOGLE_API_KEY
。请参见下面的环境变量设置。 - 前往自定义搜索引擎页面,点击“添加”。
- 按照提示设置您的搜索引擎。您可以选择搜索整个 web 或特定网站。
- 创建搜索引擎后,点击“控制面板”,然后点击“基础知识”。复制“搜索引擎 ID”,并将其设置为一个环境变量,命名为
CUSTOM_SEARCH_ENGINE_ID
。请参见下面的环境变量设置。
请记住,您的免费每日自定义搜索配额只允许最多 100 次搜索。要增加此限制,您需要为您的项目分配一个结算账户,以便从每天高达 10K 次搜索中获利。
对于 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"
安装 Docker Desktop。
运行:
docker run -d --name redis-stack-server -p 6379:6379 redis/redis-stack-server:latest
有关设置密码和其他配置,请参见https://hub.docker.com/r/redis/redis-stack-server。
设置以下环境变量:
MEMORY_BACKEND=redis
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
注意,此程序不适用于面向网络并且不安全。请勿在没有密码或完全不安全的情况下公开 redis。
您可以选择性地设置
WIPE_REDIS_ON_START=False
以保留在 Redis 中存储的内存。
您可以使用以下语法指定 redis 的内存索引:
MEMORY_INDEX=whatever
Pinecone 可以存储巨量基于向量的内存,允许在任何给定时间点仅加载与代理相关的记忆。
- 前往pinecone,如果没有帐号,请创建一个新帐号。
- 选择“入门”计划以避免收费。
- 在左侧菜单栏中的默认项目下查找您的 API 密钥和区域。
只需在.env
文件中设置。
或者,您也可以从命令行设置(高级):
对于 Windows 用户:
setx PINECONE_API_KEY "YOUR_PINECONE_API_KEY"
setx PINECONE_ENV "Your pinecone region" # something like: us-east4-gcp
对于 macOS 和 Linux 用户:
export PINECONE_API_KEY="YOUR_PINECONE_API_KEY"
export PINECONE_ENV="Your pinecone region" # something like: us-east4-gcp
默认情况下,Auto-GPT 将使用 LocalCache 而不是 redis 或 Pinecone。
要切换到其中一个,请将MEMORY_BACKEND
env 变量更改为您想要的值:
local
(默认值)使用本地 JSON 缓存文件
pinecone
使用您在 ENV 设置中配置的 Pinecone.io 帐户
redis
将使用您配置的 redis 缓存
- 使用
--debug
标志查看内存使用情况 :)
运行 AI 无需用户授权,100% 自动化。 不建议使用连续模式。 它可能会导致您的 AI 永久运行或执行您通常不授权的操作,因此可能存在潜在的危险。 自行决定是否使用。
- 在终端中运行
main.py
Python 脚本:
python scripts/main.py --continuous
- 要退出程序,请按 Ctrl + C
如果您没有访问 GPT4 api,此模式将允许您使用 Auto-GPT!
python scripts/main.py --gpt3only
建议使用虚拟机执行需要高安全措施的任务,以避免对主机计算机系统和数据造成任何潜在影响。
默认情况下,Auto-GPT 使用 DALL-e 进行图像生成。要使用 Stable Diffusion,需要 HuggingFace API Token 。
在拥有令牌后,将这些变量设置在您的.env
中:
IMAGE_PROVIDER=sd
HUGGINGFACE_API_TOKEN="YOUR_HUGGINGFACE_API_TOKEN"
这个实验旨在展示 GPT-4 的潜力,但也有一些限制:
- 不是一个精制的应用程序或产品,只是一个实验
- 可能在复杂的实际业务场景中表现不佳。实际上,如果它真的这么做了,请分享您的成果!
- 运行成本相当高,因此请设置并监测 OpenAI API 键的限制!
免责声明
Auto-GPT 项目是一个实验性应用程序,以 "现状" 的方式提供,没有任何保证,明示或暗示的。使用此软件,您同意承担与其使用相关的所有风险,包括但不限于数据丢失、系统故障或可能出现的任何其他问题。
本项目的开发人员和贡献者不承担任何责任或责任,对使用此软件所可能导致的任何损失、损害或其他后果不承担任何责任。您凭借 Auto-GPT 提供的信息对任何决策和行动负有唯一责任。
请注意,使用 GPT-4 语言模型可能由于其令牌使用而昂贵。通过使用本项目,您承认您负责监测和管理自己的令牌使用和相关费用。强烈建议定期检查您的 OpenAI API 使用情况,并设置任何必要的限制或预警,以防止未预料的费用。
作为一项自主的实验,Auto-GPT 可能会生成与现实世界业务惯例或法律要求不一致的内容或采取措施。您有责任确保基于此软件输出所做出的任何行动或决策符合所有适用的法律、法规和道德标准。本项目的开发人员和贡献者不承担因使用本软件而产生的任何后果的责任。
通过使用 Auto-GPT,您同意保护、维护和使免受任何和所有索赔、损害、损失、责任、成本和费用(包括合理律师费),这是由于您使用该软件或违反这些条款而产生的。
通过关注我们的 Twitter 账号,了解 Auto-GPT 的最新新闻、更新和见解。与开发人员和 AI 的账号进行有趣的讨论、项目更新和更多内容。
- 开发人员:关注 @siggravitas 获取有关开发过程、项目更新和 Entrepreneur-GPT 创作者相关主题的见解。
- Entrepreneur-GPT:通过关注 @En_GPT 与 AI 自身进行交流。分享您的经验,讨论 AI 的输出,并参与不断壮大的用户社群。
我们期待与您建立联系,听取您对 Auto-GPT 的想法、思路和经验。加入我们的 Twitter,让我们一起探索 AI 的未来!
要运行测试,请运行以下命令:
python -m unittest discover tests
要运行测试并查看覆盖率,请运行以下命令:
coverage run -m unittest discover tests
此项目使用 flake8 进行检查。我们目前使用以下规则:E303,W293,W291,W292,E305,E231,E302
。有关更多信息,请参见 flake8 规则。
要运行检查器,请运行以下命令:
flake8 scripts/ tests/
# 或者,如果您想以与 CI 相同的配置运行 flake8:
flake8 scripts/ tests/ --select E303,W293,W291,W292,E305,E231,E302