AutoGPT Agent 设置¶
📋 要求¶
Linux / macOS¶
- Python 3.10 或更高版本
- Poetry (说明)
Windows (WSL)¶
- WSL 2
- 另请参阅 Linux 的要求
- Docker Desktop
Windows¶
注意
我们推荐使用 WSL 设置 AutoGPT。有些功能在 Windows 上工作方式不太一样,目前我们无法为所有这些情况提供专门的说明。
- Python 3.10 或更高版本 (说明)
- Poetry (说明)
- Docker Desktop
设置 AutoGPT¶
获取 AutoGPT¶
由于我们不提供 AutoGPT 的桌面应用程序,您需要从 GitHub 下载项目并将其放置在您的计算机上。
- 要获取最新的前沿版本,请使用
master
。 - 如果您寻求更高的稳定性,请查看最新的 AutoGPT 发布版本。
注意
如果您想将 AutoGPT 作为 Docker 镜像运行,这些说明不适用。请参阅Docker 设置指南。
完成设置¶
克隆或下载项目后,您可以在 original_autogpt/
文件夹中找到 AutoGPT Agent。在此文件夹中,您可以使用 .env
文件和(可选)一个 JSON 配置文件来配置 AutoGPT 应用程序
.env
用于环境变量,主要用于存储敏感数据,如 API 密钥- 一个 JSON 配置文件,用于自定义 AutoGPT 组件的某些功能
有关可用环境变量的列表,请参阅配置参考。
- 找到名为
.env.template
的文件。在某些操作系统中,由于文件名前缀为点,此文件可能默认隐藏。要显示隐藏文件,请按照您的特定操作系统说明进行操作:Windows 和 macOS。 - 创建
.env.template
的副本并将其命名为.env
;如果您已在命令提示符/终端窗口中cp .env.template .env
- 在文本编辑器中打开
.env
文件。 - 设置您要使用的 LLM 提供商的 API 密钥:请参阅下文。
-
输入您希望使用的其他服务的任何 API 密钥或令牌。
注意
要激活和调整设置,请移除
#
前缀。 -
保存并关闭
.env
文件。 - 可选:运行
poetry install
安装所有必需的依赖项。应用程序启动时也会检查并安装所有必需的依赖项。 - 可选:使用您所需的设置配置 JSON 文件(例如
config.json
)。如果您不提供 JSON 配置文件,应用程序将使用默认设置。了解如何设置 JSON 配置文件
您现在应该能够探索 CLI (./autogpt.sh --help
) 并运行应用程序。
有关更多说明,请参阅用户指南。
设置 LLM 提供商¶
您可以将 AutoGPT 与以下任何 LLM 提供商一起使用。每个提供商都有自己的设置说明。
AutoGPT 最初构建在 OpenAI 的 GPT-4 之上,但现在您也可以使用其他模型/提供商获得类似且有趣的结果。如果您不知道如何选择,可以放心地选择 OpenAI*。
* 可能有变动
OpenAI¶
注意
要将 AutoGPT 与 GPT-4(推荐)一起使用,您需要设置一个付费的 OpenAI 账户并充值。有关更多说明,请参阅 OpenAI(链接)。免费账户仅限于 GPT-3.5,每分钟只能发送 3 个请求。
- 确保您拥有已充值付费账户:设置 > 组织 > 账单
- 从以下位置获取您的 OpenAI API 密钥:API 密钥
- 打开
.env
- 找到包含
OPENAI_API_KEY=
的行 -
将您的 OpenAI API 密钥直接插入到 = 后面,无需引号或空格
OPENAI_API_KEY=sk-proj-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
使用 Azure GPT 实例
如果您想在 Azure 实例上使用 GPT,请将
USE_AZURE
设置为True
并创建一个 Azure 配置文件。将
azure.yaml.template
重命名为azure.yaml
,并为您要使用的模型提供相关的azure_api_base
、azure_api_version
和部署 ID。例如,如果您想使用
gpt-3.5-turbo
和gpt-4-turbo
# Please specify all of these values as double-quoted strings # Replace string in angled brackets (<>) to your own deployment Name azure_model_map: gpt-3.5-turbo: "<gpt-35-turbo-deployment-id>" gpt-4-turbo: "<gpt-4-turbo-deployment-id>" ...
详细信息可在 openai/python-sdk/azure 中找到,对于嵌入模型,可在 [Azure OpenAI docs] 中找到。如果您使用的是 Windows,可能需要安装 MSVC 库。
重要
请在使用量页面留意您的 API 费用。
Anthropic¶
- 确保您的账户中有余额:设置 > 计划与账单
- 从 设置 > API 密钥 获取您的 Anthropic API 密钥
- 打开
.env
- 找到包含
ANTHROPIC_API_KEY=
的行 - 将您的 Anthropic API 密钥直接插入到 = 后面,无需引号或空格
ANTHROPIC_API_KEY=sk-ant-api03-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- 将
SMART_LLM
和/或FAST_LLM
设置为您要使用的 Claude 3 模型。有关可用模型的信息,请参阅 Anthropic 的模型概述。示例SMART_LLM=claude-3-opus-20240229
重要
请在使用量页面留意您的 API 费用。
Groq¶
注意
虽然支持 Groq,但其内置函数调用 API 尚未成熟。使用此 API 的任何功能可能会出现性能下降。请告诉我们您的使用体验!
- 从 设置 > API 密钥 获取您的 Groq API 密钥
- 打开
.env
- 找到包含
GROQ_API_KEY=
的行 - 将您的 Groq API 密钥直接插入到 = 后面,无需引号或空格
GROQ_API_KEY=gsk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- 将
SMART_LLM
和/或FAST_LLM
设置为您要使用的 Groq 模型。有关可用模型的信息,请参阅 Groq 的模型概述。示例SMART_LLM=llama3-70b-8192
Llamafile¶
使用 llamafile,您可以在本地运行模型,这意味着无需设置计费,并保证数据隐私。
有关更多信息和深入文档,请查看 llamafile 文档。
警告
目前,llamafile 只能同时服务一个模型。这意味着您不能将 SMART_LLM
和 FAST_LLM
设置为两个不同的 llamafile 模型。
警告
由于下面链接的问题,llamafile 在 WSL 上无法工作。要在 WSL 中使用 llamafile 和 AutoGPT,您必须在 Windows 中(WSL 外部)运行 llamafile。
说明
- 通过以下两种方式之一获取
llamafile/serve.py
脚本- 将 AutoGPT 仓库克隆到您的 Windows 环境中的某个位置,脚本位于
classic/original_autogpt/scripts/llamafile/serve.py
- 仅将 serve.py 脚本下载到您的 Windows 环境中的某个位置
- 将 AutoGPT 仓库克隆到您的 Windows 环境中的某个位置,脚本位于
- 确保已安装
click
:pip install click
- 在 WSL 内部运行
ip route | grep default | awk '{print $3}'
获取 WSL 主机地址 - 运行
python3 serve.py --host {WSL_HOST_ADDR}
,其中{WSL_HOST_ADDR}
是您在第 3 步找到的地址。如果端口 8080 被占用,也请使用--port {PORT}
指定不同的端口。 - 在 WSL 中,在您的
.env
文件中设置LLAMAFILE_API_BASE=http://{WSL_HOST_ADDR}:8080/v1
。 - 遵循下面的其余常规说明。
注意
这些说明将下载并使用 mistral-7b-instruct-v0.2.Q5_K_M.llamafile
。mistral-7b-instruct-v0.2
是目前唯一经过测试和支持的模型。如果您想尝试其他模型,您必须将其添加到 llamafile.py
中的 LlamafileModelName
。为了获得最佳结果,您可能还需要添加一些逻辑来调整消息格式,就像 LlamafileProvider._adapt_chat_messages_for_mistral_instruct(..)
所做的那样。
- 运行 llamafile 服务脚本首次运行时,它将下载包含模型和运行时的文件,这可能需要一段时间并占用几 GB 的磁盘空间。
python3 ./scripts/llamafile/serve.py
要强制使用 GPU 加速,请在命令中添加 --use-gpu
。
-
在
.env
文件中,将SMART_LLM
/FAST_LLM
或两者都设置为mistral-7b-instruct-v0.2
-
如果服务器运行在与
http://localhost:8080/v1
不同的地址上,请在.env
中将LLAMAFILE_API_BASE
设置为正确的基础 URL