返回指南
设置·2026年10月1日·阅读约 7 分钟

AutoGPT 自定义 API:在自己的 OpenAI 兼容端点上运行自托管 AutoPilot

四个环境变量即可在自托管安装中将 AutoPilot 聊天迁移到你自己的端点。阻断层和托管服务不会跟随迁移,而嵌入和记忆调用会发送到同一个 URL。

最后审核于 。

在自托管的 AutoGPT Platform 上,AutoPilot 聊天代理可以运行于你提供的任何兼容 OpenAI 的端点上——在容器中设置四个环境变量即可。我们于 2026 年 10 月 1 日以这种方式对接记录型替身,运行了 v0.8.2 的官方单容器镜像:一次聊天轮次和三次工具往返均已完成,AutoPilot 写入的工作区文件也通过 API 成功读回。 托管的 agpt.co 服务不接受自定义端点,代理图中的 AI Text Generator 模块也不接受。

有关 AutoGPT 的整体费用——托管套餐、额度、自托管——请参阅 AutoGPT 定价。如果你要离开 AutoGPT,请参阅 AutoGPT 替代方案。本页面本身介绍的就是自定义端点路径。

哪些部分可以使用你的端点,哪些不可以

AutoGPT 的组成部分接受自定义端点?依据
AutoPilot 聊天,自托管是——CHAT_BASE_URL在 v0.8.2 上运行:聊天和工具调用均已完成
对话标题是,同一端点和模型运行中观察到:每个会话一次简短的非流式调用
构建器试运行模拟器、引导提取是,根据 AutoGPT 指南有文档说明;此处未进行测试
Graphiti 记忆同一 base URL,使用其自己的模型(GRAPHITI_*_MODEL)运行中观察到:/v1/responses,以及每轮一次 embedding 调用
市场语义搜索同一 base URL,使用 STORE_EMBEDDING_MODEL(必须返回 1,536 维向量)运行中观察到:启动时 200 次 embedding 调用
代理图中的 AI Text Generator 模块否——供应商固定;只能设置 Ollama 原生主机v0.8.2 源码
托管的 agpt.co否AutoGPT 指南:云端部署会忽略这些变量

设置方法

AutoGPT 将其称为 local 传输,因为 Ollama 是通常的目标,但 CHAT_BASE_URL 只是一个 URL——其指南将托管的兼容 OpenAI API 列为可用形式之一。四个变量很重要:CHAT_USE_LOCAL=true、以 /v1 结尾的 CHAT_BASE_URL、CHAT_API_KEY(必填——该传输不会有意回退到 OpenAI key),以及作为裸模型 ID 的 CHAT_FAST_STANDARD_MODEL。如果不设置高级模型、标题模型和模拟模型,AutoGPT 会从标准模型派生它们,因此不会有仅限云端的名称传到你的端点。

AutoGPT Platform v0.8.2,单容器——运行的变量及网关的值;高级模型行可选
docker run -d --name autogpt \
  --shm-size 2g --ulimit nofile=65536:65536 \
  -p 127.0.0.1:3000:3000 \
  -e AUTOGPT_PUBLIC_URL=http://localhost:3000 \
  -e CHAT_USE_LOCAL=true \
  -e CHAT_BASE_URL=https://api.kunavo.com/v1 \
  -e CHAT_API_KEY=sk-kn-... \
  -e CHAT_FAST_STANDARD_MODEL=claude-haiku-4-5 \
  -e CHAT_FAST_ADVANCED_MODEL=claude-sonnet-5 \
  -v autogpt-data:/data \
  significantgravitas/autogpt:v0.8.2

# Compose installs put the same four CHAT_* lines in autogpt_platform/backend/.env.
# Check them inside the running container:
docker exec autogpt env | grep ^CHAT_

在 Docker 内部,localhost 指的是容器,而不是你的机器:主机上的端点在 Docker Desktop 中应写作 http://host.docker.internal:<port>/v1,运行正是通过这种方式访问替身端点的。像 Kunavo 这样的托管端点不需要特殊网络设置。第一次启动会运行数据库迁移,并需要几分钟;请等待容器报告 healthy。

一次轮次发送的内容——实测

请求大小备注
POST /v1/chat/completions,一次轮次的首次调用41,876 字节流式;16 个工具——其中包括 bash_exec、web_fetch、run_agent、write_workspace_file;仅包含字段 messages、model、stream、tools
相同,在工具结果之后42,677 字节四条消息:追加工具调用及其结果
标题约 0.6 KB非流式,每个会话一次,使用同一模型
Graphiti 记忆每轮使用默认 Ornith 模型名称的 POST /v1/responses,以及针对 nomic-embed-text 的 embedding 调用
上下文窗口探测每个会话GET /api/ps, /props, /api/v0/models, /v1/models

三次运行中的大小完全相同。它们是来自替身端点的请求字节数,不是供应商的 token 数量。请求格式是普通的 OpenAI Chat Completions——没有供应商扩展——因此聊天路径所需的只是一个能够提供流式工具调用的端点。

需要规划的旁路流量

以上所有请求都发送到同一个 base URL。如果你的端点是聊天网关而不是完整的本地栈,会有两个后果。Embeddings:市场索引在启动时请求 text-embedding-3-small 200 次,Graphiti 每轮请求 nomic-embed-text;没有 embedding 模型的端点会返回 404,存储搜索会回退到仅限词法搜索,记忆提取会记录回溯信息——聊天本身不受影响。Kunavo 不提供 embedding 模型,因此在 Kunavo 上这是预期状态。Memory model names:除非将 GRAPHITI_LLM_MODEL 和 GRAPHITI_RERANKER_MODEL 设置为端点提供的模型,否则 Graphiti 的 /v1/responses 调用会使用其自己的默认模型名称。

每轮的费用

作为 粗略算术,而不是账单:一次工具轮次通过两次调用发送了 84,553 字节——按每个 token 四个字符计算,约为 21,138 个输入 token——另加几百个输出 token;我们假设 600。

通过 Kunavo 使用模型每 1M 输入 / 输出的费率一次工具轮次
Claude Haiku 4.5$0.70 / $3.50$0.017
Claude Sonnet 5$1.40 / $7.00$0.034

对话会不断增长,因此后续轮次发送的内容更多。Kunavo 按 token 从预付余额中计费,最低充值金额为 $10,且无订阅(计费);目录金额是计费下限,而不是上限。Kunavo 没有人使用其自己的端点运行过 AutoGPT——此处运行使用的是本地替身——因此请在你的 使用记录 中检查第一次轮次的扣费。

常见问题

AutoGPT 可以使用自定义 API 端点吗?

可以,但仅适用于产品的一部分,而且只有在自行托管时可用。在自托管的 AutoGPT Platform 上,AutoPilot 聊天代理通过 CHAT_USE_LOCAL=true、CHAT_BASE_URL、CHAT_API_KEY 和 CHAT_FAST_STANDARD_MODEL 接受任何兼容 OpenAI 的端点。我们于 2026 年 10 月 1 日以这种方式运行了 v0.8.2 的官方单容器镜像,对接本地替身端点:一次聊天轮次和三次工具往返均已完成,AutoPilot 写入的文件也通过工作区 API 成功读回。托管的 agpt.co 服务会忽略这些变量,代理图中的 AI Text Generator 模块也不会读取它们。

AI Text Generator 模块使用 CHAT_BASE_URL 吗?

不使用。AutoGPT 自己的指南说明,AutoPilot 聊天路径和模块层读取的是不同变量。在 v0.8.2 源码中,模块层的 OpenAI 和 Anthropic 客户端在构建时没有设置 base URL;那里唯一可设置的主机是 Ollama 原生 API 的 Ollama 主机。因此,调用 AI Text Generator 模块的代理图仍会使用 AutoGPT 提供的供应商,无论 CHAT_BASE_URL 的值是什么。

AutoGPT 最好或最便宜的 API 是什么?

For the self-hosted chat path, the cheapest is a model you run yourself — AutoGPT's guide uses Ollama — and the cheapest metered option is whichever OpenAI-compatible endpoint serves a capable tool-calling model at the lowest rate. Each tool turn in our run sent about 85 KB across two chat calls with 16 tool definitions, roughly 21,000 input tokens at four characters per token; at Kunavo's Claude Haiku 4.5 rates that is about $0.017 a turn, and about $0.034 on Claude Sonnet 5. Cheapest listed rate and cheapest finished task are different questions: a model that fumbles tool calls costs more turns.

为什么我的 AutoGPT 端点会收到 embedding 和 /v1/responses 请求?

因为其他功能也会使用同一个基础 URL。在我们的运行中,启动时该端点收到了针对 text-embedding-3-small 的 200 个嵌入请求(用于市场的语义索引);每次聊天轮次之后,Graphiti 记忆功能都会发送一个使用其默认模型名称的 /v1/responses 请求,以及一个针对 nomic-embed-text 的嵌入请求。不提供这些模型的端点会返回 404;聊天仍能继续运行,但容器会记录 Graphiti 回溯信息。将 GRAPHITI_LLM_MODEL、GRAPHITI_RERANKER_MODEL 和 GRAPHITI_EMBEDDER_MODEL 设置为端点提供的模型,或者接受降级的记忆功能和仅支持词法匹配的商店搜索。

如何检查 AutoPilot 确实在使用我的端点?

有三项检查,全部来自 AutoGPT 指南,也都在我们的运行中观察到:使用 docker exec 进入容器,并 grep 环境变量中的 CHAT_;发送一个聊天轮次,并在日志中查找 "Using baseline service";确认你的端点记录了一个使用所设置模型的流式 /v1/chat/completions 请求。在第一次轮次之前,AutoPilot 还会探测 /api/ps、/props、/api/v0/models 和 /v1/models,以了解上下文窗口;根据指南,报告没有上下文窗口的端点会回退到 32k。

运行于 2026 年 10 月 1 日:significantgravitas/autogpt:v0.8.2(arm64 镜像,sha256:8322941548c6…),运行在 Docker Desktop 上;AutoPilot 通过其自身的聊天 API 驱动,并使用一次性本地账户,对接本地记录型替身,该替身先回答一次工具调用,然后回答文本。三次工具往返全部完成;写入的文件通过工作区 API 成功读回。运行之外的行为来自 AutoGPT 的 copilot-local-llm 指南和 v0.8.2 源码。该替身不是供应商,也不是 Kunavo。