AutoGPT 代理设置¶
📋 系统要求¶
Linux / macOS¶
- Python 3.10 或更高版本
- Poetry (安装说明)
Windows (WSL)¶
- WSL 2
- 另请参阅 Linux 和 macOS 的要求
- Docker Desktop
Windows 平台¶
Attention
我们推荐使用 WSL 设置 AutoGPT。某些功能在 Windows 上的运行方式不完全相同, 目前我们无法为所有特殊情况提供专门的说明。
- Python 3.10 或更高版本 (安装说明)
- Poetry (安装说明)
- Docker Desktop
设置 AutoGPT¶
获取 AutoGPT¶
由于我们不将 AutoGPT 作为桌面应用程序分发,您需要从 GitHub 下载 [项目]并在计算机上为其指定位置。
- 要获取最新的前沿版本,请使用
master
分支 - 如果您需要更稳定的版本,请查看最新的 AutoGPT 发布版本
Note
如果您希望以 Docker 镜像方式运行 AutoGPT,这些说明不适用。 请查阅 Docker 设置 指南。
完成设置¶
克隆或下载项目后,您可以在 original_autogpt/
文件夹中找到 AutoGPT Agent。
在此文件夹内,您可以通过 .env
文件和(可选)JSON 配置文件来配置 AutoGPT 应用程序:
.env
用于环境变量,主要用于敏感数据(如 API 密钥)- JSON 配置文件用于自定义 AutoGPT 组件 的某些功能
有关可用环境变量的列表,请参阅 配置 参考文档。
- 找到名为
.env.template
的文件。该文件可能 在某些操作系统中因点前缀而默认隐藏。要显示 隐藏文件,请按照适用于您特定操作系统的说明操作: [Windows][显示隐藏文件/Windows] 和 [macOS][显示隐藏文件/macOS]。 - 创建
.env.template
的副本并命名为.env
; 如果您已在命令提示符/终端窗口中:cp .env.template .env
- 在文本编辑器中打开
.env
文件。 - 为您想要使用的 LLM 提供商设置 API 密钥:请参阅下文。
-
输入您想要使用的任何其他服务的 API 密钥或令牌。
Note
要激活和调整设置,请移除
#
前缀。 -
保存并关闭
.env
文件。 - 可选:运行
poetry install
以安装所有必需的依赖项。 该 应用程序在启动时也会检查并安装任何必需的依赖项。 - 可选:使用您所需的设置配置 JSON 文件(例如
config.json
)。 如果您不提供 JSON 配置文件,应用程序将使用默认设置。 了解如何设置 JSON 配置文件
您现在应该能够探索 CLI (./autogpt.sh --help
) 并运行应用程序了。
有关进一步说明,请参阅用户指南。
设置 LLM 提供商¶
您可以使用以下任意 LLM 提供商运行 AutoGPT。 每个提供商都有其特定的设置说明。
AutoGPT 最初基于 OpenAI 的 GPT-4 构建,但现在您也可以使用其他模型/提供商获得类似且有趣的结果。 如果您不确定选择哪个,可以放心选择 OpenAI*。
* 可能发生变化
OpenAI¶
Attention
要使用 AutoGPT 搭配 GPT-4(推荐),您需要设置一个已充值付费的 OpenAI 账户。 请参考 OpenAI 获取进一步说明(链接)。 免费账户受限于 GPT-3.5,每分钟仅允许 3 次请求。
- 确保您已设置具有可用额度的付费账户:Settings > Organization > Billing
- 从以下位置获取您的 OpenAI API 密钥:API keys
- 打开
.env
文件 - 找到显示
OPENAI_API_KEY=
的行 -
在等号后直接插入您的 OpenAI API 密钥,无需引号或空格:
OPENAI_API_KEY=sk-proj-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
使用 GPT Azure 实例
如果您想在 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
:# 请将所有值指定为双引号字符串 # 将尖括号 (<>) 中的字符串替换为您自己的部署名称 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 文档] 中的嵌入模型部分。 如果您使用的是 Windows 系统,可能需要安装 MSVC 库。
Important
请在使用情况页面上密切关注您的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
Important
请在使用情况页面上密切关注您的API成本。
Groq¶
Note
虽然支持Groq,但其内置的函数调用API尚不成熟。 使用此API的任何功能可能会遇到性能下降的情况。 请告诉我们您的使用体验!
- 从 Settings > API keys 获取您的 Groq API 密钥
- 打开
.env
文件 - 找到显示
GROQ_API_KEY=
的行 - 在等号后直接插入您的 Groq API 密钥,无需引号或空格:
GROQ_API_KEY=gsk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- 将
SMART_LLM
和/或FAST_LLM
设置为您想要使用的 Groq 模型。 有关可用模型的信息,请参阅 Groq 的 models overview。 示例:SMART_LLM=llama3-70b-8192
Llamafile¶
使用 llamafile 可以在本地运行模型,这意味着无需设置账单, 并保证数据隐私。
有关更多信息和详细文档,请查看 llamafile documentation。
Warning
目前,llamafile 一次只能服务一个模型。这意味着您不能
将 SMART_LLM
和 FAST_LLM
设置为两个不同的 llamafile 模型。
Warning
由于以下链接的问题,llamafiles 在 WSL 中无法工作。要在 WSL 中使用 llamafile 与 AutoGPT,您必须在 Windows(WSL 外部)中运行 llamafile。
Instructions
- Get the
llamafile/serve.py
script through one of these two ways:- Clone the AutoGPT repo somewhere in your Windows environment,
with the script located at
classic/original_autogpt/scripts/llamafile/serve.py
- Download just the serve.py script somewhere in your Windows environment
- Clone the AutoGPT repo somewhere in your Windows environment,
with the script located at
- Make sure you have
click
installed:pip install click
- Run
ip route | grep default | awk '{print $3}'
inside WSL to get the address of the WSL host machine - Run
python3 serve.py --host {WSL_HOST_ADDR}
, where{WSL_HOST_ADDR}
is the address you found at step 3. If port 8080 is taken, also specify a different port using--port {PORT}
. - In WSL, set
LLAMAFILE_API_BASE=http://{WSL_HOST_ADDR}:8080/v1
in your.env
. - Follow the rest of the regular instructions below.
Note
这些指令将下载并使用 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