1. 为什么偏偏是文学:先拆掉"文学=没用"的偏见
1.1 文学不是文化装饰,而是高密度的语言信号矩阵
做模型训练的人都知道一句话:模型的能力上限,约等于数据质量的上限。预训练、微调、对齐,本质上都是把文本里的规律榨出来。那么问题来了,什么样的文本规律密度最高?我做了这几年模型训练,反复对比下来的结论是:文学,尤其是叙事类文学,可能是综合性价比最高的训练语料。
原因在数据形态上就很明显。文学作品天然具备高词汇多样性、句式复杂度和修辞结构密度。一篇普通的新闻报道,用词可能集中在几百个高频词里,句式也高度模板化。而一部小说,光是描写一个场景就可能用到大量生僻形容词、复杂从句、隐喻、反讽、多义消歧。这些东西不是"文采"那么简单,它们代表的是语言分布的多样性。
从token分布的角度理解更直白:大模型核心做的事,是预测下一个词的概率。如果训练语料的词汇分布过于集中,模型对低频词、罕见表达、长尾语法结构的建模能力就会很弱。文学语料恰恰把这些长尾补齐了。我用过一个基于六千万token的文学语料库做实验,单独拿这个库做增量预训练,模型的困惑度下降速度比用同等体量的新闻语料快不少。
注意:这里说的文学语料,不是指随便抓一堆小说网站数据。真正有效的文学语料需要满足"高文学性"标准——有成熟的语言结构、有完整的情节逻辑、有丰富的描写层次。网文和经典文学在训练价值上的差距,比很多人想象的大得多。
文学还有一个被忽视的优势:它是"带情绪的语言样本"。模型要理解"愤怒""讽刺""悲伤",不能只靠情感词典,要在真实的语境里体会表达方式。小说里一个人物生气时怎么说话、叙述者怎么描述、前后文怎么铺垫,这些都是情感建模的第一手数据。
1.2 除了语言,文学还承载了一套隐性世界模型
很多时候我们觉得模型"懂常识",但这个常识从哪来?其实是训练数据里隐含描述出来的。官方文档只告诉你"服务器要重启",不会告诉你"机房断电之后运维工程师会慌,先看告警日志再打电话"。而文学会把这类真实世界的运行规则写进故事里。
道理很简单:文学叙事的基础是因果链。人物做了A,导致B,然后引发C。模型在大量小说文本里反复"看到"这种因果句式之后,会逐渐习得一种预测逻辑——不是形式逻辑,是现实世界事件发展的概率逻辑。这在阅读理解、推理任务里的价值,是纯知识类语料给不了的。
举一个我实测过的例子。我给模型喂了一批推理小说和悬疑小说,然后跑了一套需要常识推理的测试集。结果在涉及"作案动机推理""人物关系判断"这类任务上,成绩比之前用纯新闻+百科语料训练的基线模型提高了不少。原因很好理解:推理小说本身就是一段被精心设计的逻辑链,而优秀的推理小说会把关键线索隐藏在看似无关的细节里。模型读到足够多的"伏笔—回收"结构之后,对文本中隐性信息的敏感度会明显提升。
1.3 文学与逻辑推理:绕不开的隐性逻辑训练场
有人可能会反驳:逻辑推理不是应该靠代码、数学语料吗?这个观点方向没错,但只说对了一半。代码和数学给模型的是"显式逻辑规则",而文学给的是"隐式逻辑推断"。
举个例子:"听到脚步声,他匆匆合上日记本,塞进抽屉底层,抬头露出微笑。"这一句话里包含多个推理点:声音意味着有人靠近、日记本需要藏起来说明内容敏感、微笑是为了掩饰。模型如果能从这类句子中推断出未明说的信息,它的"推理能力"就不仅仅是覆盖符号逻辑,而是进入了"语用推理"的层面。
我在实际训练中看到的现象是:纯代码语料训练出来的模型,在数学题上很强,但遇到"阅读理解里的人物观点推断"就崩了;加入文学语料之后,这类问题提升明显。跨任务迁移也出现了——模型在对话任务里更擅长捕捉用户的言外之意。这说明语用推理能力确实可以跨领域迁移,文学就是最好的语用推理语料。
2. 文学数据在大模型训练中的角色定位
2.1 预训练阶段:文学是语言底座的核心燃料
预训练阶段的目标不是学特定任务,而是建立语言模型本身。这个阶段最需要的是"高熵、高多样性、结构复杂度高"的文本。文学恰好在这几个维度上全面占优。
如果把预训练语料比作盖房子的地基,那文学就是钢筋。代码是砖块,整齐但彼此之间结构单一;百科是水泥,密实但缺乏弹性;文学则是伸展开的钢筋网,把语言的各种可能性都兜住了。模型在这层网上面才能撑起各种下游任务。
在实操层面,我建议把文学语料的占比控制在总预训练语料的8%到15%之间。低于8%,语言底座会偏"工具性",太干瘪;高于15%,可能会稀释知识密度,导致模型在事实类问答上变弱。具体配比见后面第三节的表格,但这组数字我测了很多遍,是比较稳的区间。
有一个技术细节值得注意:文学语料对上下文窗口的要求更高。因为文学作品的主题和线索经常跨越很长篇幅,如果训练时把每本书截断成孤立的80token片段,文学的价值就废掉了。理想做法是至少保留1024token以上的连续片段,让模型能学到跨段落的前后照应关系。这也是为什么文学训练对显存和训练框架的要求会更高一点。
2.2 指令微调阶段:文学是"话术表达"的校准器
到了指令微调阶段,很多团队会遇到一个很尴尬的问题:模型知道怎么写代码,但生成的文本干巴巴的,像说明书一样冷冰冰。原因就是微调语料里文学性表达太少,模型没见过"有温度的语言长什么样"。
指令微调的本质,是让模型学会"按指令的要求调整输出格式和风格"。如果指令数据里本身就缺乏风格多样性,那模型自然只会一种腔调。而文学语料能提供的不仅仅是语法正确,而是"选择的多样性"——同样一句话,如何写出紧张感、幽默感、庄重感。
我自己常用的做法是:在指令微调数据里加入一批"改写型"样本。比如把一段科普文字交给模型,要求它"用悬疑小说的口吻重新表达"。这类样本能让模型学会在保持信息完整的前提下,灵活切换语气和结构。实测下来,用这个方法微调过的模型,在商业文案生成、产品介绍、客服回复这些场景里,表达质量提升非常明显。
实操心得:文学类指令样本不要只追求"辞藻华丽",关键要追求"结构变化"。今天用倒叙,明天用第一人称,后天用多线叙事。模型见得越多,组合能力越强。训练出来的效果不是"爱掉书袋",而是"表达方式灵活多变"。
2.3 对齐与偏好阶段:文学塑造模型的"分寸感"
做RLHF或DPO的时候,核心工作之一是构造偏好对——同一个问题,给模型两个答案,一个更好,一个更差。很多人只关注"事实正确性",却忽略了"表达的得体性"。
得体性怎么定义?光靠规则写不出来,靠人工打标又缺乏统一标准。而文学训练天然提供了一个参考答案:经典文学里全是"在什么场合、对什么人、用什么语气说话"的典范。比如管家对主人的语气、下级对上级的措辞、朋友之间的随意调侃。这些话语粒度的分寸感,是偏好标注时最好的参照系。
我在构建偏好数据时做过一个测试:两组标注员分别用"事实标准"和"文学感官标准"去评价AI回答,结果文学感官标准的一致性要高出一截。原因是纯事实标准在"都正确但风格不同"的题上很难判定,而文学感官标准带了审美维度,判断起来反而更明确。
对齐阶段用文学数据还有一个附加好处:安全性和价值取向。经典文学大量探讨正义、牺牲、合作、责任,这些内容在对齐阶段能给模型提供符合社会公序良俗的表达范本,让模型在价值取向上更"有温度",而不是简单套用冷冰冰的规则。
3. 实操:用文学数据训练中小模型的可复现路线
3.1 数据采集与清洗的四个硬性要点
先声明:这条路更适合10亿参数以下的中小模型,或者作为大模型某个能力域的增量数据。全量预训练千亿模型的话,文学数据量大得多,但下面这些原则仍然适用。
第一步是数据获取。优先考虑公版书和已授权语料。像古典文学名著、公版外文译本,这些没有版权风险,质量也高。网络文学要格外谨慎,别直接抓全本,可以先做内容评价,只保留语言结构和情节设计比较成熟的部分。
第二步是质量过滤。文学作品里也有大量劣质内容。低质量网文里的重复描写、无意义水字数,不仅没用,还会把模型的表达水平拉低。可以用困惑度做初筛:用一个小模型计算每段文字的困惑度,明显偏离正常文学分布的段落直接扔掉。
第三步是去重。这个坑我踩过。同一个故事在公版书网站上可能有十几种电子版,直接拿来训会导致模型在相似内容上过拟合。建议做两层去重:先做全文MinHash去重,再做语义向量去重。后者能把"同一情节不同表达"的重复也干掉。
第四步是清理目录与毒噪。TXT电子书经常带"目录""第一章.....1"这类文本,如果不去掉,模型会学到"大量重复行后接正文"的奇怪模式,严重干扰生成质量。这个坑在文学数据里特别常见,因为目录格式五花八门,正则清洗至少要跑两轮。
3.2 数据配比与混合策略参考
下面这组配比是我实测过比较稳的基线,具体数值可以按模型用途调:
| 语料类型 | 建议占比 | 作用 |
|---|---|---|
| 通用网页/百科语料 | 50% | 保证知识广度和事实密度 |
| 代码/结构化数据 | 15% | 强化逻辑与符号推理 |
| 文学语料(小说/散文/诗歌) | 15% | 提升语言多样性、语用推理、长文本能力 |
| 学术/技术文档 | 10% | 增强专业术语和专业表达 |
| 对话/指令数据 | 10% | 保证交互能力下限 |
文学占比15%看起来不高,但对语言质量的影响几乎是决定性的。低于8%,模型的表达开始"发干";高于20%,知识性问答就会开始"跑偏",感觉什么都知道一点,但什么都说不到点子上。
还有一个细节:文学和代码的比例最好不要一边倒。代码语料稀缺的环境里,有人会去压缩文学比例补代码,但实测发现,文学降太多,模型在中文长文本生成上的连贯性会塌得很明显。代码训练的是"局部逻辑",文学训练的才是"全局叙事"。两种能力缺哪个都不行。
3.3 训练策略与关键参数参考
文学语料的加入,会影响几个核心训练参数的选择,这里给一组可以直接用的参考值:
- 上下文长度:至少2048,推荐4096。理由前面提过,文学线索经常跨长距离,短窗口会破坏长程依赖学习。
- 学习率调度:文学语料占比高的阶段,建议降低峰值学习率。因为文学文本的token分布更"平滑",学习率过高容易在初期震荡。我惯用做法是预热阶段从基础学习率的0.1倍开始,花10%步数爬升到峰值。
- 采样权重:如果训练中途才加入文学数据,建议做数据混合而不是一次性灌入。我通常把文学语料按每500步动态调剂比例,让模型逐步适应文学风格,避免loss突然飙升。
- tokenizer词表:如果词汇表是纯基于新闻或代码语料构建的,建议扩一批文学高频词进来。很多古典文学词汇在原始词表里的覆盖度不足,扩完词表之后,训练loss会肉眼可见地下降。
这些参数没有绝对标准,但逻辑是共通的:文学数据改变了语料分布,训练节奏必须跟着调整。不做调整硬怼,loss曲线会出现平台期,模型后期提升极其缓慢。
3.4 别只看benchmark,要会听模型的"语气"
评估文学数据训练效果,常规跑benchmark当然要做,但要想看出文学的作用,必须加几道"文学视角"的题:
第一,续写测试。给模型一段小说的开头,让它续写下1000字。重点看三件事:能不能延续前文风格、有没有引入矛盾要素、句子之间的衔接是否流畅。
第二,文体转换。让模型把一段说明书改写成武侠风,再把一段武侠对话改写成新闻通稿。这个任务能直接测出模型对"语气迁移"的掌握程度。
第三,长文本伏笔回收。给模型一篇3000字的短文,前文埋一个细节,结尾要求它用上这个细节。文学数据训练不足的模型,很容易忘掉前文细节;训练充足之后,跨段召回能力提升非常明显。
第四,人物关系推断。给一段对话,让模型推断说话人之间的身份关系、情绪状态和潜在意图。这类测试恰恰是文学数据最具优势的地方。
我个人的评测习惯是:自动指标用ROUGE和BERTScore做初筛,但最终拍板一定靠人看。AI生成的文本没有"现场阅读感"的时候,哪怕分数再高也没什么用。
4. 常见问题与避坑实录
4.1 模型变得"过于文艺"怎么办
进了文学数据之后,模型生成的代码注释可能都会变成"这段代码在夜幕中默默守候数据的回流"——这确实是个烦人的问题。但我的判断是:这不教训,是配比抽风了。
解决思路很简单,把文学数据占比调下来,同时加大指令微调阶段的"风格约束"数据量。比如专门做一批"用户要求客观中立时,禁止使用修辞"的样本,用对比方式让模型学会按指令切换风格。实测下来,模型很快就能学会"你要求什么风格我就给什么风格",而不是默认输出文学腔。
4.2 版权风险与合规排查
文学语料的版权问题比技术文档严重得多。现代畅销书直接喂给模型,训练完再生成近似内容,风险极高。我的做法是三层过滤:
第一层,只保留公版书和明确授权的语料。第二层,如果确实需要某些现代文本的特性,只提取文本结构特征而不保留原文。比如分析其叙事节奏和段落分配,生成一批"风格模仿但内容全新"的合成文学数据。第三层,训练完成后做抽取测试——用模型生成内容去和原始语料做相似度比对,超过阈值的样本全部丢弃。
这个流程麻烦但必须做。合规问题看起来离技术很远,一旦出事,整个项目都要叫停。宁可数据量少一些,也不能留隐患。
4.3 重复与相似文本污染
公版文学网站上同一个《红楼梦》可能有几十个版本,来自不同OCR和校对来源。直接去重后可能还剩很多相似变体。这个坑的隐蔽性在于:MinHash去重之后"看起来"都不同了,但在语义层面上它们还是同一本书。
我额外的做法是用一个小的embedding模型,把所有段落向量化,然后做聚类。同一个簇里的段落,只保留质量得分最高的那几个。这个步骤能显著降低模型的复读概率。做完这步后,模型在长文本生成里的重复率下降很明显。
4.4 "知识偏移":文学占比过高导致事实密度下降
这是一个经典的两难:文学加多了,模型表达好了,但"中国有多少个省份"这类问题开始答不准。原因很简单——文学语料里不包含密集的事实陈述,模型对事实的表征权重被稀释了。
应对方式是在训练中加入知识语料的"过采样"机制。具体做法是把百科和知识类语料以更高的采样权重与文学语料混合,让两者在训练中交替出现。我实测过的最佳配比是:知识与文学按3:1混合作一个batch交替送入。这样模型的表达能力和事实密度能同时保住。
5. 一点私货:文学不是万能药,但它是重要的底座
写了这么多,我还是想回到标题那句话。文学为什么可能是训练大模型最好的方法?不是因为文学让模型"更有文采"这种表面理由,而是因为文学提供了一个完整的、有温度的、高度结构化的语言世界。模型在这个世界里学会的不只是词语搭配,还有因果、动机、铺垫、分寸、言外之意,再加上对长文本的全局把控能力。
这些能力,单靠百科、代码、对话数据都给不了。百科给知识,代码给逻辑,对话给交互,但只有文学能把这些东西放进一个"连续的人类世界图景"里,让模型不只是知道,还"感知"到语言背后的意图与情感流动。
在实际项目的多次对比中,文学数据训练过的模型,有一个共通特质:即使没有专门指令,它也会自动把"符合人类阅读习惯"作为输出目标。这种能力不是通过任务指标体现出来的,而是在真实用户使用中能被感知到的差异——可能是更自然的转折,可能是更准确的分寸,可能是在长对话里不忘前文的踏实感。
这不是说别的数据不重要。数学靠代码和数学语料,事实问答靠知识库,专业领域靠行业文档。但文学做的是那个"画底稿"的角色。底稿画得好,后面精修才有意义;底稿画得糙,后面怎么补都觉得生硬。
如果说还有什么建议要留给大家,那就是别迷信单一数据源。文学数据很好,但它最好用的方式是跟其他数据按比例搭配,而不是全家桶式猛灌。我自己踩过最深的坑,就是一开始觉得"文学越纯越好",结果模型表达虽然好了,但任务能力全面退化。后来把配比调到合理区间,两者才真正兼顾。
这次的经验总结下来其实就一句:文学数据该加,而且要重视,但它解决的是语言的"地基"问题,不是"上层功能"问题。先把地基打好,再谈别的,是在我看来大模型训练里最划算的投入。