# 长篇小说生成模块 uml编写 # 一、Scheema范式设计 # 长篇小说生成模块 - 模块描述 - 用户可以创建长篇小说项目,创建长篇小说项目时,可以添加人物词条。 - 每个项目可以添加多个章节。每个章节能够通过填写章节大纲利用ai模型生成章节内容。生成的章节内容能够手动修改。 ## 1.表设计 ### 1.1 长篇小说项目表(LongProject) - objectId: String (唯一标识) - createdAt: Date (创建时间) - title: String (项目标题) - long_characters: Array (人物列表,指向人物表) - chapters: Array (章节列表,指向章节表) ### 1.2 长篇小说人物表(LongCharacter) - objectId: String (唯一标识) - createdAt: Date (创建时间) - name: String (人物名称) - role: String (人物角色) - description: String (人物描述) - project: Pointer (所属项目,指向长篇小说项目表) ### 1.3 章节表(Chapter) - objectId: String (唯一标识) - createdAt: Date (创建时间) - title: String (章节标题) - content: String (章节内容) - project: Pointer (所属项目,指向项目表) ### PlantUML 类图表示 以下是用PlantUML表示的类图: ```plantuml @startuml class LongProject { +objectId: String +createdAt: Date +title: String +long_characters: Array> +chapters: Array> } class LongCharacter { +objectId: String +createdAt: Date +name: String +role: String +description: String +project: Pointer } class Chapter { +objectId: String +createdAt: Date +title: String +content: String +project: Pointer } LongProject "1" -- "0..*" LongCharacter : contains LongProject "1" -- "0..*" Chapter : contains @enduml ``` # 二、业务逻辑描述 # 长篇小说生成的完整逻辑 ## 创建逻辑 - 用户在APP内,通过填写长篇小说名称、添加人物词条,点击提交按钮,触发创建长篇小说项目的逻辑。 - 数据来源 - 用户输入长篇小说名称,人物词条等数据。 - 文本生成 - 提示词: 人物生成提示词 - 结果储存 - LongProject - 项目标题title - LongCharacter - 人物名称name - 人物角色role角色在小说中的定位 - 人物描述description完整人物描述 - 添加章节,根据章节大纲生成章节内容 - 数据来源 - LongCharacter - 用户输入:章节标题,章节大纲 - 文本生成 - 提示词: 章节内容生成提示词(章节大纲) - 生成结果 - 章节内容content(生成的章节内容可以手动修改) # 长篇小说生成业务逻辑图例 ```plantuml @startuml actor User participant "App" as App participant "LongProject" as LongProject participant "LongCharacter" as LongCharacter participant "TextGenerationService" as TextGen participant "Chapter" as Chapter == 创建长篇小说项目 == User -> App: 输入长篇小说名称 User -> App: 添加人物词条 User -> App: 点击提交按钮 App -> LongProject: 创建项目 LongProject ->LongProject : 保存项目标题(title) LongProject ->LongCharacter: 添加人物词条(name, role, description) LongProject -> App: 项目创建成功 == 添加章节 == User -> App: 输入章节标题 User -> App: 输入章节大纲 App -> TextGen: 生成章节内容\n(根据章节大纲) TextGen -> Chapter: 创建章节\n(title, outline, content) Chapter -> App: 章节创建成功 App -> User: 显示章节内容\n(content可手动修改) @enduml ``` ### 说明 - 用户输入长篇小说名称和人物词条,并点击提交按钮。 - APP接收到输入后,调用LongProject创建项目,并返回创建成功的消息。 - 用户填写章节标题和章节大纲,APP调用文本生成服务生成章节内容,使用章节大纲作为提示词。 - 生成的章节内容存储在Chapter表中,并返回创建成功的消息给APP。 - APP向用户展示生成的章节内容,内容可以手动修改。 您可以将上述代码放入支持PlantUML的工具中生成相应的时序图。