01 / DEFINITION
词元(Token)到底是什么?
在大语言模型中,词元是文本经过分词器(Tokenizer)处理后得到的基本单元。模型不会直接把一整段自然语言作为连续文字理解, 而是先把文本转换成一串词元编号,再把这些编号映射成向量用于推理。一个词元可以是单个字符、常见词、子词、标点,甚至是空格与字符组合。
“词元”不是固定的语言学切词标准。模型训练时使用的词表、编码算法和版本不同,同一句话的切分结果也会不同。 因此,“1000 个汉字一定等于 1000 Token”或“一个英文单词固定等于一个 Token”都只能作为粗略经验,不能作为账单依据。
字符是人看到的书写单位,词元是模型实际处理的编码单位;API 账单通常依据后者。
界面显示
用户看到的汉字、字母、数字、空格和标点。
模型处理
分词器依据词表拆出的编码片段,数量因模型而异。
模型计算
词元编号映射成数值表示后进入神经网络。
02 / TOKENIZATION
一段文本如何变成词元?
分词器会先读取文本,再依据自己的词表寻找可复用的字符片段。常见英文词可能作为一个整体进入词表,较长或少见的单词会被拆成多个子词; 中文文本可能按单字、词语或字节组合切分。表情符号、代码缩进、JSON 字段以及特殊字符也会消耗词元。
- 1接收内容
系统提示、历史消息、用户输入、工具定义和附件说明共同组成请求。
- 2规范化与切分
模型对应的分词器把内容匹配为词表中的字符或子词片段。
- 3映射编号
每个片段被转换成词元 ID,随后映射为模型可以计算的向量。
- 4逐步生成
模型预测下一个词元,直到完成回答、达到限制或触发停止条件。
这也解释了为什么代码、表格、重复 JSON 键名或大量无意义空白会增加上下文占用。优化 Token 并不是简单删字, 而是减少重复上下文、选择更紧凑的数据结构,并避免在每一轮请求中重复发送不变信息。
03 / USE CASES
词元可以做什么?Token 有什么用?
对大模型而言,Token 是实际参与计算的内容单位;对开发者而言,它是一把同时衡量容量、费用与效率的尺子。 理解词元的用途,可以避免上下文超限、账单失控和提示词重复,也能更准确地比较不同模型与接口。
计算可用容量
判断系统提示、历史对话、工具定义和当前问题是否能放进模型上下文窗口。
估算 API 成本
根据输入 Token、输出 Token、缓存和对应单价估算每次调用及整月预算。
控制回答长度
为模型预留合理输出空间,防止内容在中途被截断或生成大量无效文本。
减少重复消耗
压缩历史消息、复用缓存前缀并精简工具描述,提高每个 Token 的有效信息量。
查询用户用量
按 API Key、模型、用户或项目记录 Token 消耗,用于配额、告警和成本归因。
选择合适模型
结合上下文长度、任务难度、速度和成本,在多个模型之间进行智能路由。
04 / WHERE TOKEN COMES FROM
Token 可以从哪里来?先区分三种含义
“Token 从哪里来”常常混合了三种不同概念。大模型 Token 由分词器处理文本时产生;API Token 或 API Key 是调用服务的密钥; 登录 Access Token 则由认证系统签发。它们名称相似,但用途、获取方式和安全要求完全不同。
模型词元
输入提示、历史消息和模型输出经过分词器后形成,不能单独购买或下载。
API 调用密钥
在模型服务商或统一 API 平台注册后,由控制台创建并绑定额度、分组和权限。
登录访问令牌
登录或 OAuth 授权后由认证系统生成,通常有有效期,不应当作 API Key 公开使用。
05 / CALCULATOR
词元估算与 Token 成本计算器
输入文本后,本工具会依据中日韩字符与其他字符的构成给出估算范围。所有计算都在浏览器本地完成,文本不会发送到服务器。 估算结果适合容量规划,正式计费请使用目标模型的官方 Token 计数接口。
注意:工具调用、系统消息、图片、音频、缓存读写和推理词元可能使用不同统计方式或价格。本计算器不读取模型服务商账户,也不构成价格承诺。
06 / BILLING
大模型 API 为什么按 Token 计费?
模型推理的计算量与需要处理和生成的词元数量密切相关,因此多数 API 会分别记录输入词元与输出词元。 输入通常包括系统提示、上下文历史和当前请求;输出包括模型返回的文本,部分模型还会单独记录推理、缓存或多模态用量。
实际开发中应优先读取响应中的 usage 字段,并把用量按用户、模型和请求类型记录下来。不要只使用字符数反推账单,
因为系统消息、工具参数和模型内部格式可能不会完整出现在最终回答中,却仍可能占用请求上下文。
{
"usage": {
"input_tokens": 1280,
"output_tokens": 420,
"total_tokens": 1700
}
}
07 / PROVIDERS
Claude、GPT 与 Gemini 如何准确计算 Token?
最可靠的方法始终是使用目标服务商和目标模型对应的计数能力。同一平台升级分词器后,同一段文本也可能得到不同结果, 因此应在调用时明确模型,不要长期复用旧版本的估算系数。
| 平台 | 准确计数方式 | 适合场景 | 官方资料 |
|---|---|---|---|
| OpenAI GPT | 官方 Tokenizer 或与模型匹配的 tiktoken | 调试文本切分、请求前估算 | Tokenizer |
| Anthropic Claude | Messages Token Counting API | 系统提示、工具、图片和文档请求 | Token counting |
| Google Gemini | models.countTokens 与响应 usage | 文本和多模态内容计数 | Count tokens |
统一 API 网关可以把不同上游返回的用量字段归一化,方便开发者在同一个系统中查询 Token 消耗、余额和调用记录。 但归一化展示不应抹去缓存、推理或多模态等特殊用量,计费系统需要保留上游原始明细以便核对。
08 / OPTIMIZATION
如何减少 Token 消耗而不牺牲效果?
压缩重复上下文
把稳定规则放入可缓存的提示前缀,不要在每轮请求中重复长篇背景。
控制历史消息
对旧对话进行结构化摘要,仅保留与当前任务相关的事实和约束。
精简工具定义
减少冗长字段描述与重复枚举,只向模型提供当前步骤需要的工具。
设置输出边界
明确格式、长度和停止条件,避免生成无法被产品使用的冗余内容。
Token 优化的目标不是让提示越短越好,而是提升每个词元承载的有效信息。过度压缩可能让指令产生歧义,导致模型重试或返回错误结果, 最终反而增加成本。建议结合任务成功率、延迟和总用量一起评估。
09 / FAQ
关于词元的常见问题
一个汉字等于一个词元吗?
不一定。不同模型的词表和分词器不同,同一个汉字、词语或标点可能产生不同数量的词元。准确结果应使用目标模型的官方计数方法。
词元可以做什么,Token 有什么用?
Token 可用于计算上下文占用、限制生成长度、统计 API 用量、估算调用成本和优化提示词。开发者还可以按 Token 用量为用户设置配额、告警和计费规则。
Token 可以在哪里获取?
模型文本 Token 是输入和输出经过分词器后产生的;如果你需要的是 API Key,可在词元 API 注册并登录,然后进入 API 密钥页面创建。请勿购买来源不明或与他人共享的密钥。
为什么估算值和最终账单不一致?
估算通常只分析可见文本,实际请求还可能包含系统消息、历史对话、工具定义、图片、缓存和模型专用格式。最终应以服务商返回的 usage 与账单为准。
上下文窗口包含输出词元吗?
通常需要同时考虑输入、历史消息和输出空间,但不同模型的限制口径可能不同。调用前应为输出预留容量,并查阅目标模型的官方文档。
中文一定比英文消耗更多 Token 吗?
不能一概而论。具体差异取决于模型词表、文本内容、专业术语和表达方式。翻译成英文不一定降低总成本,还可能改变语义与回答质量。
词元数量会影响响应速度吗?
通常更长的输入需要更多预处理,更多输出也需要更长生成时间,但实际延迟还受模型、服务负载、缓存、网络和并发策略影响。
官方参考资料
START BUILDING
用统一 API 管理模型与 Token 用量
查看词元 API 接入文档,配置 Claude、GPT、Gemini、Codex 等模型和开发工具。