YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
rewrite3-exp-4B
实验版存档(exp):本仓库是 rewrite3 正式版发布前的实验批次,正式版即将发布、效果有明显提升,建议优先使用正式版。本版保留原样,供对照、复现和旧项目兼容用,后续不再更新。
这是 rewrite 系列的第三代模型。它干的活儿,是把 AIGC 写出来的网文改得像人写的:原意不动,语言重新组织,把那种一眼假的八股味尽量去掉。你给它一段带标记的原文,它先逐句分析哪里不对劲、打算怎么改,然后给出改写后的整篇正文。
为什么做这个?现在网文行业里 AI 生成、AI 改写的稿子太多了,句式套路、解释性废话、排比堆砌、情绪过力,读起来就是"不像人写的"。让作者从头改一遍太累,不如让模型先过一遍,把语言掰回接近人类写作的水平,作者再花小力气微调。
和上一代最大的不同是思维链(CoT)。模型不是直接吐改写结果,而是先像编辑一样看稿:哪句是八股、这句的"烂完程度"是多少、为什么、准备怎么动刀,分析完了才动笔。CoT 是训练出来的,不是外挂提示词。
数据是怎么做的
底座是 20000 条人类优秀网文原作(sfw 和 nsfw 都有),来源是各平台口碑不错的作品。
然后我们总结了 100 多种 AI 八股——句式、节奏、语气、意象、过渡、解释癖这些层面的套路。用 deepseek v4.1 flash 1017 按这些八股风格,把好文"劣化"成对应的 AIGC 稿,这样就有了成对的(好文,劣化文)样本。
光有成对文本还不够,模型得知道每句话有多烂。于是用 jevnovel3 27B 教师模型对劣化文本逐句打分,得到每句"烂完了"的概率。
最后用 gemini 4 argon 把劣化文、具体八股类型、jevnovel 分数、好文这几样东西串起来,建立一条分析链路:为什么这句烂、烂在哪、分数说明什么、好文会怎么写。这些 CoT 和改写结果一起拿来训练。
所以模型学到的有两件事:一是记住各种八股长什么样;二是学会结合 jevnovel 的分数做判断,知道什么时候该大刀阔斧。
exp 是什么意思
这批模型叫 exp,意思是"实验版"——它是 rewrite3 正式版发布之前的实验批次,打完就定格,后续不再更新。
实验版的任务定义是"缩短档":同一个故事,人类原作普遍比 AI 劣化文本短,信息密度却高得多。AIGC 注水是常态,一句话能说清的事能写成三句。所以这一版的输出字数一定比输入少——训练目标就是把正文压到原文的 0.4 到 1.0 倍,中位数在 0.7 左右。这不是模型偷懒或截断,是任务定义如此。要保留原文长度,本版做不到。
正式的 rewrite3 版本即将发布,效果有明显提升,命名与发布形式以正式版为准。
怎么用
直接整段贴进去就行,不需要切分。 上一代 rewrite2-4b 没 CoT,长度泛化比较差,得先把原文切块再逐块喂;rewrite3-exp 有了 CoT,泛化好很多,几千字直接丢进去也能改得不错(当然特别长的稿子,分段处理效果会更稳)。
输入格式:原文照抄,在每句末尾插一个 jevnovel 分数,写成【0.04】这种形式。没有分数就写【NA】。
为什么一定要有分数?jevnovel 的定位是定点狙杀——专抓那种极致八股的句子。带分数的时候,模型看到高分就知道这句子必须狠狠改,下刀更果断;如果全是【NA】,它判断不了严重程度,往往会觉得"这句也还行",下手就轻了。所以能用 jevnovel 先把分打出来,效果明显更好。
jevnovel 用 0.8B 的版本就够:aikexue170/jev-novel-3-0.8b-fp8。它做"给这句打烂完概率"这件事已经做得很好,没必要为了极致精度上更大的模型,性价比不划算。
输出怎么解析:模型先输出分析,再输出正文,中间用 </think> 分隔。用 llama.cpp server 的话,reasoning_content 字段是分析部分,content 字段是改写后的正文。自己接 API 的话,按 </think> 切一刀即可,前面是分析,后面是正文。
推荐采样参数:temperature=0.9, top_p=0.95, repetition_penalty=1.05, max_tokens=6144。注意 CoT 经常写到三四千 token,max_tokens 给小了会只有分析没有正文。
模型基座是 Qwen3.5-4B,LoRA SFT 后合并;另外单独训练了一个 MTP 头做投机解码加速,已经内嵌在权重里(teacher-forced top1 72.8%,accept_proxy 83.7%)。低端卡上开 speculative decoding 能快不少。
本目录
本目录是 ModelOpt FP8 W8A8 量化权重,单文件。MTP 头保持 bf16、不参与量化(配置的 ignore 里已经排除了 mtp.*),所以 MTP 加速照样能用。
启动方式:
# 需要 vLLM >= 0.28(支持 Qwen3.5 的 MTP 投机解码)
vllm serve . \
--served-model-name rewrite3-exp-4B \
--speculative-config '{"method":"mtp","num_speculative_tokens":2}' \
--max-model-len 32768 --gpu-memory-utilization 0.85
目录里还有 INSTRUCTION.txt(输入时要拼在最前面的任务指令)、samples_autotavern.jsonl(3 条 autotavern 真实案例的改写结果,方便看效果)、SHA256SUMS(校验和)。
权重遵循 Qwen3.5 基座的许可。
- Downloads last month
- 55