# ReNovel-AI **Repository Path**: wwjedu/ReNovel-AI ## Basic Information - **Project Name**: ReNovel-AI - **Description**: 小说助手 - **Primary Language**: Unknown - **License**: GPL-3.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-05 - **Last Updated**: 2026-07-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Re:Novel
文境重塑

Typing SVG

智能化的小说重写工作台

contributors forks stars license release

## **目前的功能 项目的愿景** - [x] **导入TXT文件并进行章节分析与记忆保存** - [x] **查看小说内容/分章节或全文** - [x] **根据需求进行精修** - [x] **针对AI生成内容的精校** - [x] **动态的记忆保存功能** - [x] **通过*聊天*的形式获取小说内容** - [x] ***不仅是小说*** - [ ] **完全兼容酒馆(sillytavern)的预设与角色卡**
**👉 还有些其他的....** ***或许可以用来改论文?*** **给小说加料?*(NSFW)*** **还有什么....**
## 🌟 核心特性 (Features) ### 1. 🧠 全局记忆与一致性 (RAG Memory) 告别"吃书",系统内置 **ChromaDB** 向量数据库,自动记忆全书内容。 * **智能检索**:当你改写第 100 章时,AI 会自动检索参考第 1 章的伏笔、设定和人物关系。 * **智能联想**:即使你只写了"那把剑",系统也能联想到"生锈的铁剑"并提取相关设定。 * **一致性检查**:独立的 Reviewer AI 检测 OOC(角色崩坏)或逻辑漏洞。 ### 2. ✍️ 卡片流式编辑器 (Card-Flow Editor) * **平行对比**:左侧原文,右侧 AI 改写,段落级绝对对齐。 * **动态操作**:支持任意插入新段落、删除冗余。AI 可根据指令进行扩写或无中生有。 * **沉浸体验**:基于 **CodeMirror** 的美化编辑器,支持全屏专注写作。 ### 3. 🤖 三模态 AI 协作 (Tri-Model Architecture) 独特的双模态写作-写作与校验同步运行-保证你的文章质量 | 角色 | 功能描述 | | :--- | :--- | | **Writer (作家)** | 负责根据你的指令进行改写、润色、扩写。 | | **Reviewer (总监)** | 独立的审校 AI。检查 OOC(角色崩坏)或逻辑漏洞。 | | **Chat (助手)** | 右侧常驻助手,随时回答"这一章讲了什么?"或"主角第一次出场是在哪?"。 | ### 4. ⚡ 自动化工作流 (Batch Workflow) * **全书精修**:一键启动流水线,自动遍历全书逐章改写。 * **断点续传**:随时暂停,进度自动保存。 * **数据安全**:支持一键 **Fork 项目副本**,改坏了随时回滚,安全感拉满。 ### 5. 🎭 角色扮演与风格控制 * **SillyTavern 兼容**:支持导入酒馆 (Tavern) 格式的 PNG/JSON 角色卡,自动提取人设。**ToDo** * **风格矩阵**:精细控制保留度(20%-100%)、扩写欲望(保守/狂野)、内容尺度和文风倾向。 --- ## 🚀 快速开始 (Quick Start) ### 🚀最简单的方式 **右侧release下载zip文件解压,打开Run.Bat即可** ## 🌟 开始 ### 环境要求 * **OS**: Windows / macOS / Linux * **Python**: 3.10 或 3.11 (推荐 3.11) > [!IMPORTANT] > **Windows 用户请注意**:你需要安装 C++ Build Tools 以编译向量库依赖。 > 下载地址: https://visualstudio.microsoft.com/visual-cpp-build-tools/ ### 安装步骤 **1. 克隆仓库** ```bash git clone https://github.com/BiranSama/ReNovel-AI.git cd ReNovel-AI ``` **2. 一键安装 (推荐)** # Windows ```bash 双击运行 setup.bat ``` # macOS / Linux ```bash chmod +x setup.sh ./setup.sh ``` **3. 配置 API Key** 启动程序后,点击右上角 ⚙️ 设置 (Settings) 图标,填入你的 OpenAI 或 Google Gemini API Key。 **4. 启动!** ```bash # Windows venv\Scripts\activate python main.py # macOS / Linux source venv/bin/activate python main.py ```
📖 手动安装 (高级用户) ```bash # 创建虚拟环境 python -m venv venv # 激活虚拟环境 # Windows: venv\Scripts\activate # macOS / Linux: source venv/bin/activate # 安装依赖 pip install -r requirements.txt # 或使用 pyproject.toml (推荐) pip install -e . ```
## 📖 使用指南 **1. 导入与分章** 点击右上角 "导入",拖入 .txt 小说文件。 系统会自动识别"第X章"或纯文本标题,并将小说切分为章节存入数据库。 导入时系统会自动进行一次全书向量化,大文件请耐心等待。 **2. 单章精修** 在左侧书架选择一章。 在顶部输入指令(例如:"把这段对话写得更幽默")。 点击段落中间的魔法棒。 AI 会生成改写内容。如果开启了 Reviewer,它会自动进行评分和拦截。 **3. 全书自动化精修** 点击顶部的 "批量任务" 按钮。 选择范围(全书 / 继续进度)。 勾选 "创建副本"(强烈推荐)。 点击启动,观察 AI 自动工作。 ## 🛠️ 技术栈 (Tech Stack) | 模块 | 技术方案 | | :--- | :--- | | Frontend | NiceGUI (Vue/FastAPI) | | Database | SQLite (Metadata) + ChromaDB (Vector) | | AI Core | LangChain | | DI Framework | dependency_injector | | Processing | RapidFuzz, Tiktoken | | Editor | CodeMirror | ## 🏗️ 架构设计 (Architecture) 本项目采用 **领域驱动设计 (DDD)** 四层架构: ``` ┌─────────────────────────────────────────────────────────────┐ │ Interfaces Layer │ │ (Controllers, Views, ViewModels, Web App) │ ├─────────────────────────────────────────────────────────────┤ │ Application Layer │ │ (Services, DTOs, Use Cases) │ ├─────────────────────────────────────────────────────────────┤ │ Domain Layer │ │ (Entities, Repositories, Value Objects) │ ├─────────────────────────────────────────────────────────────┤ │ Infrastructure Layer │ │ (Database, LLM Gateway, RAG Pipeline, Memory System) │ └─────────────────────────────────────────────────────────────┘ ``` ## 📂 目录结构 ``` ReNovel-AI/ ├── config/ # 配置与提示词 │ ├── prompts/ # 各模块 Prompt 模板 (YAML) │ ├── settings.py # 全局设置 │ └── prompt_manager.py # Prompt 管理器 ├── data/ # 用户数据 (已在 .gitignore 中忽略) │ ├── projects/ # SQLite 数据库 (.db) │ ├── vectordb/ # ChromaDB 向量索引 │ └── presets/ # 角色卡与预设 ├── src/ │ ├── adapters/ # 外部适配器 │ ├── application/ # 应用服务层 │ │ ├── dto/ # 数据传输对象 │ │ └── services/ # 业务服务 │ ├── di/ # 依赖注入容器 │ ├── domain/ # 领域层 (DDD 核心) │ │ ├── entities/ # 领域实体 │ │ └── repositories/ # 仓储接口 │ ├── infrastructure/ # 基础设施层 │ │ ├── database/ # 数据库实现 │ │ ├── llm/ # LLM 网关与限流 │ │ ├── memory/ # 记忆与一致性检查 │ │ └── rag/ # RAG 检索增强 │ ├── interfaces/ # 接口层 │ │ ├── controllers/ # 控制器 │ │ ├── views/ # 视图组件 │ │ └── web/ # Web 应用 │ ├── shared/ # 共享类型与异常 │ └── utils/ # 工具函数 ├── tests/ # 测试用例 (97 tests) │ ├── unit/ # 单元测试 │ └── integration/ # 集成测试 ├── main.py # 启动入口 └── pyproject.toml # 项目配置 ``` ## 🔧 开发 (Development) ### 运行测试 ```bash pytest tests/ -v ``` ### 代码质量 ```bash ruff check src/ mypy src/ ``` ## 📝 更新日志 (Changelog) 查看 [CHANGELOG.md](CHANGELOG.md) 了解版本更新历史。 ## 🤝 贡献 (Contributing) 欢迎提交 Issue 或 Pull Request!如果你有新的脑洞,请随时告诉我。这是我首次通过git上传仓库 有任何建议请不要吝啬。 Please Star!!!! ## 📄 License 本项目采用 GPL-3.0 License 开源