# 用文言文跟 AI 交流，真的省 token 吗？

> 龙虾AGI通用实验室 · 2026-07-28

## 一个听起来很聪明的想法

网上流传过一种说法：既然大模型是按 token 收费的，那用文言文跟 AI 交流岂不是更划算？文言文惜字如金，同样的意思只要一半甚至三分之一的字数。字数少了，token 就少了，成本就低了。甚至有人更进一步，说让 AI 用文言文做思维链推理，整个推理过程的 token 消耗都会大幅降低。

这个想法乍一看非常有道理。但如果你读过上一篇文章《用中文问 AI 和用英文问 AI，效果一样吗？》，你应该已经隐约感觉到哪里不对了。

问题就出在那个关键的前提上：字数少了，token 就少了。

这个等式在现代汉语中大致成立（每个常用字通常是一个 token），但在文言文中就未必了。

· · ·

## BPE 不认识文言文

《用中文问 AI 和用英文问 AI，效果一样吗？》我们讲过，BPE 算法构建词表的逻辑是纯粹的频率统计：在训练语料中出现频次越高的字符组合，越有可能被收录为一个独立的 token。

训练语料是什么？是从互联网上爬取的海量文本。网页、新闻、社交媒体、论文、代码、书籍。这些文本的绝大部分是现代语言。文言文在其中的占比微乎其微。

这就导致了一个直接的后果：文言文中很多常用的字和词组，在 BPE 的统计视角下其实是"低频字符"。

比如文言虚词"矣""焉""兮""乎""哉""耳""尔"。这些字在文言文中几乎每句必用，但在现代文本中极少出现。BPE 在构建词表的时候，面对的是以现代文本为主的语料，这些字的频率太低，可能不会被分配独立的 token 位置。

如果一个字没有独立的 token 位置，会怎样？它会被拆成更底层的 UTF-8 字节。一个汉字在 UTF-8 中占 3 个字节，如果这 3 个字节也没有被合并成一个 token（因为这个组合在语料中出现太少），那一个字就变成了两到三个 token。

于是出现了一个讽刺的结果：你精心写了一句简洁的文言文，字数确实比现代汉语少了一半。但其中好几个文言虚词每个都被 tokenizer 拆成了两三个 token。省下来的字数，被 tokenizer 的低效编码吃回去了。最终的 token 数量可能跟现代汉语差不多，甚至更多。

· · ·

## 即使真的省了 token，也是赔本买卖

退一步说，假设某个 tokenizer 对文言文的编码效率还行，文言文确实比现代汉语省了一些 token。这个"省"值得吗？

不值得。因为你省掉的是 token 数量，但损失的是理解质量。

《用中文问 AI 和用英文问 AI，效果一样吗？》文章的核心论点是：模型的能力来自于训练数据中的统计模式。它见过多少某种语言模式的样本，就对这种模式理解多深。

现代中文在训练数据中有海量的样本。模型见过无数种现代中文的表达方式、句式结构、词语搭配，所以它对现代中文的"直觉"很强。

文言文的样本少得可怜。模型可能见过一些《论语》《史记》的片段，但总量跟现代中文完全不在一个量级。这意味着模型对文言文的 token 模式非常不熟悉。它对"虽慧然行不谨"这句话中每个 token 之间的关系，远不如对"虽然他很聪明但做事不够谨慎"这句话理解得准确。

更关键的是，文言文中很多字的含义跟现代汉语完全不同。"走"在文言文中是"跑"的意思，"去"是"离开"，"汤"是"热水"。模型在现代汉语语料中学到的关于这些字的上下文模式，会直接干扰它对文言文的理解。这不是简单的"不熟悉"，而是"学到了错误的关联"。

所以你省了一点 token 的成本，但得到了一个更差的回答。这笔账怎么算都亏。

· · ·

## "让 AI 用文言文思考"是一个更深层的误解

有人走得更远：不只是用文言文提问，还要求 AI 用文言文输出思维链（Chain of Thought）。理由是文言文更精炼，思维链更短，推理成本更低。

这个想法背后有一个对 AI"思考"方式的根本性误解。

人类用精炼的语言思考，效率可能确实更高。一个数学家用符号推导比用自然语言叙述更快更准确。但大模型的"思考"跟人类完全不同。

模型的思维链就是一串 token 序列。每生成一个 token，它都在做一次"根据前面所有 token 预测下一个 token"的计算。每一步预测的准确率，直接取决于它对当前 token 模式的熟悉程度。

如果你强制模型用文言文生成思维链，它每一步都在一个不熟悉的 token 模式下做预测。每一步的准确率都比用现代汉语或英文时稍微低一点。而思维链的特点是：误差会累积。第一步的微小偏差会影响第二步的预测，第二步的偏差影响第三步，链条越长，累积误差越大。

就像在走钢丝。如果你穿着习惯的鞋子走（用熟悉的语言），每一步都很稳，走十步二十步问题不大。但如果你换了一双从没穿过的鞋子（用不熟悉的语言），每一步都稍微晃一点，走到第十步的时候偏差已经很大了。

实际测试的结果也印证了这一点。在复杂推理任务上，让模型用英文做思维链通常效果最好，用现代中文次之，用文言文最差。排序跟训练数据中各语言的占比基本一致。

· · ·

## 那文言文的精炼风格完全没用吗？

有一种场景下，文言文的精炼思路是有价值的：当你需要在有限的上下文窗口中塞进大量背景信息的时候。

大模型的上下文窗口按 token 计算。如果你有一大段背景材料要放进提示词里，用更精炼的方式压缩它确实能腾出更多空间。

但这里有一个重要的前提：你的压缩方式必须使用模型能够良好理解的词汇和句式。

"列举三个方案，每个包含优劣分析"和"试列三策，各陈利弊"表达的意思一样，后者字数更少。但前者用的是模型极为熟悉的现代中文模式，后者用的是模型不太熟悉的文言句式。省了几个 token 的空间，但增加了模型理解出错的风险。

所以可行的做法是：借鉴文言文的精炼精神，但不要用文言文的实际词汇和语法。用现代中文的词汇，把句子写得简洁紧凑，去掉不必要的修饰和过渡。这样既能减少 token 数量，又不损失模型的理解准确率。

比如，与其写"我现在想要请你帮我分析一下以下这段文字中存在的主要问题，并且给出你的修改建议"，不如写"分析以下文字的问题并给出修改建议"。省了一半的 token，但每个词模型都非常熟悉，理解不会出偏差。

这才是真正有效的"省 token"策略：用模型最熟悉的语言，写最精炼的句子。不是换一种模型不熟悉的语言。

· · ·

## 回到那个根本性的认知

这个例子再次印证了《用中文问 AI 和用英文问 AI，效果一样吗？》文章的核心论点：你不能用人类对语言的直觉来推导模型层面的效率。

人类觉得文言文精炼，所以文言文"效率高"。但 BPE 算法不在乎精炼不精炼，它只在乎频率。模型也不在乎你的语言有多优美，它只在乎它在训练中对这种模式见过多少次。

Token 是统计的产物，不是语义的原子。这句话值得反复品味。它意味着，在 AI 的世界里，"好"的语言不是最精炼的语言，不是最优美的语言，而是在训练数据中出现最频繁的那种语言。

这个事实或许有些令人沮丧。但理解它，是避免被各种似是而非的"AI 使用技巧"误导的前提。

![](images/272c03/img_001.png)

我建了一个AI学习研究群，目前几十来人，都是在真正动手搞AI的人。如果你也在自己跑模型、写代码、做项目，或者使用Claude和Claude code，欢迎**点赞关注转发**一键三连，然后加我微信，备注写清"你在做的AI方向"，聊得来的话我拉你进群。纯围观的和小白就不加了，有一定门槛。当然你也可以简单粗暴的甩给我999元，我拉你进群，这个没门槛。

![](images/272c03/img_002.jpg)
