> ## Documentation Index
> Fetch the complete documentation index at: https://docs.yourouter.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 限流与并发

> 处理模型 API 吞吐、上游提供商限制和重试行为。

YouRouter 的设计目标是让你通过一次集成承载生产级模型 API 流量。但对于模型调用，仍然建议你实现标准的重试与并发控制，因为上游提供商可能会施加自己的限流策略。

## 你可以预期什么

| 范围           | 行为                                                         |
| ------------ | ---------------------------------------------------------- |
| YouRouter 网关 | 不需要针对每个上游提供商单独做一套端点集成。                                     |
| 上游提供商限制      | 上游提供商可能返回限流或并发错误。                                          |
| 自动路由         | 省略 `vendor` 或设置 `vendor: auto` 时，YouRouter 会将请求路由到可用上游提供商。 |
| 固定上游提供商      | 如果你显式设置 `vendor`，请求就依赖该上游提供商的可用性和限流情况。                     |

## 推荐的重试模式

对于模型 API 调用，建议使用指数退避来重试瞬时失败：

```text theme={null}
第 1 次重试：等待 1 秒
第 2 次重试：等待 2 秒
第 3 次重试：等待 4 秒
然后停止，或切换到回退路径
```

适合重试的场景包括：

* `429` 限流或并发超限
* `500` 网关或上游提供商错误
* 临时网络故障

不要在紧循环里立刻重试，否则可能会让上游提供商侧的限流问题更严重。

## 并发建议

* 在生产环境中，先从保守并发开始，再逐步提高。
* 除非明确需要指定上游提供商，否则优先使用 `vendor: auto`。
* 将模型 ID 做成可配置项，避免切换模型时改代码。
* 为了排障，请记录请求时间、模型、vendor 模式以及请求 ID。
* 对于流式响应，只有当你的应用能安全重启该请求时，才把掉线视为可重试。

## 示例：自动路由

```bash theme={null}
curl https://api.yourouter.ai/v1/chat/completions \
  -H "Authorization: Bearer $YOUROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [
      {
        "role": "user",
        "content": "Reply with exactly: connected"
      }
    ]
  }'
```

## 示例：固定上游提供商

```bash theme={null}
curl https://api.yourouter.ai/v1/chat/completions \
  -H "Authorization: Bearer $YOUROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -H "vendor: openai" \
  -d '{
    "model": "gpt-4o",
    "messages": [
      {
        "role": "user",
        "content": "Reply with exactly: connected"
      }
    ]
  }'
```

关于路由策略，请参考 [路由指南](/zh/guides/router)。关于请求字段，请参考 [Create Chat Completion](/zh/api-reference/chat/create)。
