Skip to content

AutoGPT 代理用户指南

Note

本指南假设您位于 autogpt 文件夹中,即 AutoGPT 代理所在的位置。

命令行界面

运行 ./autogpt.sh(或其任何子命令)时加上 --help 会列出所有可用的子命令和参数:

$ ./autogpt.sh --help
Usage: python -m autogpt [OPTIONS] COMMAND [ARGS]...

Options:
  --help  显示此消息并退出。

Commands:
  run     根据用户指定的任务设置并运行代理,或恢复现有代理。
  serve   启动一个符合 Agent Protocol  AutoGPT 服务器,为每个任务创建一个自定义代理。

对于 Windows 用户

在 Windows 上,请使用 .\autogpt.bat 代替 ./autogpt.sh。 其他所有内容(子命令、参数)应保持相同。

与 Docker 一起使用

对于与 Docker 一起使用,请将示例中的脚本替换为 docker compose run --rm auto-gpt

docker compose run --rm auto-gpt --ai-settings <filename>
docker compose run --rm auto-gpt serve

run – CLI 模式

run 子命令以传统的 CLI 界面启动 AutoGPT。

./autogpt.sh run --help
$ ./autogpt.sh run --help
Usage: python -m autogpt run [OPTIONS]

  根据用户指定的任务设置并运行代理,或恢复现有代理。

Options:
  -c, --continuous                启用连续模式
  -y, --skip-reprompt             跳过脚本开头的重新提示消息
  -l, --continuous-limit INTEGER  定义连续模式下运行的次数
  --speak                         启用语音模式
  --debug                         启用调试模式
  --gpt3only                      启用仅 GPT3.5 模式
  --gpt4only                      启用仅 GPT4 模式
  --skip-news                     指定是否在启动时抑制最新新闻的输出。
  --install-plugin-deps           安装第三方插件的外部依赖项。
  --ai-name TEXT                  覆盖 AI 名称
  --ai-role TEXT                  覆盖 AI 角色
  --constraint TEXT               添加或覆盖 AI 约束以包含在提示中;可以使用多次传递多个约束
  --resource TEXT                 添加或覆盖 AI 资源以包含在提示中;可以使用多次传递多个资源
  --best-practice TEXT            添加或覆盖 AI 最佳实践以包含在提示中;可以使用多次传递多个最佳实践
  --override-directives           如果指定,--constraint、--resource  --best-practice 将覆盖 AI 的指令,而不是附加到它们
  --component-config-file TEXT    配置文件的 JSON 路径。
  --help                          显示此消息并退出。

此模式允许运行单个代理,并在终止时保存代理的状态。这意味着您可以在以后的时间*恢复*代理。另请参阅 代理状态

Note

由于历史原因,CLI 在没有指定子命令时默认使用 run 子命令:运行 ./autogpt.sh run [OPTIONS]./autogpt.sh [OPTIONS] 效果相同,但这在未来可能会改变。

💀 连续模式 ⚠️

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

./autogpt.sh --continuous

要退出程序,请按 Ctrl+C

serve – 带有 UI 的 Agent Protocol 模式

使用 serve,应用程序会暴露一个符合 Agent Protocol 的 API 并提供一个前端,默认在 http://localhost:8000 上。您可以使用 AP_SERVER_PORT 环境变量配置其端口。

./autogpt.sh serve --help
$ ./autogpt.sh serve --help
Usage: python -m autogpt serve [OPTIONS]

  启动一个符合 Agent Protocol  AutoGPT 服务器,为每个任务创建一个自定义代理。

Options:
  --debug                     启用调试模式
  --gpt3only                  启用仅 GPT3.5 模式
  --gpt4only                  启用仅 GPT4 模式
  --install-plugin-deps       安装第三方插件的外部依赖项。
  --help                      显示此消息并退出。

有关应用程序 API 的更多信息,请参阅 agentprotocol.ai

参数

注意

大多数参数等同于配置选项。请参阅 .env.template 以获取所有可用的配置选项。

注意

将尖括号 (<>) 中的任何内容替换为您想要指定的值

以下是运行 AutoGPT 时可以使用的一些常见参数:

  • 使用不同的 AI 设置文件运行 AutoGPT

    ./autogpt.sh --ai-settings <filename>
    
  • 使用不同的提示设置文件运行 AutoGPT

    ./autogpt.sh --prompt-settings <filename>
    

注意

这些标志中有一些有简写形式,例如 --prompt-settings 的简写是 -P
使用 ./autogpt.sh --help 获取更多信息。

代理状态

各个代理的状态存储在 data/agents 文件夹中。您可以以多种方式使用它:

  • 稍后恢复您的代理。
  • 为您的代理创建“检查点”,以便您可以随时回到其历史中的特定点。
  • 分享您的代理!

工作区

代理可以读写文件。这发生在 workspace 文件夹中,该文件夹位于 data/agents/<agent_id>/。代理无法访问此文件夹之外的文件,除非 RESTRICT_TO_WORKSPACE 设置为 False

警告

我们不建议禁用 RESTRICT_TO_WORKSPACE,除非 AutoGPT 在无法造成任何损害的沙盒环境中运行(例如 Docker 或虚拟机)。

日志

活动、错误和调试日志位于 logs 中。

提示

您是否注意到代理的奇怪行为?您是否有有趣的使用案例?您是否有一个想要报告的错误? 按照以下步骤启用日志。您可以在提交问题报告或与我们讨论问题时包含这些日志。

要打印出调试日志:

./autogpt.sh --debug

禁用命令

禁用命令的最佳方法是禁用或移除提供这些命令的 组件。 但是,如果您想有选择地禁用某些命令,可以在您的 .env 中使用 DISABLED_COMMANDS 配置。 将要禁用的命令名称放入其中,用逗号分隔。 您可以在内置组件 此处 找到命令列表。

例如,要禁用 Python 编码功能,请将其设置为以下值:

DISABLED_COMMANDS=execute_python_code,execute_python_file