1. 项目概述:当LLM遇上文言文压缩
去年在调试一个中文LLM时,我偶然发现模型对文言文的压缩率异常出色。同样语义的内容,文言文所需的token数量往往只有现代汉语的30%-50%。这个现象引发了我的思考:能否专门训练一个擅长文言文压缩的LLM架构?
经过三个月的实验,我们开发出一套融合了古汉语特征提取、动态token分配和语义蒸馏的混合架构。在测试集上,该模型将《红楼梦》现代汉语译本压缩为文言文时,token消耗量降低57%,而语义保留度达到BERTScore 0.91。更令人意外的是,这种架构在代码压缩任务中也展现出优势——Python代码的token压缩率达到42%,且保持可执行性。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心架构设计思路
2.1 文言文特征编码器
传统LLM的tokenizer对文言文处理存在明显缺陷。我们基于《四库全书》语料训练了专用分词器,关键改进包括:
- 单字优先策略:文言文中单字成词比例达68%(现代汉语仅12%),因此将汉字unicode编码直接作为基础token
- 高频词组保留:对"之乎者也"等高频虚词组合保留为特殊token
- 上下文敏感拆分:通过BiLSTM预判分词边界,避免"故不积跬步"被误拆为"故/不积/跬步"
python复制# 示例:自定义tokenizer加载
from tokenizers import Tokenizer
classical_tokenizer = Tokenizer.from_file("classical-chinese.json")
2.2 动态token分配算法
核心创新点在于引入token成本感知机制:
- 熵值权重:根据香农熵计算每个token的信息密度
- 长度惩罚:对长token施加指数衰减权重
- 动态路由:在FFN层前增加路由网络,决定使用全精度(16bit)还是压缩(8bit)表示
重要发现:文言文中"曰"字的熵值权重是现代汉语"说"的3.2倍,这解释了为何文言文更"省token"
2.3 语义蒸馏损失函数
为避免过度压缩导致语义丢失,设计了三重损失:
- 表层损失:字词级别的交叉熵
- 语法损失:基于依存句法树的编辑距离
- **典故损失
