Token 计算器
用OpenAI、Claude、通义千问、DeepSeek、Llama、GLM 各自的官方分词器精确计算文本 Token 数,并按上下文窗口算出占用比例,数字与实际 API 计费一致,非估算。
token 数只能算,不能估
一个 token 不是「一个词」也不是「一个汉字」。常见英文单词常被压成 1 个,汉字常常 1 个字就是 1 个以上,生僻词、代码符号、emoji 又是另一套切法 —— 所以按字数除以某个系数得到的估算,跟真实值能差两三倍。
本页不做估算:数字由各家自己的官方分词器算出,和你实际调用 API 时被计费的量一致。
同一段文本,各家数字不同是正常的
每家分词器的词表都不一样,切分粒度自然不同。同一段中文,GPT 与 Claude 的结果差 10%~30% 属常态 —— 这不影响两边的准确性,它们各自的官方分词器就是这么切的。
所以算 prompt 预算要按你实际调用的那一家来算,别拿一个模型的数字去套另一个。
数字从哪来
GPT 系列用 OpenAI 官方词表,通义千问、DeepSeek、Llama、GLM 用它们各自在 HuggingFace 上发布的官方 tokenizer —— 全部存在服务器本地,运行时不再联网。每行结果右边都标着这一行的计数来源。
Claude 是唯一的例外:它的分词器没有公开,唯一精确的途径是调用官方 count_tokens 接口,因此需要服务端配置密钥;没配时那一行会直说「需服务端配置密钥」,而不是拿估算糊弄过去。
没列出的模型是有原因的
Gemini、文心一言、讯飞星火等不在列表里:Google 与这些厂商都没有提供可用的官方 tokenizer 词表,任何第三方数字都无法保证与实际计费一致。与其给一个看着像但可能错的估算,不如不列。
别忘了给输出留位置
上下文窗口是输入和输出共享的:输入占了 12 万tokens、想让模型再写 8000 字,窗口只有 128K 时就会在生成到一半时被截断。
所以上面留了「预留输出」这一栏,填上你打算让它写的 token 数,占用比例会按输入加预留来算,超出窗口的那几行会标红。
文本会发给服务器
这是站内唯一需要把输入内容送出浏览器的工具 —— 精确 token 数必须由服务端的分词器计算,没有纯前端替代方案(官方词表动辄十几 MB,塞进每个页面与「工具页要快」冲突)。文本只在内存里用于分词,不落库、不写缓存、不用于其它用途。
但如果是要粘未公开的稿件或内部文档,请清楚这一点:不便上传的文本就别用本页。复制与导出只带各模型的数字和占比,不含原文。
单次上限 20 万字符
分词是逐字符处理的,超长文本会明显拖慢响应,因此超过 20 万字符会直接拒绝。日常的提示词、单个代码文件、几千行文档都远达不到这个量级。
常见问题
为什么数字和官方计费完全一致?
因为跑的就是厂商自己的分词器:GPT 系用 OpenAI 官方词表(o200k / cl100k 等编码),其余各家用它们发布的官方 tokenizer.json,不是任何形式的估算。只有 Claude 例外,它走官方 count_tokens 接口。
为什么 Claude 那一行显示「需服务端配置密钥」?
Claude 的分词器没有公开,无法像其它家那样把词表存在本地,只能调用 Anthropic 官方的 count_tokens 接口,而该接口需要 API 密钥。密钥只能配在服务器上,页面无法也不该持有它。
为什么 Gemini 不在列表里?
Google 没有提供官方的 token 计数接口,也没有公开可直接使用的分词器词表。任何第三方数字都无法保证与实际计费一致,与其给一个可能错误的估算,不如不收录。
哪个模型最费 token?
中文内容在 Llama 与 GLM 的分词器下切得更碎,同一段中文的 token 数通常是 GPT 系的一倍上下;纯英文则各家差别很小。结果区每行下面都标了该行用的计数来源与窗口占用,可直接对照。
占用 100% 是什么意思?
指输入 token 加上预留输出已经等于该模型的上下文窗口上限,再多就会报错或被截断。条形长度是各模型之间的相对量,不是占窗口的比例,占用比例写在每行文字里。
统计结果和实际扣费完全一致吗?
分词结果一致,但实际请求还要算上系统提示词、对话历史和模型自己生成的回复 —— 这些都不在你粘贴的这段文本里。想预估整轮对话的消耗,把系统提示词也粘进来一起算更接近。
能算图片和语音的 token 吗?
不能。本页只统计你粘贴进来的文本;图片、音频、视频的 token 由各家模型按自己的规则折算(通常按分辨率或时长),需要在对应的多模态接口文档里查。
上下文窗口数值准确吗?
填的是各模型官方公布的单次请求上限。模型和窗口都会迭代,如果你在用的版本与此不同,以官方文档为准,占用比例会随窗口值变化。
我的文本会被保存吗?
不会。服务端只把它交给分词器算个数,不写数据库、不落缓存、不做日志留存,请求结束即丢弃。