Initial AI manga platform
This commit is contained in:
Executable
+201
@@ -0,0 +1,201 @@
|
||||
# 04_技术架构设计_模块拆分
|
||||
|
||||
## 1. 推荐技术栈
|
||||
|
||||
```text
|
||||
用户端:uni-app
|
||||
后台端:Geeker-Admin
|
||||
后端:Node.js + NestJS
|
||||
数据库:MySQL 8
|
||||
队列:Redis + BullMQ
|
||||
对象存储:MinIO
|
||||
视频合成:FFmpeg
|
||||
AI辅助:Python Worker 可选
|
||||
进程管理:PM2 / systemd
|
||||
反向代理:Nginx
|
||||
容器化:Docker 可选
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2. 总体架构
|
||||
|
||||
```text
|
||||
uni-app 用户端
|
||||
↓
|
||||
NestJS API Gateway
|
||||
↓
|
||||
业务服务层
|
||||
↓
|
||||
AI 编排层 / 任务队列层
|
||||
↓
|
||||
TextProvider / ImageProvider / VoiceProvider / VideoProvider / ModerationProvider
|
||||
↓
|
||||
MySQL / Redis / MinIO / FFmpeg
|
||||
↓
|
||||
Geeker-Admin 后台管理
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. 后端模块
|
||||
|
||||
```text
|
||||
AuthModule
|
||||
UserModule
|
||||
ProjectModule
|
||||
NovelModule
|
||||
CopyrightModule
|
||||
TextParseModule
|
||||
StoryBibleModule
|
||||
WorldBibleModule
|
||||
CharacterModule
|
||||
CharacterAssetModule
|
||||
EpisodeModule
|
||||
ScriptModule
|
||||
StoryboardModule
|
||||
PromptModule
|
||||
AssetModule
|
||||
TaskModule
|
||||
ProviderModule
|
||||
ImageModule
|
||||
AudioModule
|
||||
SubtitleModule
|
||||
VideoModule
|
||||
OrderModule
|
||||
QuotaModule
|
||||
ReviewModule
|
||||
CaseModule
|
||||
AnalyticsModule
|
||||
SystemConfigModule
|
||||
LogModule
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 4. 系统 A 独有模块
|
||||
|
||||
```text
|
||||
NovelModule:小说生成/上传/解析
|
||||
StoryBibleModule:故事圣经
|
||||
WorldBibleModule:世界观规则
|
||||
CharacterModule:角色圣经
|
||||
EpisodeModule:分集计划
|
||||
ScriptModule:单集脚本
|
||||
StoryboardModule:分镜
|
||||
PlotMemoryModule:长篇记忆
|
||||
ContinuityModule:连续性检查
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. 与系统 B 共用模块
|
||||
|
||||
```text
|
||||
AuthModule
|
||||
UserModule
|
||||
OrderModule
|
||||
QuotaModule
|
||||
AssetModule
|
||||
TaskModule
|
||||
ProviderModule
|
||||
ImageModule
|
||||
AudioModule
|
||||
SubtitleModule
|
||||
VideoModule
|
||||
ReviewModule
|
||||
CaseModule
|
||||
AnalyticsModule
|
||||
SystemConfigModule
|
||||
LogModule
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6. AI Provider 抽象
|
||||
|
||||
Provider 不允许写死模型。
|
||||
|
||||
```text
|
||||
TextProvider
|
||||
NovelProvider
|
||||
ImageProvider
|
||||
VideoProvider
|
||||
VoiceProvider
|
||||
ModerationProvider
|
||||
QualityCheckProvider
|
||||
FileParseProvider
|
||||
EmbeddingProvider
|
||||
```
|
||||
|
||||
每个 Provider 需要支持:
|
||||
|
||||
```text
|
||||
mock模式
|
||||
真实模式
|
||||
fallback
|
||||
限流
|
||||
成本记录
|
||||
失败重试
|
||||
请求日志
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 7. Worker 队列
|
||||
|
||||
```text
|
||||
novel_queue
|
||||
parse_queue
|
||||
story_queue
|
||||
character_queue
|
||||
script_queue
|
||||
storyboard_queue
|
||||
image_queue
|
||||
audio_queue
|
||||
subtitle_queue
|
||||
video_queue
|
||||
qc_queue
|
||||
review_queue
|
||||
analytics_queue
|
||||
```
|
||||
|
||||
不同队列隔离,避免视频合成堵住文本和图片任务。
|
||||
|
||||
---
|
||||
|
||||
## 8. 存储策略
|
||||
|
||||
```text
|
||||
原始小说文件:MinIO private bucket
|
||||
清洗文本:数据库 LONGTEXT + 备份文件
|
||||
角色参考图:MinIO private
|
||||
分镜图:MinIO private
|
||||
视频成品:MinIO private
|
||||
公开案例:单独 public 或 CDN bucket
|
||||
```
|
||||
|
||||
原始小说和用户素材默认私有。
|
||||
|
||||
---
|
||||
|
||||
## 9. 事件驱动
|
||||
|
||||
系统内部关键事件:
|
||||
|
||||
```text
|
||||
ProjectCreated
|
||||
NovelParsed
|
||||
StoryBibleConfirmed
|
||||
CharacterBibleConfirmed
|
||||
EpisodesConfirmed
|
||||
StoryboardConfirmed
|
||||
PaymentPaid
|
||||
PreviewConfirmed
|
||||
ImageGenerated
|
||||
VideoRendered
|
||||
ProjectCompleted
|
||||
RevisionRequested
|
||||
```
|
||||
|
||||
可用于后续扩展数据统计、通知、运营分析。
|
||||
Reference in New Issue
Block a user