> ## Documentation Index
> Fetch the complete documentation index at: https://dripart-willie-des-1087-router-migration-block.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Comfy Router 的局限性

> Comfy Router 目前无法做到的事、存在替代方案时该改用何种方案，以及其中哪些限制预计将会改变。

Router 通过一次同步 HTTP 调用运行合作伙伴模型，或通过一个已排队的请求运行：你提交请求，稍后再收集结果。当你的应用能够等待一个已完成的结果，或稍后收集结果，并且能够处理模型自身的输入和输出字段时，就使用它。

## Router 支持的功能

| 需求          | Router 支持情况                                                                                     | 备选方案或后续步骤                                                                   |
| ----------- | ----------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- |
| 通过单个请求生成    | `POST /v2/models/{provider}/{model}` 返回已完成的结果。                                                  | 从[快速入门](/zh/development/comfy-router/quickstart)开始。                         |
| 提交任务并稍后收集结果 | 已执行投递：`POST /v2/models/{provider}/{model}/requests` 返回一个 `request_id`，可用于轮询并收集结果。不提供完成 webhook。 | 使用[已执行投递](/zh/development/comfy-router/queue)。具备提交并轮询操作的合作伙伴代理会公开提供商自身的控制项。 |
| 显示进度或流式输出   | 调用期间没有实时进度、流式传输或预览帧。                                                                            | 显示不确定状态，或使用受支持的代理操作。                                                        |
| 连接丢失后恢复     | 当 Router 保留了已接受生成的句柄时，可使用同键收集。                                                                  | 保留该键并遵循[重试引导](/zh/development/comfy-router/api#retry-outcomes)。             |
| 对账 Comfy 费用 | 响应中没有通用的 Comfy 成本或信用余额字段。                                                                       | 使用[工作区计费](https://platform.comfy.org)。                                      |
| 永久存储结果      | 资产 URL 可能会过期，包括重新托管和重放的 URL。                                                                    | 下载资产；参见[结果资产](/zh/development/comfy-router/reference#结果资产)。                 |

<span id="no-queued-submission" />

## 队列提交

同步路由在模型运行期间会一直保持连接；对于异步提供商，Router 会提交任务并在内部轮询。排队式投递（提交、获取 `request_id`、轮询、收集）则是另一种选择：参见[队列投递](/zh/development/comfy-router/queue)。它的作用域限定在凭据所属的工作区内，因此需要使用在你的 Comfy 工作区中创建的密钥。没有工作区的传统密钥、自带密钥的请求，或队列无法运行的模型，都会在提交路由上返回 `403` 和 `not_enabled`。两种模式都不提供回调或 webhook。

如果你的请求无法保持打开足够长的时间，就把它放入队列。当你需要使用提供商自己的提交与轮询控制时，请使用[合作伙伴代理](#router-并不覆盖每个合作伙伴操作)。

目前有两个模型仅支持同步方式，若将它们提交到队列，会被以 `403` / `not_enabled` 拒绝：`elevenlabs/eleven_sfx_v2` 和 `elevenlabs/eleven_v3`。它们返回的是原始音频字节，而不是 JSON 结果文档，队列投递无处存储这些内容。请在同步路由上运行它们，该路由会正常返回这些字节。

LTX v1 的文生视频和图生视频操作出于同样的原因返回原始视频字节，队列投递同样无法存储它们，但它们只能通过位于 `/proxy/ltx/v1/…` 的[合作伙伴代理](#router-并不覆盖每个合作伙伴操作)访问，而不能通过 Router 模型 ID 访问：每个 `ltx/*` 目录模型都会解析为可排队的 v2 提交与轮询操作。

## 调用会在服务器截止时间被中断

Router 的默认截止时间是 **10 分钟**，具体可由部署方配置。请将你的客户端超时设置为大于该值，这样 Router 才能先返回它自己的错误和请求 ID。

`504` / `deadline_exceeded` 表示 Router 停止了等待；`504` / `provider_timeout` 表示提供商超时。超时或连接中断并不能证明某次生成未被计费，也不会取消提供商已接受的工作。在重试之前，请先阅读[超时与收费](/zh/development/comfy-router/api#timeouts-and-collection)。

<span id="no-way-to-resume-a-call-you-lost" />

## 恢复取决于提供商

对于一次已被接受的「提交并轮询」式生成，Router 可以保留提供商句柄。复用同一个 `Idempotency-Key` 即可稍后收集结果；已完成且可重放的响应也可以从该 key 记录中获取。

并非每个已断开连接的调用都可恢复。在发送之前先保存请求和 key，然后使用[重试结果表](/zh/development/comfy-router/api#retry-outcomes)。使用新的 key 会创建新的调用，并可能产生额外费用。

## 请求按调用方进行速率限制

| 响应                                   | 原因                     | 操作                             |
| ------------------------------------ | ---------------------- | ------------------------------ |
| `429` / `concurrency_limit_exceeded` | 并发调用过多，或在承诺支出上限之下余量不足。 | 减少并发工作。支出响应头可将支出上限与调用次数限制区分开来。 |
| `429` / `rate_limited`               | 请求额度已耗尽。               | 等待 `Retry-After` 后再重试。         |

请求速率限制适用于调用以及目录/schema 读取，包括在生成之前就被拒绝的请求。它跟随经过身份验证的调用方，而不是来源 IP。使用调用方自己的提供商密钥的调用不受此限制；提供商自身的限制仍然适用。

缓存目录与 schema 读取。使用 `ETag` 和 `If-None-Match` 重新验证 schema。重试字段与承诺支出字段见[响应头](/zh/development/comfy-router/headers)。

## 调用运行期间没有进度更新

Router 只返回最终响应，不提供流式 token、服务器发送事件、百分比更新或中间预览帧。在请求过程中，提供商的内部轮询状态不会被转发。

请显示一个不确定进度的指示器。如果你需要进度或流式输出，请使用能够暴露这些信息的合作伙伴代理操作。

<span id="no-cost-or-credit-figures-on-a-response" />

## Comfy 费用与用量

响应可能包含提供商的用量或成本字段。它们并不代表通用的 Comfy 计费。`X-Comfy-Credits-Used` 是可选的，并且不会被重放。请使用 Comfy 平台查询余额、用量和发票。

目录提供的是计费事实，包括 `billing.charges_on_policy_rejection`，而不是价格。请显式处理 `yes`、`no` 和 `unknown`。参见[计费](/zh/development/comfy-router/api#model-billing-facts)。

## Router 并不覆盖每个合作伙伴操作

Router 运行模型。文件上传、账户读取、资产管理、流式传输以及提供商任务控制可能需要 `/proxy/…` 下的合作伙伴代理路由。请查阅 [Comfy API 规范](/openapi-v2.yaml)；支持情况因提供商而异。

## 模型输出与存储资产

输入和输出字段因模型而异。从提供商 SDK 或代理迁移时，路由方式以及结果读取方式都可能发生变化。

部分资产会重新托管到 Comfy 存储上，其他资产则是提供商 URL 或内联字节。关于生命周期和重放行为，请参阅[结果资产](/zh/development/comfy-router/reference#结果资产)。

## 下一步

<CardGroup cols={2}>
  <Card title="快速入门" icon="rocket" href="/zh/development/comfy-router/quickstart">
    通过 Comfy Router 生成你的第一张图像。
  </Card>

  <Card title="使用 Router API" icon="code" href="/zh/development/comfy-router/api">
    选择一个模型、查看其 schema，并处理结果与重试。
  </Card>
</CardGroup>
