For the complete documentation index, see llms.txt. This page is also available as Markdown.

AgentBox 市场部署(历史)

已移除的 AgentBox 容器表面,保留给任何调试旧版本的人使用。

OpenHuman 曾为 GMI Cloud 的 AgentBox 市场交付过一个容器端面。它已从 openhuman-core中移除。一个回归测试, agentbox_run_and_jobs_paths_are_no_longer_public 在 crates/openhuman-rpc/src/server/auth_tests.rs,检查 /run 和 /jobs/{job_id} 已不再存在。

OPENHUMAN_AGENTBOX_MODE 在 crates/openhuman-core/src中已没有读取方。Dockerfile 和 .env.example 仍然提到了它,而这些提法已经过时。如果你今天需要在 AgentBox 上运行 OpenHuman,请询问负责 GMI Cloud 部署的团队,那个端面现在位于何处。

本页其余部分描述的是旧端面的工作方式。仅当你在调试仍保留它的较旧构建时才阅读。

容器契约

使用 OPENHUMAN_AGENTBOX_MODE=1时,核心 HTTP 服务器公开了三个路由:

  • POST /run 接受任务并返回 202 { "job_id": "<uuid>" }。正文为 { "payload": { "message": "<string>", "thread_id": "<optional string>" } }.

  • GET /jobs/{job_id} 返回 { "status": "pending|running|completed|failed", "result": ..., "error": ... }.

  • GET /health 是一个存活检查。

/run 和 /jobs/* 在容器边界处是未认证的。AgentBox 的边缘层在流量到达容器之前处理了认证。

在 AgentBox 控制台中注册

该控制台有一个四步向导。

  1. 基本信息。 将其命名为 OpenHuman 并添加描述。

  2. 基础设施。 选择 Docker 镜像来源、计算规格和区域。打开“GMI MaaS”开关,以便平台注入 GMI_MAAS_BASE_URL 和 GMI_MAAS_API_KEY ,在运行时。

  3. 环境变量。 设置这些:

    • OPENHUMAN_AGENTBOX_MODE=1

    • OPENHUMAN_AGENTBOX_JOB_TIMEOUT_SECS (可选,默认 600)

    • GMI_MODELS,市场已批准的模型 ID,例如 deepseek-ai/DeepSeek-V4-Pro

    • OPENHUMAN_WORKSPACE,一个可写的容器路径,例如 /home/openhuman/.openhuman

    • RUST_LOG=info (首次部署时使用 debug )

  4. 审查并注册。 确认,然后从控制台面板进行测试。

平台 API 密钥只会显示一次,在注册确认页面上。请立即将其保存到你的密钥管理器中。控制台无法再次显示它。

推送镜像

从 main 构建,使用现有的 Dockerfile 并推送到你的镜像仓库:

首次部署需要 10 到 25 分钟才能到达 运行中。后续部署会更快。

长时间运行的请求

AgentBox 将超过 2 分钟的请求视为长时间运行,因此 OpenHuman 使用轮询。代理在一个工作任务内运行,由 OPENHUMAN_AGENTBOX_JOB_TIMEOUT_SECS (默认 10 分钟)限制。没有流式传输。

轮询客户端应:

  1. 发送 POST /run 并保持 job_id.

  2. 调用 GET /jobs/{job_id} 每 1 到 3 秒一次。

  3. 当 状态 是 已完成 或 失败.

完成的作业会保留一小时,然后被垃圾回收。轮询与读取之间的长时间暂停可能会返回 404.

本地冒烟测试

故障排查

  • 404 作业未找到 在成功提交后:一小时保留窗口已过,或者容器已重启。作业存储仅在内存中。

  • status: "failed" 替换为 error: "agentbox: agent runtime bridge not wired":你使用的是在运行时桥接接入之前的构建版本。请从当前版本重新构建 main.

  • status: "failed" 替换为 error: "job timeout after Ns":代理运行时间超过了 OPENHUMAN_AGENTBOX_JOB_TIMEOUT_SECS。请在下次部署时提高它。

  • [agentbox::gmi] not registering GMI MaaS provider: missing/blank: GMI_MAAS_API_KEY:平台没有注入密钥。请检查向导第 2 步中的 MaaS 开关。

  • [agentbox::gmi] current-thread runtime detected, skipping provider registration:核心是在单线程 tokio 运行时中启动的。请使用标准的 serve 子命令,它会启动多线程运行时。

最后更新于