Token Counting

为什么中文提示词可以使用与英文提示词不同的 token 预算

如果你的团队同时用英文和中文编写提示词,不要只根据一个英文估算来规划生产预算。

这种快捷方式行不通,因为 API 限额和费用是按实际到达模型的已分词请求来计算的。两个提示词可能要求完成同样的任务,但在包含本地化措辞、标点、JSON 指令和检索到的上下文后,输入 token 数仍然不同。

截至 2026 年 7 月 21 日,OpenAI 的 token 计数指南建议使用 POST /v1/responses/input_tokens 来计算精确的请求负载。该指南说明,这个计数使用与 Responses API 相同的输入格式,并包含请求结构开销。这是进行多语言提示词预算的正确基线。

核心规则

在发送之前,先计算精确的本地化请求。

如果你只计算英文版本,你预算的其实只是一个代理值,而不是你真正会发出的请求。

为什么中文提示词预算可能不同

  1. 本地化措辞本身就是不同的输入。
  2. 标点和格式模式会发生变化。
  3. JSON 字段标签等结构化指令的形式可能会改变。
  4. 检索到的上下文在不同语言下可能会扩展或压缩。
  5. 即使任务不变,预期输出长度也可能改变。

这就是为什么即使业务意图完全相同,中文提示词预算也可能与英文提示词预算不同。

使用官方预检计数,而不是猜测

  1. 构建真实的请求负载。
  2. 将该负载发送到 POST /v1/responses/input_tokens
  3. 读取 input_tokens
  4. 在生产调用之前批准、裁剪或拒绝该提示词。

这比使用字符数规则或仅依赖本地分词器更可靠。官方计数包含请求结构 token,而这些 token 可能不会出现在团队可见的文本中。

本地估算仍然有助于比较

本地分词器仍然适合用于草拟和并排比较。它不是最终依据,但能帮助你看到中文提示词预算和英文提示词预算从何处开始分化。

示例英文 token中文 token发生了什么变化
短提示词57只改了句子
JSON 提取任务4041措辞变了,schema 保持一致
重检索任务5767措辞和政策上下文都变了

可直接粘贴到 TokenTest 中测试的提示词

示例 1:短提示词

英文:

Tell me a joke.

中文:

给我讲个笑话。

示例 2:JSON 提取任务

英文:

You are a support operations assistant.

Summarize the customer issue in one sentence and return JSON with:
- issue_type
- urgency
- summary

Customer message:
"I was billed twice after checkout failed."

中文:

你是一名客服运营助手。

请用一句话总结客户问题,并返回 JSON,包含:
- issue_type
- urgency
- summary

客户消息:
"结账失败后我被重复扣费了。"

示例 3:重检索任务

英文:

你正在复核一笔账单事故。

阅读政策摘录和客户投诉后,返回:
- root_cause
- refund_risk
- escalation_required

政策摘录:
对因结账错误导致的重复扣费,可在 7 天内退款。

客户投诉:
"结账失败后我被重复扣费了。"

Chinese:

你正在复核一笔账单事故。

阅读政策摘录和客户投诉后,返回:
- root_cause
- refund_risk
- escalation_required

政策摘录:
对因结账错误导致的重复扣费,可在 7 天内退款。

客户投诉:
"结账失败后我被重复扣费了。"

上线前要测试什么

检查项重要原因
统计精确的本地化请求确认真实的输入预算
加入真实的检索块查看上下文是否会把提示词推过预算
保持相同的输出 schema避免伪造跨语言比较
比较短版本和长版本揭示 token 增长何时开始变得非线性

为什么在预检计数之后使用 TokenTest 很有用

官方的预检计数会告诉你在调用之前应该发生什么。TokenTest 则帮助你验证调用之后实际发生了什么。

TokenTest 的主页和手册目前描述了围绕使用完整性、token 总量一致性、输入单调性、缓存 token 证据以及停止限制关联的生产参考评估检查。

这一点很重要,因为 OpenAI 的指南还指出,输出 token 的使用量包括不可见的生成 token。即使你只看可见文本,也仍然可能错过预算风险。

一个简单的操作策略

使用官方输入 token 端点统计精确的本地化请求,然后为每种生产语言验证实时使用完整性。

常见错误

最终结论

中文提示词可以使用与英文提示词不同的 token 预算,因为 tokenization 依据的是实际的本地化请求,而不是人脑中的那个想法。

为了可靠规划,请使用两层方法:

  1. 通过 POST /v1/responses/input_tokens 进行官方预检计数
  2. 在请求之后在 TokenTest 中进行实时使用验证

这就是粗略估计和生产决策之间的区别。

在上线前,试用 TokenTest 中上面的示例,并比较英文和中文中的相同工作流。