功能 · 故障转移与负载均衡

大模型故障转移与负载均衡,让 Agent 不掉线

一次限流或服务商宕机,不该让整个编程会话停摆。AutoJev 按优先级和权重在多个模型间分配流量,让每个会话固定在一个模型上;请求在开始输出前失败时,自动切换到下一个候选。

  • 优先级分组 + 权重分配
  • 连接错误、401/402/403/408/429、5xx 自动转移
  • 冷却时间遵循 Retry-After
  • 会话保持,任务中途不换模型

自动故障转移

autojev/fast

  1. 1

    尝试 1 · openai/gpt-5-mini

    HTTP 429 · Retry-After 30s

  2. 2

    冷却

    openai/gpt-5-mini · 30s

  3. 尝试 2 · deepseek/deepseek-chat

    200 · 流式输出中

只用一个服务商,就是单点故障

Agent 长时间工作,难免碰上限流、额度用完或偶尔的 503。如果 Agent 只认识一个模型,它一出问题,整个会话就卡住,直到你发现并手动改配置。

用 AutoJev 时,Agent 请求的是 autojev/auto 这样的路由。路由背后可以挂多个候选模型(来自不同服务商也没问题),由你决定流量如何分配、某个模型出错时怎么处理。

负载均衡怎么分配

优先级分组

每个候选的优先级可设为 0 到 1,000,000,数字越大越优先。只有高优先级组里没有可用模型时,低优先级组才会接流量。

权重

同一优先级内,新会话按权重(1–10,000)分配。设成 1:3,第二个模型分到的新会话大约是第一个的三倍。

会话保持

请求带有会话标识时,后续轮次会留在同一个模型上,缓存命中更好,Agent 的表现也更稳定。

什么时候转移,什么时候不转移

故障转移适用于命名的负载均衡路由和智能选择路由。同一个请求中,每个候选最多尝试一次。

上游结果是否尝试下一个候选是否让该模型冷却
连接失败是连续失败后冷却
401、402、403是立即冷却
429 限流是立即冷却,若返回 Retry-After 则按其时长
408 或 5xx是默认连续失败 3 次后冷却
400 或 422否,请求本身有问题否
已开始输出后才失败否,绝不重放半截响应—

默认值:每个请求最多尝试 4 次(可设 1–16),冷却 30 秒(1–3600 秒),失败阈值 3 次(1–20),均可在设置中调整。

一次故障转移的全过程

首选模型返回 429,AutoJev 记录这次尝试,转而请求下一个候选,再把结果流式返回。Agent 看到的是一次成功的响应,日志里则能看到两次尝试。

自动故障转移

autojev/fast

  1. 1

    尝试 1 · openai/gpt-5-mini

    HTTP 429 · Retry-After 30s

  2. 2

    冷却

    openai/gpt-5-mini · 30s

  3. 尝试 2 · deepseek/deepseek-chat

    200 · 流式输出中

冷却与恢复

  • 处于冷却中的模型,新请求会直接跳过
  • 服务商返回 Retry-After(秒数或 HTTP 日期)时按其时长冷却,最长 1 小时
  • 冷却结束后只放行一个探测请求,完整成功后才恢复该模型
  • 旧请求迟到的成功结果,不会清除新的冷却状态
  • 已切到备用模型的会话可以继续留在备用模型上,不会强制迁移进行中的任务
  • 各渠道的健康状态在设置中可见,也可手动重置

搭建一条高可用路由

  1. 1

    创建负载均衡路由

    在「路由」中新建 ID 为 auto 的路由,路由方式选「负载均衡」。

  2. 2

    为候选设置优先级和权重

    常用模型设最高优先级并按权重分配,再加一个来自其他服务商的备用模型,优先级设低一些。

  3. 3

    按需调整超时

    默认连接超时 10 秒、等待响应头 60 秒、流式空闲 120 秒。超时、重试次数和冷却时间都可以在设置中调整。

  4. 4

    让 Agent 使用 autojev/auto

    在「Agent」页面连接。到「日志 → 详情」中可以看到每次上游尝试的服务商、模型、HTTP 状态和耗时。

为什么开始输出后不再重试

Agent 一旦收到部分回答,再悄悄换个模型从头来过,可能导致内容重复,甚至重复执行工具操作。所以 AutoJev 只在首字节到达客户端之前做故障转移,流中断则直接报错。

常见问题

什么是大模型故障转移?

故障转移是指首选模型请求失败时,把请求交给备用模型。只要还没有向 Agent 输出任何内容,AutoJev 会在连接失败以及 HTTP 401、402、403、408、429、5xx 时自动完成切换。

加权负载均衡是怎么选模型的?

只使用最高可用优先级组,组内按各模型的权重比例分配新会话。样本少时不一定精确符合比例,会话多了就会趋于一致。

AutoJev 会遵守 Retry-After 吗?

会。失败响应带有 Retry-After 时,AutoJev 按该时长让模型冷却(最长 1 小时),而不是使用默认冷却时间。

故障转移会导致 Agent 重复调用工具吗?

不会。已经开始流式输出的响应,AutoJev 绝不重放,所以已经到达 Agent 的工具调用不会被另一个模型再发一遍。

能在使用不同 API 的服务商之间转移吗?

可以。候选模型可以分别使用 Chat Completions、Responses 或 Anthropic Messages,AutoJev 会在协议转换能力范围内,为最终处理请求的模型转换格式。

继续了解

更新于 2026-10-14

给每个智能体,配上合适的模型。

安装 AutoJev,添加你已有的模型服务商,一键接入智能体。所有数据都留在你的电脑上。

免费开源 · macOS · Windows · Linux