From 2346524682863bcb7a36a86b1df2f240a579e0ef Mon Sep 17 00:00:00 2001 From: YILING0013 Date: Fri, 7 Feb 2025 21:44:06 +0800 Subject: [PATCH] Update README.md --- README.md | 76 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 39 insertions(+), 37 deletions(-) diff --git a/README.md b/README.md index 5246a57..fa7fbb7 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,5 @@ # 📖 自动小说生成工具 -## 2025/2/5说明 ->当前**dev-2**分支采用了**雪花写作法、角色弧光理论、悬念三要素模型**的预设,尚在完善中,但就测试质量来说,小说质量会高于当前main分支效果。 -
✨ **核心功能** ✨ @@ -35,7 +32,7 @@ ## 🛠 环境准备 确保满足以下运行条件: -- **Python 3.10+** 运行环境 +- **Python 3.9+** 运行环境(推荐3.10-3.12之间) - **pip** 包管理工具 - 有效API密钥: - 云端服务:OpenAI / DeepSeek 等 @@ -48,11 +45,11 @@ 1. **下载项目** - 通过 [GitHub](https://github.com) 下载项目 ZIP 文件,或使用以下命令克隆本项目: ```bash - git clone https://github.com/your-repo/project-name.git](https://github.com/YILING0013/AI_NovelGenerator + git clone https://github.com/YILING0013/AI_NovelGenerator ``` -2. **安装编译工具** - - 访问 [Visual Studio Build Tools](https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/) 下载并安装编译工具。 +2. **安装编译工具(可选)** + - 如果对某些包无法正常安装,访问 [Visual Studio Build Tools](https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/) 下载并安装C++编译工具,用于构建部分模块包; - 安装时,默认只包含 MSBuild 工具,需手动勾选左上角列表栏中的 **C++ 桌面开发** 选项。 3. **安装依赖并运行** @@ -68,21 +65,28 @@ ```bash python main.py ``` - + +>如果缺失部分依赖,后续**手动执行** +>```bash +>pip install XXX +>``` +>进行安装即可 + ## 🗂 项目架构 ``` novel-generator/ -├── main.py # 入口文件, 运行 GUI -├── ui.py # 图形界面 -├── novel_generator.py # 章节生成核心逻辑 -├── consistency_checker.py # 一致性检查, 防止剧情冲突 -|—— chapter_directory_parser.py # 目录解析 -|—— embedding_ollama.py # Ollama 本地服务的 Embedding 接口 -├── prompt_definitions.py # 定义 AI 提示词 -├── utils.py # 常用工具函数, 文件操作 -├── config_manager.py # 管理配置 (API Key, Base URL) -├── config.json # 用户配置文件 (可选) -└── vectorstore/ # (可选) 本地向量数据库存储 +├── main.py # 入口文件, 运行 GUI +├── ui.py # 图形界面 +├── novel_generator.py # 章节生成核心逻辑 +├── consistency_checker.py # 一致性检查, 防止剧情冲突 +|—— chapter_directory_parser.py # 目录解析 +|—— embedding_adapters.py # Embedding 接口封装 +|—— llm_adapters.py # LLM 接口封装 +├── prompt_definitions.py # 定义 AI 提示词 +├── utils.py # 常用工具函数, 文件操作 +├── config_manager.py # 管理配置 (API Key, Base URL) +├── config.json # 用户配置文件 (可选) +└── vectorstore/ # (可选) 本地向量数据库存储 ``` --- @@ -91,18 +95,22 @@ novel-generator/ ### 📌 基础配置(config.json) ```json { - "api_key": "sk-XXXXXXXXXXXXXXXXXXXXXXXXXX", + "api_key": "sk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", "base_url": "https://api.openai.com/v1", "interface_format": "OpenAI", "model_name": "gpt-4o-mini", + "temperature": 0.7, + "max_tokens": 4096, + "embedding_api_key": "sk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "embedding_interface_format": "OpenAI", "embedding_url": "https://api.openai.com/v1", "embedding_model_name": "text-embedding-ada-002", - "temperature": 0.70, + "embedding_retrieval_k": 4, "topic": "星穹铁道主角星穿越到原神提瓦特大陆,拯救提瓦特大陆,并与其中的角色展开爱恨情仇的小说", "genre": "玄幻", - "num_chapters": 10, - "word_number": 2000, - "filepath": "C:/Users/Documents/test" + "num_chapters": 120, + "word_number": 4000, + "filepath": "D:/AI_NovelGenerator/filepath" } ``` @@ -113,10 +121,12 @@ novel-generator/ - `interface_format`: 接口模式 - `model_name`: 主生成模型名称(如gpt-4, claude-3等) - `temperature`: 创意度参数(0-1,越高越有创造性) + - `max_tokens`: 模型最大回复长度 2. **Embedding模型配置** - `embedding_model_name`: 模型名称(如Ollama的nomic-embed-text) - `embedding_url`: 服务地址 + - `embedding_retrieval_k`: 3. **小说参数配置** - `topic`: 核心故事主题 @@ -202,21 +212,13 @@ pyinstaller main.spec --- ## ❓ 疑难解答 -### Q1: 如何验证Embedding服务是否正常? -```python -# 测试脚本 test_embedding.py -from core.embedding import get_embedder +### Q1: Expecting value: line 1 column 1 (char 0) -embedder = get_embedder() -test_text = "这是一个测试句子" -vector = embedder.embed_query(test_text) -print(f"向量维度: {len(vector)}") # 正常应输出预设维度数 -``` +该问题大概率由于API未正确响应造成,也许响应了一个html?其它内容,导致出现该报错; -### Q2: 本地Embedding响应缓慢怎么办? -- 检查模型是否已下载到本地 -- 尝试较小尺寸的Embedding模型 -- 增加Ollama服务的运行内存 + +### Q2: HTTP/1.1 504 Gateway Timeout? +确认接口是否稳定; ### Q3: 如何切换不同的Embedding提供商? 在GUI界面中对应输入即可。