跳到正文
土土金API

如何控制大模型 API 成本:10 个马上能用的办法

大模型 API 的费用由模型单价、输入长度、输出长度和调用次数决定。本文按效果从大到小列出 10 个办法,包括选对模型档位、分级路由、上下文缓存、限制输出和给每把 Key 设额度上限,并用实时价格演示能省多少。

大模型 API 的费用 = 调用次数 ×(输入 tokens × 输入单价 + 输出 tokens × 输出单价)。能动的只有三样:模型单价、每次的 tokens 数、调用次数。下面 10 个办法按效果大致从大到小排列。前两个(选对模型、分级路由)一般省得最多,其次是控制输入,再次是控制输出。

1. 选对模型档位

模型厂商最低价分组输入 ¥/百万输出 ¥/百万按次 ¥/次
gpt-5.5OpenAI标准¥10¥80—
gpt-5.4-miniOpenAI标准¥1.5¥9—
gpt-4o-miniOpenAI标准¥0.3¥1.2—

价格为人民币,取各模型最低价分组;价格更新于 2026年11月13日 17:53。

同一家厂商的旗舰模型和小模型,单价可能差几十倍。先用小模型跑一遍评测,正确率够就不往上换。评测方法见如何为业务选模型。

2. 分级路由:难的问题才交给大模型

先让便宜的模型判断问题的类型或难度,简单的直接回答,只把少数复杂问题转给大模型。假设每月 10 万次请求,每次输入 2,000 tokens、输出 400 tokens。

全部用旗舰模型:

成本估算 · gpt-5.5 (标准)

单价
输入 ¥10 / 输出 ¥80(每百万 tokens)
每次用量
输入 2,000 tokens,输出 400 tokens
请求次数
100,000
单次费用
¥0.052

合计约 ¥5,200价格为人民币,取各模型最低价分组;价格更新于 2026年11月13日 17:53。

八成请求交给小模型:

成本估算 · gpt-5.4-mini (标准)

单价
输入 ¥1.5 / 输出 ¥9(每百万 tokens)
每次用量
输入 2,000 tokens,输出 400 tokens
请求次数
80,000
单次费用
¥0.0066

合计约 ¥528价格为人民币,取各模型最低价分组;价格更新于 2026年11月13日 17:53。

剩下两成用旗舰模型:

成本估算 · gpt-5.5 (标准)

单价
输入 ¥10 / 输出 ¥80(每百万 tokens)
每次用量
输入 2,000 tokens,输出 400 tokens
请求次数
20,000
单次费用
¥0.052

合计约 ¥1,040价格为人民币,取各模型最低价分组;价格更新于 2026年11月13日 17:53。

后两项加起来就是路由之后的费用。判断难度这一步也要花钱,用最便宜的模型、只让它输出一个类别就够了。

3. 精简提示词

系统提示词每次请求都要发一遍。删掉重复的说明、过多的示例和客套话,省下几百 tokens,乘上每月几十万次调用也不少。

4. 限制输出长度

  • 设置 max_tokens,推理模型用 max_completion_tokens。
  • 在提示词里写清格式和字数,比如「只输出 JSON」「不超过 100 字」。
  • 推理模型可以用 reasoning_effort 调低思考强度,仅部分模型支持。

输出单价通常比输入高好几倍。同样每月 10 万次、每次输入 2,000 tokens,回答 800 tokens:

成本估算 · deepseek-v4.1-flash (国产模型)

单价
输入 ¥2.8 / 输出 ¥11.2(每百万 tokens)
每次用量
输入 2,000 tokens,输出 800 tokens
请求次数
100,000
单次费用
¥0.0146

合计约 ¥1,456价格为人民币,取各模型最低价分组;价格更新于 2026年11月13日 17:53。

回答压到 300 tokens:

成本估算 · deepseek-v4.1-flash (国产模型)

单价
输入 ¥2.8 / 输出 ¥11.2(每百万 tokens)
每次用量
输入 2,000 tokens,输出 300 tokens
请求次数
100,000
单次费用
¥0.00896

合计约 ¥896价格为人民币,取各模型最低价分组;价格更新于 2026年11月13日 17:53。

5. 用上下文缓存

把不变的系统提示词和资料放在最前面,支持缓存的模型命中后按缓存读取价计费,通常比普通输入便宜得多。做法和能省多少见上下文缓存是什么、怎么省钱。

6. 裁剪对话历史

多轮对话每次都要把历史带上,聊到第 20 轮时,一次请求的输入可能是第 1 轮的十几倍。只保留最近几轮,更早的内容让小模型压缩成一段摘要。

7. 选价格合适的分组

同一个模型在不同分组价格不同。开发测试和失败能重试的批量任务用最低价分组,线上服务再用官方或云厂商分组,见如何选分组。

8. 多条数据合并成一次请求

处理大量短文本时,比如给商品标题分类,可以把 20 条左右放进一次请求,让模型按顺序返回 JSON 数组。系统提示词只发一次,总 tokens 少很多。一次别塞太多,条数多了模型容易漏,返回后要校验数量。

Python
import json
import os
from openai import OpenAI

client = OpenAI(base_url="https://www.tutujin.com/v1", api_key=os.environ["TUTUJIN_API_KEY"])

titles = ["男士纯棉短袖 T 恤", "不锈钢保温杯 500ml", "儿童防滑运动鞋"]  # 实际每批 20 条左右

resp = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[
        {"role": "system", "content": "给每个商品标题分配一个类目:服装、家居、鞋靴、其他。按输入顺序输出 JSON 数组,只输出数组。"},
        {"role": "user", "content": json.dumps(titles, ensure_ascii=False)},
    ],
)
labels = json.loads(resp.choices[0].message.content)
assert len(labels) == len(titles), "条数不一致,这一批重跑"

9. 每把 Key 设额度上限和模型白名单

程序死循环、Key 泄露,都可能在很短时间里产生大量调用。给每把 Key 设额度上限和过期时间,再用模型白名单限制它只能调业务需要的模型,别人拿到也没法用它去调昂贵的模型。具体做法见API Key 安全最佳实践。

10. 定期看操作日志

每周看一次控制台「操作日志」,按模型、按 Key 看费用分布,找出花钱最多的调用再针对性优化。新功能上线后的头几天尤其要看。

汇总

办法省在哪里改动量
选对模型档位单价改 model 参数,先做评测
分级路由单价加一层判断逻辑
精简提示词输入 tokens改提示词
限制输出长度输出 tokens加参数、改提示词
上下文缓存输入单价调整提示词顺序
裁剪对话历史输入 tokens改会话管理逻辑
选合适的分组单价换一把 Key
合并请求输入 tokens改调用方式
额度上限与白名单防止意外消耗控制台里设置
看操作日志找到最该优化的地方每周看一次

计费规则见大模型 API 价格怎么算。

常见问题

哪个办法省得最多?

通常是选对模型档位。不同档位的单价可能相差几十倍,先用便宜的模型评测,够用就不往上换,这一项的效果一般最明显。

限制 max_tokens 会影响回答质量吗?

设得太小会把回答截断,响应里的 finish_reason 会是 length。按实际需要的长度留出余量,再在提示词里要求回答简洁,效果更好。

怎么防止 Key 泄露或程序出错造成大额消费?

给每把 Key 设额度上限和过期时间,开启 IP 白名单和模型白名单。即使出了问题,损失也被限制在一把 Key 的额度之内。

有包月套餐或月费吗?

没有月费,按实际用量计费。企业采购、对公付款可以加客服微信 JsnonoChat 详谈。