跳转到内容
17.7k

入站请求体准入

提供商配置参考介绍了 maxInboundBodyBytes,即单个入站 JSON 请求体解码后的最大大小。默认值仍为 256 MiB,可配置范围仍为 1 MiB 至 512 MiB。修改上限后请重启代理,使监听器与读取器共同使用预期上限。

当解析后的上限大于 256 MiB 时,每个受此规则约束的 HTTP 请求都会从进程共享的 512 MiB 准入预算中预留其完整配置额度。这意味着同时最多只能运行一个此类请求,即使多个监听器共用同一进程也是如此。较小的请求体也会预留全部额度;较小的 Content-Length 或压缩都不能绕过准入。预留会持续到响应流结束、失败或取消完成,而非请求 JSON 解析完毕时立即释放。

受约束的 POST 端点包括 /v1/responses、/v1/responses/compact、/v1/chat/completions、/v1/messages、/v1/messages/count_tokens、/v1/images/generations、/v1/images/edits 和 /v1/alpha/search。图像、搜索和 token 计数仍遵守各自现有的可配置单请求体上限。内部直接转换和 combo 调用不会再次预留 HTTP 额度。管理、音频、上下文历史和 WebSocket 的上限不变。

省略设置、设为零,或解析后上限不超过 256 MiB 时,不会启用这一额外的并发门槛。现有请求数量及其他资源限制仍然适用。

额度暂时不可用时,会在协议解析或提供商分发之前返回 HTTP 503、Retry-After: 1 和错误代码 server_busy。Messages 与 token 计数客户端收到类型为 overloaded_error 的 Anthropic 格式错误;兼容 OpenAI 的客户端收到 server_error。请遵守重试标头和客户端退避机制,在当前请求完成后重试。进一步提高请求体上限无法解决额度繁忙问题。

请求体超过单请求上限时,仍按现有逻辑返回 HTTP 413。声明的大小已超限时,也会走这一路径,而不会变成繁忙拒绝。连接断开时仍遵循现有取消行为。认证和来源检查在并发门槛之前执行。

512 MiB 是已准入请求各自额度之和,并不保证进程内存低于 512 MiB。解码、字符串、对象图、请求副本和其他应用状态还会使用额外内存。现有的 UTF-8 与重新序列化 JSON 的测量方式保持不变;不会用输入字节长度代替可能更大的规范化 JSON 大小。

对于并行的小请求,请尽可能保留默认上限。只有在需要较长历史记录的工作流中,才应有意识地提高上限,并接受额外的并发限制。