AI-Writer 中文使用教程
2026-07-16发表于
Python一、项目速览
入门 · 1 分钟版
AI-Writer 是一个基于 RWKV 模型的中文网文生成工具,专门用来写玄幻、言情等类型的小说。它的核心思路很简单:每次只看你写的最后 512 个字,然后预测下一个字该写什么,一个字一个字地续写下去。
它解决什么问题?如果你写小说时经常卡文、想快速生成一段过渡情节或不同风格的测试文本,这个工具可以帮你自动续写 100 到 9999999 个字(不过太长容易循环)。它不需要联网,本地跑,隐私性好。
谁最该用?网文爱好者、AI 写作尝鲜者、想低成本体验中文 GPT 类模型但不想折腾大模型部署的开发者。注意,它的训练数据全部来自网文,生成的文字“缺乏生活常识”,仅供娱乐参考。
作者视角:这个项目目前已经“过时”——作者自己标注了,推荐去用新版 RWKV-Runner 或网页在线版。但作为学习 RWKV 模型原理、理解“小模型 + 特殊采样”如何生成流畅中文的案例,它依然有价值。如果你只是想要一个简单能跑的工具,直接去 Modelscope 在线版更快。
二、核心功能与架构
进阶 · 推荐细读
AI-Writer 的功能可以拆成三个层次:命令行续写、网页界面、模型切换。
命令行续写(run.py)是最基础的用法。你给一段开头文字,程序会基于当前模型(玄幻或言情)逐字生成后续内容。每次生成的长度由 LENGTH_OF_EACH 控制,默认值可以在代码里改。生成过程是实时的,你可以看到每个字被“猜”出来的过程。
网页界面(server.py + web-client/index.html)是更友好的交互方式。启动服务后,打开浏览器就能看到一个文本框,输入开头,点击生成,结果会流式输出。这个界面适合不习惯命令行的用户。

模型切换是核心操作。项目提供了两个预训练模型:玄幻模型和言情模型。你需要在 run.py 或 server.py 里手动修改配置来切换。模型文件从 Release 下载后解压到 model 目录,程序启动时自动加载。
架构上,AI-Writer 的工作流程是:
1. 读取你输入的文本,截取最后 512 个字(ctx_len 参数)。
2. 将这段文字输入 RWKV 模型,模型输出每个候选字的概率分布。
3. 使用特殊采样方法(参考知乎专栏)从概率分布中选一个字,避免小模型常见的重复和死循环。
4. 将生成的字追加到文本末尾,重复步骤 1。

作者视角:这里的“特殊采样方法”是项目的亮点。小模型(参数少)直接按概率最高选字容易写出死循环(比如“我我我我我”)。作者用了类似 Top-p 采样的变体,加上温度调节,让生成结果更“有创意”。如果你自己改模型,这个采样逻辑值得研究。
一句话判断:如果你只是想体验 AI 写小说,网页在线版更快;如果你想理解 RWKV 模型的部署和采样原理,这个项目是很好的动手教材。
三、动手实践
入门
环境准备
假设你有一台 Windows 电脑(N 卡),以下是标准安装步骤。其他系统请参考 README 里的对应说明。
第一步:安装 Python 和依赖
# 推荐 Python 3.8.x
# 安装 PyTorch(CUDA 11.1 版本)
pip install torch==1.9.1+cu111 -f https://download.pytorch.org/whl/torch_stable.html
# 安装其他依赖
pip install numpy
第二步:下载模型
从 Release 页面下载 N 卡模型(文件名类似 model-novel-xxx.zip),解压到项目根目录下的 model 文件夹。最终目录结构应该是:
AI-Writer/
├── model/
│ ├── novel_model.pth
│ └── ... (其他模型文件)
├── run.py
├── server.py
└── web-client/
第三步:运行续写
# 命令行模式
python run.py
# 或者网页模式(先启动服务)
python server.py
# 然后用 Chrome 打开 web-client/index.html
最小可运行示例
启动 run.py 后,你会看到类似这样的交互:
请输入开头文字(建议 50 字以上):
> 林风睁开眼,发现自己躺在一个陌生的山洞里。记忆的最后,是那道毁天灭地的雷劫。
程序会自动续写。默认每次生成 200 字左右(取决于 LENGTH_OF_EACH)。你可以连续输入多次,每次都会基于最新的文本继续生成。
如果你想改生成长度,编辑 run.py,找到 LENGTH_OF_EACH = 200,改成你想要的数字(比如 500)。
常见踩坑
坑 1:模型文件路径错误
报错 no such file or directory: 'model/xxx'。原因是模型没解压到正确位置,或者你在命令行里没有先 cd 到项目目录。解决:确认 model 文件夹在 run.py 同级目录下。
坑 2:PyTorch 版本不对
报错 module 'torch' has no attribute 'tile'。这是因为 PyTorch 版本低于 1.9。卸载重装:
pip uninstall torch
pip install torch==1.9.1+cu111 -f https://download.pytorch.org/whl/torch_stable.html
坑 3:生成内容重复或死循环
这是小模型的通病。可以尝试调低 TEMPERATURE 参数(在 run.py 里找,默认 1.0,改到 0.8 试试),或减少 LENGTH_OF_EACH。如果还不行,说明当前输入的开头太短或太模糊,给一段更长的开头(100 字以上)会好很多。
四、进阶玩法
深入 · 老手可选
如果你不满足于默认的玄幻/言情模型,想自己调整生成风格,可以修改采样参数。在 run.py 里找到以下代码段:
# 采样参数调整
TEMPERATURE = 1.0 # 温度,越高越随机,越低越保守
TOP_P = 0.9 # Top-p 采样,只从累计概率前 90% 的字里选
REPETITION_PENALTY = 1.1 # 重复惩罚,值越大越避免重复
调参实战:
- 如果你发现生成内容太“平”没有惊喜,把
TEMPERATURE提高到 1.2,同时把TOP_P降到 0.85,让模型在更小的候选集里随机选字。 - 如果生成内容频繁出现重复短语(比如连续两段开头都是“他说道”),把
REPETITION_PENALTY提高到 1.3,模型会避免重复使用最近出现过的字。 - 如果想生成更长的连贯段落,把
LENGTH_OF_EACH设到 1000,但注意超过 2000 字后模型容易跑偏,建议分段生成。
另一个进阶玩法是切换模型。虽然项目只提供了两个预训练模型,但你可以自己用 RWKV-LM 训练一个特定风格的模型(比如“修仙+科幻”混合风格)。训练后的模型文件只要命名一致,放到 model 目录就能用。训练教程参考 README 里的知乎专栏链接。

作者视角:调参时最容易被忽略的是
ctx_len(记忆长度)。默认 512 字,如果你生成的内容需要更长上下文(比如写长篇小说),可以尝试改到 768,但速度会明显变慢(显存需求也增加)。我的建议是:先用 512 跑通,确认效果后再决定是否增加。
五、判断与建议
进阶 · 推荐细读
什么场景下应该选 AI-Writer:
- 你想在本地离线生成中文网文,不想依赖云 API(隐私性高)。
- 你有 N 卡(哪怕是 940MX 这种低端卡),想体验 GPU 加速的 AI 写作。
- 你想学习 RWKV 模型的部署和采样原理,作为入门案例。
什么场景下不该选它:
- 你只需要快速生成一段文字看看效果 → 直接去 Modelscope 在线版 或 RWKV-Runner(有更强的 1.5B/3B/7B 模型)。
- 你需要写严肃文学、新闻稿或商业文案 → 模型训练数据全是网文,生成内容“缺乏生活常识”,不适合正式用途。
- 你没有 GPU 且不想折腾 CPU 版 → 纯 CPU 模式在普通笔记本上生成速度很慢(每分钟几十字),体验较差。
一句话结论:AI-Writer 是一个“过时但仍有学习价值”的项目。如果你想快速出活,用新版工具;如果你想理解 RWKV 模型如何落地、如何调参,这个简化版代码库是最好的教材。
项目信息
| 项目 | 值 |
|---|---|
| 仓库 | BlinkDL/AI-Writer |
| 语言 | Python |
| Star | 3,791 |
| Fork | 568 |
| 主页 | 无 |
参考链接
63
37
1
860
文章目录
评论