yue-token-cost:量清中文与粤语在 Token 账单上的真实差异

前言

在 DSH 或 Cursor 里接大模型 API 时,计费通常按 token 数结算。同一句意思,用英文、简体、繁体或粤语写出来,token 数往往差一截;普通计数器只告诉你「这一串是多少」,不会并排比较书体,也不会说明多出来的 token 来自哪里。若你在做面向粤语或繁体用户的智能体、RAG 或长上下文流水线,这类差异会直接变成成本与上下文窗口占用。

下面介绍社区插件 yue-token-cost(维护者 Pugto-AI,分类:模型推理)。它以 MCP 服务形式提供可复现的文本度量:不跑 GPU、不训练模型,只做确定性的分词与对比。

这是什么

yue-token-cost 同时是 npm 包与 DSH 配置型插件 bundle,核心是一句定位:Measure what Chinese/Cantonese actually costs in tokens — and why.(量清中文/粤语实际要花多少 token,以及原因。)

与「单字符串 + 单一 tokenizer」的计数工具不同,它强调:

  • 跨书体(简体、繁体、粤语等)并排对比;
  • 按 token 归因(例如半字符、数字拆分、前导空格变体);
  • 可复现的 benchmark(README 中的数字来自生成的 BENCHMARK.md)。

当前发布状态:v0.1.0,已发布到 npm;npx -y yue-token-cost 可直接启动 MCP 服务。

核心功能

插件通过 MCP 暴露三个工具(名称在 DSH 中通常带 mcp__yue-token-cost__ 前缀,例如 mcp__yue-token-cost__count_tokens):

工具 输入要点 输出要点
count_tokens text,可选 tokenizer、usd_per_million token / 字符 / 字节数;若提供单价则估算费用
compare_scripts texts[](同义不同书体),可选 tokenizers[] 并排计数、差值与 attribution
explain_split text,可选 tokenizer 逐 token 拆解,标记半字符、数字拆分等

默认覆盖的 tokenizer 包括 o200k_base(GPT-4o+ 一代)与 cl100k_base(GPT-4 时代)。README 用 6 条香港劳工/法律向测试集说明:在 o200k_base 上,繁体、粤语仍可能比简体多约 18–24% token;在 cl100k_base 上,中文整体相对英文可高出约 52%(简)至 79%(粤)。同一简体文本从 cl100k 换到 o200k 可从 128 降到 83 token(约 −35%)——换 tokenizer 代际有时比改写法更省。

v1 明确不做:粤拼(README 指向 tinci-mcp)、词典、ASR、模型训练、Web UI、自动改写省 token。DeepSeek 系 tokenizer 的单独说明见仓库 docs/deepseek-tokenizer.md。

安装与启用

通用 MCP 客户端(Cursor / Claude Code / VS Code 等 stdio 宿主)

在 MCP 配置中加入:

{ "mcpServers": { "yue-token-cost": { "command": "npx", "args": ["-y", "yue-token-cost"] } } }

若环境没有 npx(离线或固定目录),可改为用 Node 指向入口文件:

{ "command": "node", "args": ["/abs/path/to/yue-token-cost/server.mjs"] }

在首个 npm 发布之前或需直接从 GitHub 拉取时(资料原文命令):

npx -y --allow-git=all github:Pugto-AI/yue-token-cost

部分 npm 配置默认阻止 git 依赖,--allow-git=all 用于放开限制。

DSH

DSH 侧为配置型 bundle,底层仍是同一 npm 包:

dsh plugin add yue-token-cost

安装后可通过 MCP 调用上述工具,例如 README 提到的 mcp__yue-token-cost__count_tokens。

运行要求:发布包声明 Node ≥ 20;仓库开发文档写明用 pnpm 11 安装时需 Node ≥ 22。

典型用法

单段计数与可选费用

向 count_tokens 传入文本,必要时指定 tokenizer 与 usd_per_million,得到 token、字符、字节及可选美元估算。

同义多书体对比

向 compare_scripts 传入表达同一意思的多段 texts[],可选 tokenizers[],得到并排结果、差值与归因字段,用于评估「同一提示词换繁体/粤语」对账单的影响。

理解为何多 token

explain_split 对单段 text 做逐 token 分解。README 示例:对单字「饿」在 o200k_base 下为 2 个 token,且两个 piece 均标记为 partial: true,对应 UTF-8 字节被拆开的片段。

工具 JSON Schema 见仓库 docs/tool-schemas.json。

适用场景与注意

适合谁

  • 需要在智能体或流水线里预估中文、繁体、粤语内容的 API 成本或上下文长度;
  • 要在选型或迁移时对比 cl100k_base 与 o200k_base(或其它已支持 tokenizer)下的差异;
  • 希望用可复现 benchmark(npm run bench 与 Python tiktoken 基线 48 行对齐)核对 Node 实现,而非手算。

使用注意

  1. 插件以 当前 DSH 进程权限 启动 MCP 子进程(通常经 npx 拉取或运行 yue-token-cost)。安装前请自行查看 GitHub 仓库 源码与 MIT 许可证,确认符合你的合规与安全要求。
  2. 度量结果是确定性文本分析,不调用大模型推理;数字随 tokenizer 与测试集变化,README 与 BENCHMARK.md 底部说明了适用范围与诚实性说明,不宜把某一组比例当成普适常数。
  3. DSH 社区目录站点 SkillHub 插件页 与 DeepSeek / 幻方无官方从属关系,属于「一切皆插件」生态下的独立收录。

结尾

yue-token-cost 把「中文与粤语在 token 上多花了什么、为什么」从黑盒计数推进到可对比、可解释、可复现的 MCP 工具集;对按 token 计费的多书体产品,这是模型推理类插件里较直接的一环。

  • 目录页:https://www.skillhub.cn/plugins/Pugto-AI/yue-token-cost
  • 源码与文档:https://github.com/Pugto-AI/yue-token-cost
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜