Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

352 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

青幕AI写作 Logo

青幕AI写作(QMAI)

面向长篇小说的记忆型 AI 写作桌面系统

Release Version Platform License


image

软件概述

青幕AI写作不是普通的 AI 聊天写作工具。它是一套长篇小说记忆型写作系统,专为 200 万~300 万字量级的连载小说创作设计。

核心理念:

写前自动提取上下文 → 写后自动沉淀章节记忆 → 图谱追踪关系变化 → 审查系统防止崩坏 → 人工确认最终定稿

普通 AI 写作工具的问题在于:写到后期 AI 会遗忘前文、人物性格不一致、时间线混乱、伏笔丢失。青幕AI写作通过结构化记忆系统和混合检索引擎,让 AI 在每次生成时都能"记住"之前的一切。

适用场景:

  • 网文日更作者:保持长篇连载质量、防止人设崩坏
  • 小说策划者:管理世界观、势力关系、多线剧情
  • AI 辅助写作者:让大模型在长篇创作中持续可用
  • 学习仿写者:通过拆书库拆解成熟作品的角色设定与文风

image image

核心功能

📚 记忆系统

记忆系统是青幕AI写作的核心引擎。每章正式保存后,系统会自动执行章节摄取,将正文内容结构化为可检索、可追踪、可复用的记忆单元。

章节摄取提取的内容:

  • 章节摘要与结尾钩子
  • 出场人物、地点、组织、物品
  • 关键事件与状态变化
  • 人物关系变化与角色认知变化
  • 伏笔新增 / 推进 / 回收
  • 时间线事件
  • 图谱节点与关系边

上下文引擎(写作前自动触发):

每次调用 LLM 写作前,系统自动生成上下文包,按优先级组装:

用户明确指定 > 当前章节细纲 > 上一章结尾 > Canon 正史规则
> 当前人物状态 > 伏笔状态 > 最近章节摘要 > 最近章节正文片段 > 图谱关系
> 向量搜索结果 > 关键词搜索结果

上下文包有 token 预算控制,自动在保证关键信息不遗漏的前提下裁剪内容;发送前还会按当前模型的真实输入上限再次裁剪并重试,避免长章节历史超出接口限制。

混合检索策略:

  • 最近章节窗口:直接获取最近 N 章的正文片段(长章节同时保留开头与结尾)+ 摘要
  • 关键词搜索:BM25 风格的精确匹配
  • 向量搜索:语义级别的相似内容检索
  • 图谱搜索:沿关系边扩展相关节点
  • Canon 规则:强制注入的不可违背设定

数据存储方式:

所有记忆数据以项目目录形式本地存储,章节正文保存为 Markdown,快照与状态保存为 JSON。支持导出、备份和索引重建。


image

🎭 角色灵魂系统

角色灵魂系统由两个层面组成:项目灵魂角色视角(NvwaSKILL)

项目灵魂(Soul Doc):

每个小说项目可配置独立的写作灵魂文档,定义整部小说的气质基调:

  • 叙事气质(沉浸、克制、轻松等)
  • 语言风格(口语感、文学感等)
  • 节奏控制规则
  • 对话规则与心理描写规则
  • 冲突写法与感情线规则
  • 禁区列表(禁止空泛抒情、禁止所有人物同一说话方式等)

灵魂文档在每次章节生成时自动注入 LLM 提示词,确保全书风格统一。 image

角色视角(NvwaSKILL):

基于 SKILL 框架的角色个性化系统。每个角色视角包含:

  • 角色档案与核心设定
  • 表达 DNA(说话习惯、用词偏好、句式特征)
  • 思维模式与决策风格
  • 对话历史与观点参考
  • 时间线与关键事件
  • 动机、行为模式与代表性台词

系统内置数十个预设角色视角范例(从费曼到鲁迅、从孙悟空到王阳明),用户可参照创建自己小说中的角色模版。也可以通过拆书库从已有作品中提取角色,一键加入自定义灵魂库。

角色认知系统:

追踪每个角色在每个时间节点"知道什么"和"不知道什么":

  • knows:角色已知信息
  • does_not_know:角色未知信息
  • reader_knows_but_character_does_not:读者知道但角色不知道的信息(信息差)

这防止了 AI 写作中最常见的错误——让角色知道了不该知道的信息。


📖 拆书库(作品分析)

拆书库是青幕AI写作的特色功能,让你能够拆解成熟作品的写作秘密,并将其复用到自己的创作中。

拆书工作流:

  1. 导入小说作品(支持整本/多文件/章节范围选择)
  2. 章节自动切分,LLM 精准识别真实出场角色(不再用正则抽取无效候选名)
  3. 一键提取角色 Skill:6 维度人格分析(公开资料 / 说话风格 / 表达 DNA / 外界看法 / 决策模式 / 时间线)
  4. 一键提取作品文风:9 维度文风指标 + 风格宪法 + 原文代表样本
  5. 将角色 Skill 加入自定义灵魂库,或将文风绑定为当前小说的风格约束

作品文风提取(9 维度):

维度 说明
文风宪法 8-12 条带理由的硬性写作规则
叙事视角 第几人称、视角切换规则
对话风格 口语化程度、台词密度
描写密度 环境/动作/心理描写的比重
节奏控制 张弛节奏、信息投放速度
情感处理 含蓄外露程度、共情强度
用词偏好 书面/口语、长短句倾向
段落结构 段落长度、过渡方式
代表样本 多段原文片段佐证分析

启用文风约束后,每次生成章节时会自动注入文风预设,保障全书风格统一。

拆书库特性:

  • 支持重新提取角色 / 重新提取文风
  • 后台运行:深度提取可后台执行,右下角浮层显示进度,完成后一键跳转结果
  • 别名匹配:角色光环支持拼音模糊匹配和简繁转换,昵称也能命中角色设定

🔍 审查系统

审查系统提供多维度的章节质量把控,分为 AI 审稿连贯性检查角色一致性检查 三个层面。

审查中心六维审查:

维度 说明
爽感密度 爽点分布是否合理、密度是否足够
设定自洽 战力/地点/时间线等设定是否自相矛盾
节奏张力 叙事节奏是否合理、张弛是否有度
人设一致 角色行为是否偏离人设、对话是否符合性格
叙事衔接 场景转换是否自然、前后文是否衔接
追读引力 章末钩子是否有力、读者期待管理是否到位

AI 审稿流程:

  1. 读取目标章节正文
  2. 加载大纲、人物状态、伏笔状态、时间线、角色认知
  3. LLM 逐维度检查,输出结构化审稿意见
  4. 按严重程度分级:阻塞 / 高 / 中 / 低
  5. 提供具体修改建议与原文证据

角色一致性检查(专项能力):

审查阶段会专门校验角色是否脱离记忆库设定:

  • AI 先从初稿提取所有出场角色,再逐个对照记忆库(角色光环、人物状态、角色认知状态)
  • 标注每个角色的命中状态,判断是否脱离设定
  • 审查前用初稿正文重新匹配角色光环,补齐配角、新角色登场时的光环注入缺失
  • 长章节(>8000 字)自动分段并行审查(最多 3 段覆盖 24000 字)
  • 返修后新增阶段 5.5 复审闭环,确认返修是否引入新阻断问题
  • 结果在审查中心以独立的"角色命中记忆库报告"面板呈现

连贯性检查(Lint):

自动检测结构性问题:

  • 时间线冲突
  • 人设崩坏
  • 伏笔错乱
  • 角色认知越界
  • 缺失的关系引用

每个问题输出包含严重程度、类型、原文证据、相关记忆和修改建议。

事实检查(Fact Check):

基于章节快照的事实验证系统,检测新章节中是否存在与既有 Canon 正史矛盾的内容。

伏笔债务追踪:

自动统计长期未回收的伏笔,计算债务评分,提醒作者哪些伏笔需要推进或收束。


image

✍️ 小说写作问题解决方案

针对长篇 AI 写作的常见崩坏问题,青幕AI写作提供系统性解决方案:

问题 解决方案
AI 写到后期遗忘前文 章节快照 + 最近章节正文片段 + 混合检索 + 上下文包自动组装
人物性格前后不一致 角色状态追踪 + 灵魂绑定 + 人设一致性审查 + 角色命中记忆库检查
时间线混乱 结构化时间线 + 连贯性检查 + 时间线冲突报警
伏笔丢失或错乱 伏笔追踪器 + 债务评分 + 自动检测未回收伏笔
角色知道不该知道的信息 角色认知系统(knows / does_not_know)
AI 生成错误内容污染后续 草稿/正式章节分离 + 人工确认后才入库
大纲执行偏移 大纲一致性审查 + 上下文强制注入大纲规则
生成内容 AI 味重 去AI化改写(De-AI)+ 项目灵魂风格控制 + 作品文风约束
不知道如何写好某种文风 拆书库提取成熟作品的 9 维文风,直接复用
设定散落难以追踪 图谱可视化 + 结构化记忆 + 全文搜索
长章节超出模型上下文 发送前按模型真实输入上限自动裁剪并重试

草稿机制:

AI 生成的章节默认为草稿状态。草稿支持预览、编辑、重新生成、审稿。只有用户确认后才会保存为正式章节并触发记忆摄取。草稿不会污染正式记忆库。

去AI化改写(De-AI):

内置文风转化能力,将 AI 生成的"标准化"文本改写为更贴近人类写作的自然风格,减少模板化表达。


🕸️ 图谱功能

小说图谱将作品中的所有实体和关系以网络形式可视化呈现。

节点类型:

  • 人物、地点、组织、物品
  • 事件、章节、大纲
  • 伏笔、秘密、冲突、时间点

关系类型:

  • 出场于、发生于、持有
  • 敌对、合作、怀疑、隐瞒
  • 知道、不知道
  • 推进伏笔、回收伏笔、新增伏笔
  • 导致、揭示、影响

图谱构建逻辑:

图谱数据来源于章节摄取过程。每当正式章节保存后,系统自动从快照中提取图谱节点和关系边,增量更新全局图谱。

应用场景:

  • 查看某角色的完整关系网络
  • 追踪某个伏笔涉及的所有章节和角色
  • 发现孤立节点(缺乏关联的设定)
  • 分析剧情线的关键路径

图谱视图基于 Sigma.js + ForceAtlas2 布局,支持社区发现、节点过滤和交互式探索。


其他功能

  • 大纲管理:总大纲 → 分卷大纲 → 章节细纲,三级大纲体系;支持 AI 大纲、细化生成、一键提取
  • 章节生成:续写、扩写、改写、润色,多种生成模式;支持章节移动到卷、右键重命名/删除
  • 剧情搜索:关键词 + 语义 + 图谱混合搜索
  • 模型管理:内置预设(DeepSeek、Google、智谱等)多选启用;自定义模型标签式批量管理、批量测试 + 失败重试;「默认模型」机制统筹后台任务
  • 数据管理:一键导出/导入全部数据(AI 会话、大纲、模型、记忆),重装系统可完美恢复
  • 界面调节:全局界面字号调节(85%-130%),中文 / 英文双语界面
  • 自动更新:内置 Tauri Updater,启动时自动检测 GitHub Releases 新版本;Windows 更新前等待主程序释放文件句柄
  • 使用说明入口:章节、大纲、图谱、记忆中心、灵魂、审查、设置等核心功能图标悬停可查看使用说明

技术架构

┌─────────────────────────────────────────────────┐
│                   前端 UI 层                      │
│   React 19 + TypeScript + Tailwind CSS + Vite    │
├─────────────────────────────────────────────────┤
│                  状态管理层                        │
│          Zustand (wiki-store, review-store...)    │
├─────────────────────────────────────────────────┤
│                 业务逻辑层                        │
│  novel/ (记忆引擎, 上下文包, 摄取, 审查, 图谱,    │
│         拆书分析, 文风提取, 角色一致性)            │
│  lib/ (LLM客户端, 嵌入, 搜索, 去重, 持久化)      │
├─────────────────────────────────────────────────┤
│              Tauri IPC 通信层                     │
├─────────────────────────────────────────────────┤
│                Rust 后端命令层                     │
│  文件系统 / 向量存储 / PDF提取 / 进程管理 / 代理   │
├─────────────────────────────────────────────────┤
│                  本地文件系统                      │
│        项目目录 (Markdown + JSON + 向量索引)      │
└─────────────────────────────────────────────────┘

技术栈:

层级 技术选型
桌面框架 Tauri 2
前端 React 19, TypeScript, Vite 8
样式 Tailwind CSS 4
状态管理 Zustand 5
富文本编辑 Milkdown 7
图谱渲染 Sigma.js 3 + Graphology
图表/流程图 Mermaid
简繁转换 OpenCC
拼音匹配 pinyin-pro
后端 Rust
向量存储 LanceDB
PDF 解析 PDFium
自动更新 tauri-plugin-updater
CI/CD GitHub Actions

关键技术亮点:

  • 混合检索引擎:关键词 + 向量 + 图谱三路融合,RRF 排序
  • Token 预算控制:上下文包自动裁剪,发送前按模型真实输入上限二次裁剪并重试
  • 增量式图谱构建:每次摄取只更新变化部分
  • 本地优先架构:所有数据存储在本地,无需联网(LLM 调用除外)
  • 草稿隔离机制:未确认内容不会污染正式记忆库
  • 角色一致性闭环:从别名拼音/简繁模糊匹配到分段并行审查再到返修复审

安装与使用

环境要求

  • 操作系统:Windows 10+(主要支持平台)、macOS、Linux
  • LLM 服务:需配置至少一个大语言模型 API(支持 OpenAI 兼容接口、Ollama 等)

安装方式

方式一:下载安装包(推荐)

前往 GitHub Releases 下载最新版本安装包。

macOS 用户须知

Release 包未做 Apple 公证,首次打开可能提示「已损坏」或无法运行。将 .app 拖入「应用程序」后,在终端执行:

codesign --force --deep --sign - /Applications/QMaiWrite.app
xattr -dr com.apple.quarantine /Applications/QMaiWrite.app
  • 第一行:用 ad-hoc 签名让系统允许本地运行
  • 第二行:移除下载时附加的隔离标记

macOS 暂不支持应用内自动更新,新版本请手动从 Releases 下载安装。

基本使用流程

  1. 新建小说项目:指定项目名称、题材、目标字数
  2. 导入或生成大纲:导入已有大纲,或通过 AI 生成;也可从拆书库提取文风作为风格约束
  3. 配置模型:在设置中配置 LLM API 地址和密钥;可设置「默认模型」统筹后台任务
  4. 开始写作:在 AI 对话区输入写作指令(如"继续写第 30 章")
  5. 审阅草稿:查看生成结果,可编辑、重写或审稿
  6. 确认保存:满意后保存为正式章节,系统自动摄取记忆
  7. 查看图谱与审查:在图谱视图查看人物关系;审查中心查看六维评分与角色命中报告

项目结构

QMAI/
├── src/                          # 前端源码
│   ├── components/               # React 组件
│   │   ├── chat/                 # AI 对话面板
│   │   ├── dashboard/            # 仪表盘
│   │   ├── editor/               # 编辑器与阅读器
│   │   ├── graph/                # 图谱视图
│   │   ├── layout/               # 布局组件(含使用说明入口)
│   │   ├── novel/                # 小说功能组件(灵魂、认知、伏笔、记忆、拆书库等)
│   │   ├── review/               # 审查中心
│   │   ├── search/               # 搜索视图
│   │   ├── settings/             # 设置面板(模型、数据管理、界面等)
│   │   ├── sources/              # 原始资料与大纲管理
│   │   └── ui/                   # 通用 UI 组件
│   ├── lib/                      # 业务逻辑库
│   │   ├── novel/                # 小说核心模块
│   │   │   ├── book-analysis/    # 拆书库(角色提取、文风提取、别名匹配等)
│   │   │   ├── context-engine.ts # 上下文引擎
│   │   │   ├── chapter-ingest.ts # 章节摄取
│   │   │   ├── review-adapter.ts # 审查适配器(含角色一致性)
│   │   │   ├── model-resolver.ts # 默认模型解析
│   │   │   ├── de-ai-adapter.ts  # 去AI化
│   │   │   └── ...
│   │   ├── llm-client.ts         # LLM 客户端
│   │   ├── embedding.ts          # 嵌入向量
│   │   ├── search.ts             # 搜索引擎
│   │   └── ...
│   ├── stores/                   # Zustand 状态仓库
│   ├── i18n/                     # 国际化(中/英)
│   └── commands/                 # Tauri 命令调用层
├── src-tauri/                    # Rust 后端
│   ├── src/
│   │   ├── commands/             # Tauri 命令实现
│   │   ├── lib.rs                # 插件注册与应用初始化
│   │   └── ...
│   ├── Cargo.toml                # Rust 依赖配置
│   └── tauri.conf.json           # Tauri 应用配置
├── skills/                       # 角色 SKILL 数据(应用运行时资源)
├── extension/                    # 浏览器剪藏扩展
├── scripts/                      # 构建与发布脚本
├── .github/workflows/            # CI/CD 工作流
├── package.json                  # 前端依赖与脚本
└── vite.config.ts                # Vite 构建配置

本地开发

前置依赖

开发命令

# 安装前端依赖
npm install

# 启动开发环境(前端 + Tauri 桌面窗口)
npm run tauri dev

# 仅启动前端开发服务器
npm run dev

# 类型检查
npm run typecheck

# 构建桌面便携版
npm run build:portable

# 构建 GitHub 发布版(含签名与 latest.json)
npm run build:github-release

代码规范

  • 前端代码使用 TypeScript 严格模式
  • Commit Message 遵循 Conventional Commits 规范
  • 新功能请在 src/lib/novel/ 中集中实现,避免散落到无关模块
  • Rust 代码遵循 cargo fmtcargo clippy 标准

许可证

本项目采用 GNU General Public License v3.0 开源许可证(基于 LLM Wiki 衍生开发)。


致谢

相关链接

About

青幕AI写作软件,解决长篇小说写作问题,解决小说角色性格不统一,防止人设崩坏。

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages