Auto-GPT(翻译)

1,651 阅读8分钟

Auto-GPT是一个实验性的开源应用程序,展示了GPT-4语言模型的能力。这个程序由GPT-4驱动,通过连接LLM“思想”,自主实现您设定的任何目标。作为GPT-4完全自主运行的首个示例之一,Auto-GPT推动了人工智能可能性的界限。

目录

🚀 特性

  • 🌐 互联网访问进行搜索和信息收集
  • 💾 长期和短期记忆管理
  • 🧠 用于文本生成的GPT-4实例
  • 🔗 访问流行的网站和平台
  • 🗃️ 带有GPT-3.5的文件存储和摘要

📋 要求

可选:

  • ElevenLabs密钥(如果您希望AI说话)

💾 安装

要安装Auto-GPT,请按照以下步骤操作:

  1. 确保您拥有上述所有要求,如果没有,请安装/获取它们。

以下命令应在CMD、Bash或PowerShell窗口中执行。要执行此操作,请转到计算机上的文件夹,单击文件夹路径顶部,并键入CMD,然后按Enter。

  1. 克隆存储库:对于此步骤,您需要安装Git,但也可以通过单击此页面顶部的按钮下载zip文件来代替。

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

  1. 导航到项目目录: (将此键入CMD窗口中,您的目标是将CMD窗口导航到刚刚下载的存储库)

cd 'Auto-GPT'

  1. 安装所需依赖项: (再次,将此键入CMD窗口)

pip install -r requirements.txt

  1. .env.template重命名为.env并填写您的OPENAI_API_KEY。如果计划使用语音模式,请同时填写您的ELEVEN_LABS_API_KEY
  • 从以下网址获取OpenAI API密钥:platform.openai.com/account/api…

  • 从以下网址获取ElevenLabs API密钥:elevenlabs.io。您可以使用网站上的“Profile”选项卡查看您的xi-api-key。

  • 如果要在Azure实例上使用GPT,请将USE_AZURE设置为True,然后:

    • azure.yaml.template重命名为azure.yaml,并提供相关模型的所有部署ID,包括:

      • 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
    • 请将所有这些值指定为双引号字符串

    • 详细信息可以在pypi.org/project/ope…的“Microsoft Azure Endpoints”部分以及learn.microsoft.com/en-us/azure…中找到,用于嵌入模型。

🔧 用法

  1. 在终端中运行main.py Python脚本: (将此键入CMD窗口)

python scripts/main.py

  1. 在AUTO-GPT的每个操作之后,输入“NEXT COMMAND”以授权它们继续。
  2. 要退出程序,请键入“exit”并按Enter键。

日志

您将在文件夹./output/logs中找到活动和错误日志。

要输出调试日志:

python scripts/main.py --debug

🗣️ 语音模式

使用此功能使用TTS进行Auto-GPT

python scripts/main.py --speak

🔍 配置Google API密钥

如果运行Google搜索时出现错误429,请使用官方Google API。要使用google_official_search命令,您需要在环境变量中设置您的Google API密钥。

  1. 转到Google Cloud控制台
  2. 如果您还没有帐户,请创建一个并登录。
  3. 通过单击页面顶部的“选择项目”下拉菜单并单击“新建项目”来创建新项目。为其命名并单击“创建”。
  4. 转到API和服务仪表板并单击“启用API和服务”。搜索“自定义搜索API”并单击它,然后单击“启用”。
  5. 转到凭据页面并单击“创建凭据”。选择“API密钥”。
  6. 复制API密钥并将其设置为在您的计算机上命名为GOOGLE_API_KEY的环境变量。请参阅以下设置环境变量。
  7. 转到自定义搜索引擎页面并单击“添加”。
  8. 通过按照提示设置搜索引擎来设置您的搜索引擎。您可以选择搜索整个Web或特定网站。
  9. 创建搜索引擎后,单击“控制面板”,然后单击“基础知识”。复制“搜索引擎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"

Redis设置

安装Docker桌面。

运行:

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

有关密码和其他配置的设置,请参见hub.docker.com/r/redis/red…

设置以下环境变量:

MEMORY_BACKEND=redis REDIS_HOST=localhost REDIS_PORT=6379 REDIS_PASSWORD=

请注意,此设置不适用于面向Internet,并且不安全,不要在没有密码或根本不暴露redis的情况下将其暴露给Internet。

您可以选择设置

WIPE_REDIS_ON_START=False

以保留在Redis中存储的内存。

您可以使用以下内容指定redis的内存索引:

MEMORY_INDEX=whatever

🌲 Pinecone API密钥设置

Pinecone使得存储大量基于向量的内存成为可能,允许只在任何给定时间为代理加载相关的记忆。

  1. 前往pinecone,如果您还没有帐户,请创建一个。
  2. 选择“Starter”计划以避免被收费。
  3. 在左侧边栏中的默认项目下找到您的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缓存

查看内存使用情况

  1. 使用debug标志查看内存使用情况 :)

💀 连续模式 ⚠️

在没有用户授权的情况下运行AI,100%自动化。不建议使用连续模式。它可能是危险的,可能导致您的AI永远运行或执行您通常不会授权的操作。自行承担风险。

  1. 在终端中运行main.py Python脚本:

python scripts/main.py --continuous

  1. 要退出程序,请按Ctrl + C键

仅限GPT3.5模式

如果您没有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的潜力,但具有一些限制:

  1. 不是完整的应用程序或产品,仅是一个实验
  2. 在复杂的现实业务场景中可能表现不佳。实际上,如果它实际上确实如此,请分享您的结果!
  3. 运行成本相当高,因此请设置并监视OpenAI的API密钥限制!

🛡 免责声明

免责声明:此项目Auto-GPT是一个实验性应用程序,按“原样”提供,没有任何明示或暗示的保证。使用本软件即表示您同意承担与其使用相关的所有风险,包括但不限于数据丢失、系统故障或任何其他可能出现的问题。

此项目的开发人员和贡献者不承担任何损失、损害或其他后果的责任,这些损失、损害或其他后果可能因使用本软件而发生。您完全负责基于Auto-GPT提供的信息做出的任何决定和行动。

请注意,GPT-4语言模型的使用可能很昂贵,因为它使用令牌。通过使用此项目,您确认自己负责监控和管理自己的令牌使用情况和相关成本。强烈建议

🐦 在Twitter上关注我们

通过关注我们的Twitter账户,获取有关Auto-GPT的最新新闻、更新和见解。通过开发人员和AI自己的账户参与有趣的讨论、项目更新等。

  • 开发人员:关注 @siggravitas 获取创业者GPT的创建者的开发过程、项目更新和相关主题的见解。
  • 创业者-GPT:关注 @En_GPT 跟AI本身一起加入对话。分享您的经验,讨论AI的输出,并与日益壮大的用户社区互动。

我们期待与您联系,并听取您对Auto-GPT的想法、想法和经验。在Twitter上加入我们,让我们一起探索人工智能的未来!

运行测试

要运行测试,请运行以下命令:

python -m unittest discover tests

要运行测试并查看覆盖率,请运行以下命令:

coverage run -m unittest discover tests

运行linter

本项目使用 flake8 进行linting。要运行linter,请输入以下命令:

# Or, if you want to run flake8 with the same configuration as the CI: flake8 scripts/ tests/ --select E303,W293,W291,W292,E305