估算 AIFast Link 的 GPT、Claude 与 Gemini API 成本,不能只看某个模型的单价。除了输入历史、输出长度、失败重试、工具循环和模型路由,还要先分清账户使用的是按量充值还是月度订阅。本文不写固定价格;模型目录和账单规则应以测试当日 Link 控制台、价格页及结账页为准。
开始前检查
先收集一批真实业务样本,至少包含:
- 普通短问答。
- 带历史记录的多轮对话。
- 长文档或代码输入。
- 工具调用或 Agent 任务。
- 失败、超时和重试请求。
模型价格、倍率和可用范围以 AI快站控制台及价格页面实时展示为准。
先区分 Link 的两种使用方案
Link 站当前提供 GPT、Claude 与 Gemini 模型,并提供按量充值和月度订阅选项。两种方案的价格、模型范围、额度、有效期、续费和取消规则都可能不同,必须逐项读取当前账号可见的说明。
| 对比项 | 按量充值 | 月度订阅 |
|---|---|---|
| 先核对 | 支付金额、实际到账余额、余额有效规则 | 订阅周期、开放模型、包含额度或使用限制 |
| 账单记录 | 每次请求用量、模型单价、失败与重试扣费 | 月费、周期内请求量、额外扣费或限额规则 |
| 适合的核算方式 | 依据实际请求 Token 与当期价格计算 | 先确认订阅具体包含什么,再按周期总用量评估 |
| 不应推断 | 充值金额等于固定 Token 数 | 月费可以直接换算成固定 Token 单价 |
如果结账页没有明确说明订阅额度、模型范围或超额处理方式,先把该项目标记为“待确认”,不要自行假设无限使用或固定折扣。按量账户与订阅账户的请求结果也要分开汇总,避免用一种方案的账单解释另一种方案。
月卡有效期为 30 天,额度按天重置,只适用于套餐指定分组。对照 当日核对的套餐表,按实际使用天数计算,不要把每日额度当成可一次花完的整月余额。
已经取得当前输入价和输出价时,可以打开 Token 成本计算器填写真实 Token、计划任务数量和已计费额外重试比例,先得到可复算的批量成本基线。
只统计账单实际计费的额外重试。例如 100 次计划任务、额外重试 8 次但只有 3 次计费,应填 3%,不是 8%。该估算假设每次重试的输入、输出 Token 和单价与原任务相同;不同用量、缓存与工具费用应分开核算。没有日志时填 0 只是临时假设,不代表重试成本为零。
需要在本地复算时,使用 AIFast Link 独立仓库的 中文成本公式与离线算例 或 English cost formula and examples。算例不需要 API Key、不发起模型请求,内置参数是演示输入,不是当前报价或真实调用记录。
Link 月卡与 Gemini 混合任务如何核算
Link 公开目录把 Gemini 放在独立分组,GPT/Claude 月卡不包含 Gemini。一个任务同时使用 Claude 写代码、Gemini 分析输入时,要拆成两条用量记录,不能把全部调用都记入 Claude 月卡。
| 本次任务的调用 | 核算位置 | 必须确认 |
|---|---|---|
| 月卡指定分组内的 GPT 或 Claude | 当天套餐额度 | 模型 ID、令牌分组和有效期都符合套餐范围 |
| 指定分组内超过日额度的调用 | 钱包超额或请求受限 | 套餐及账户扣费偏好是否允许钱包回退 |
| Gemini 独立分组的调用 | 独立按量费用 | Gemini 分组权限、模型价格与真实用量 |
逐日记录,而不是把月度 Token 合计后直接除以月费:
eligible_daily_credits = 当天属于月卡指定分组的实际用量
daily_overage = max(0, eligible_daily_credits - daily_plan_allowance)
monthly_cash_cost = plan_payment + sum(actual_wallet_charges)
钱包账单可能包含日额度超额和 Gemini 等非套餐调用,两者都必须计入,但不能重复相加。若钱包回退不允许,超额任务没有完成,不能把它算作已覆盖用量;Credit 也不能直接当人民币相加。
例如同一天 Claude 任务消耗 24 Credit、套餐日额度为 20 Credit,同时还有 Gemini 请求:只有 Claude 的 20 Credit 可由该套餐日额度覆盖,剩余 4 Credit 与 Gemini 请求分别核对钱包账单。这里的 24 和 20 是演示输入,不是套餐报价,也没有假设两种模型的 Credit 对应相同 Token 数。
比较按量与月卡时,应使用相同任务、各自适用分组的真实价格,保留失败重试与未完成任务。用 Link 按量与月卡对比工具输入实际使用天数和超额成本;工具算例不能替代账单。
配置步骤
1. 记录一次 Link 请求的完整用量
如果接口返回 usage,至少保存:
{
"model": "YOUR_MODEL_ID",
"prompt_tokens": 0,
"completion_tokens": 0,
"total_tokens": 0,
"retry_count": 0,
"status": "success"
}
上面使用 Chat Completions 常见的 prompt_tokens、completion_tokens 和 total_tokens。Responses API 或其他兼容接口可能使用不同字段名,必须按实际响应解析。账务核对应以控制台记录为准,应用日志用于分析请求结构和趋势。
2. 使用可复算的成本公式
单次任务成本
= 输入用量 × 输入单价
+ 输出用量 × 输出单价
+ 重试请求成本
+ 工具循环产生的额外请求成本
不要只统计最终成功的那一次。如果前面已经生成内容但客户端超时,相关请求仍可能产生用量。
3. 找到最常见的隐性成本
| 隐性成本 | 检查方法 |
|---|---|
| 每轮重复发送全部历史 | 记录每轮 input_tokens 是否持续快速增长 |
| 输出没有长度限制 | 检查任务是否需要明确停止条件或输出结构 |
| 失败后无限重试 | 记录 retry_count 与最终状态 |
| Agent 工具循环 | 记录每个工具步骤的模型请求次数 |
| 所有任务使用同一高成本模型 | 按任务难度统计质量与成本 |
| 流式中断后重新生成 | 为任务设置幂等标识并保留已完成状态 |
4. 按任务路由模型
先按任务类型建立小型评测集,再决定路由:
- 分类、抽取、格式转换:优先评估低延迟、低成本模型。
- 复杂代码、长推理:重点比较成功率和返工次数。
- 图像、视频、检索:按实际输入输出单位单独统计,不能直接套文本 Token 公式。
- Agent:统计完整任务成功所需的总调用次数,而不是只看单次价格。
便宜但经常返工的模型,完整任务成本可能更高;价格更高但一次完成的模型,也可能更适合关键流程。
5. 设置预算保护
建议同时设置:
- 单次任务最大输出长度。
- 单用户每分钟请求数。
- 单任务最大工具循环次数。
- 单日或单项目预算提醒。
- 异常重试和用量突增告警。
常见问题
为什么控制台费用和本地估算不完全一致
可能原因包括价格倍率变化、缓存或推理用量细分、流式中断、重试未计入、本地字段缺失或异步记账延迟。财务核对应以控制台账单为准。
输入越短就一定越便宜吗
通常能减少输入用量,但不能牺牲任务必要信息。过度压缩导致模型反复追问或输出错误,可能增加总调用次数。应比较“完成一次业务任务”的总成本。
如何判断是否应该换模型
同时比较成功率、人工返工时间、延迟和完整任务成本。只按单价排序,无法反映真实业务效果。
下一步
建立每周用量报告,按模型、接口、用户、业务功能和错误类型分组。先修复无限重试、历史膨胀和工具循环,再考虑更复杂的路由策略。
需要比较多个模型或入口时,使用模型 API 对比测试模板统一记录任务完成率、Token、延迟、错误和人工返工。