Skip to content
OPEN SOURCE · SELF-HOSTED · AI GATEWAY

少守着重试,
让 AI 继续干活。

接上你常用的客户端和已有账号。选路、等待、可恢复的故障,交给 Ferry 处理。

Go + SQLite · AMD64 / ARM64 · Apache-2.0
REQUEST → RESPONSE → RECOVERY

Ferry 可以怎么用?

请求、返回、接力、排队、逻辑模型、重置券。

请求发出,选好线路

请求发出流程示意,不是真实流量;备用线路须兼容,等待与恢复受预算约束。 01 / 请求发出FERRYClaude CodeAnthropicHHermes AgentOpenAICodexDeepSeekFerry客户端发出请求,Ferry 选择符合要求的模型与线路。

Claude Code、Hermes、Codex 发来请求,Ferry 按路由和能力选择上游。

结果返回,继续执行

结果返回流程示意,不是真实流量;备用线路须兼容,等待与恢复受预算约束。 02 / 结果返回FERRYHHermes AgentOpenAISTREAM文本片段工具参数完成事件Ferry文本、工具参数与完成事件,经同一入口返回客户端。

文本、工具参数和完成事件,通过同一个入口回到客户端。

首选故障,备用接力

自动接力流程示意,不是真实流量;备用线路须兼容,等待与恢复受预算约束。 03 / 自动接力FERRYCodexChatGPT · A首选线路ChatGPT · B备用账号OpenAI API后续备用Ferry503OK首选线路临时失败,兼容的备用线路接力完成请求。

首选账号临时失败,换一条兼容线路继续,不必手动重发。

遇到限流,排队再走

排队限流流程示意,不是真实流量;备用线路须兼容,等待与恢复受预算约束。 04 / 排队限流FERRYHHermes AgentChatGPT并发上限 2Claude Code其他线路101202303等待中的任务QUEUEFerry010203429 · WAIT1 / 2 · GO遇到限流先等待,容量释放后按序发出请求。

容量不足先等待,恢复后按序放行;不让突发请求挤向上游。

模型可换,业务照常

逻辑模型流程示意,不是真实流量;备用线路须兼容,等待与恢复受预算约束。 05 / 逻辑模型FERRYHHermes Agent接入案例OpenAI模型 AAnthropic模型 BDeepSeek模型 Cmodel: work客户端配置保持不变Ferrywork → Awork → B两次请求使用不同上游模型,业务仍调用同一个逻辑模型。

业务只认 work 这样的逻辑模型。底层模型、账号和线路在 Ferry 中调整,客户端配置不用跟着改。Hermes 只是一个接入案例。

逻辑模型配置说明 →

重置券快过期,自动兑换

AutoReset流程示意,不是真实流量;备用线路须兼容,等待与恢复受预算约束。 06 / AutoResetFERRYRESET CREDIT可用重置券10 分钟后到期Codex上游账号兑换 1 张重置券记录兑换结果示例阈值:提前 20 分钟FerryCHECKREDEEMRECORDED仅使用已有 Codex 重置券;能否重置由上游判定。

AutoReset 在到期阈值内兑换可用的 Codex 重置券,并记录结果。默认提前 20 分钟,可关闭。

AutoReset 设置说明 →

动画不是实时流量。恢复受时间、次数和客户端取消约束;已经提交可见输出的流,不会拼接另一条上游流。

FERRY / CAPABILITIES

Ferry 支持什么

01

限流等待,自动续接

符合策略的请求在恢复窗口内等待,条件允许后继续。

02

上游故障,自动接力

遇到可恢复故障,交给合适的备用线路。

03

并发可控,高峰排队

限制同时处理的请求,为突发流量留出等待空间。

04

AI 友好,自助运维

用 Skill 和管理 API 查证据、模拟选路、执行授权变更。

05

能力实测,按需匹配

根据实际端点、模型和协议的能力证据选路。

06

入口不变,模型可换

客户端保留逻辑模型名,上游和线路在 Ferry 中调整。

07

三种协议,统一接入

Chat、Responses、Messages,按实际能力转换。

08

请求过程,有据可查

查看每次尝试、恢复原因、用量和费用依据。

GET STARTED

两条命令,启动 Ferry。

创建管理员,添加上游,再给客户端一个 Key。不用编译源码,也不用另装数据库。

安装、备份与升级指南 →
TERMINAL
curl -fsSLo compose.yaml https://github.com/hulkbig/ferry/releases/download/v0.1.1/compose.yaml
docker compose up -d

打开 localhost:17910 完成初始化。

开始之前

Ferry 自带账号或额度吗?

不提供。你使用自己的 API Key 或受支持的订阅账号;调用、重试和探测可能产生费用。

会一直 Thinking 到成功吗?

等待有恢复预算。客户端显示 Thinking,不代表上游一直在推理,也不保证最终成功。

所有组合都验证过了吗?

没有。部分账号驱动只有离线测试;工具、流式和续轮要按你实际使用的线路验证。

Apache-2.0 · Third-party notices included