Files
ai/CURRENT_ARCHITECTURE.md
T
2026-06-15 18:13:21 +08:00

27 KiB
Raw Blame History

Current Architecture

生成时间:2026-06-15
扫描范围:/www/wwwroot/ai 源码、Prisma schema、前后台入口、Provider/Router/Live Action/Media 实现。

1. 系统整体架构图

用户端 H5 / uni-app
user-app/src/pages/index/index.vue
        |
        | REST API + JWT + 可选加密传输
        v
NestJS Backend
backend/src/app.module.ts
        |
        |---------------- Auth / Users / Billing
        |---------------- Projects / Novels / Story Bible
        |---------------- Characters / Memories / Episodes
        |---------------- Scripts / Images / Media
        |---------------- Live Action / AI Router / Providers
        |---------------- Reviews / Admin / Queues
        |
        v
MySQL 8
Prisma schema: backend/prisma/schema.prisma
        |
        +--> RenderTask / ProviderLog / OperationLog / Asset
        |
        v
Storage
local storage: storage/private
MinIO 预留: backend/src/assets/storage.service.ts

后台管理端
admin/src/App.vue
        |
        | Provider 配置 / Router 审计 / 任务审计 / 用户项目管理
        v
NestJS Admin API

Worker 预留
workers/src/main.ts
        |
        | BullMQ 队列 worker 框架
        v
Redis / BullMQ

AI Provider 抽象层
backend/src/providers/providers.service.ts
        |
        | mock / OpenAI / DeepSeek / MiniMax / Hailuo / Kling / Runway / Gemini 等
        v
第三方 AI 平台

FFmpeg
        |
        | 图片/音频/字幕合成 MP4
        | 真人视频片段拼接、裁切、字幕、BGM、SFX、响度归一
        v
最终视频 Asset

2. 核心模块

后端模块

模块 主要职责 关键文件
Auth / Users 注册、登录、JWT、RBAC backend/src/auth/*, backend/src/users/*
Projects 项目创建、状态、输入/输出模式 backend/src/projects/*
Assets / Storage 上传、下载、私有素材、本地/MinIO 存储 backend/src/assets/*
Novels AI 原创小说、上传小说解析、章节拆分 backend/src/novels/*
Story Bibles 故事圣经生成/确认 backend/src/story-bibles/*
Characters 角色抽取、角色确认、角色锚点、全局角色关联 backend/src/characters/*
Memories 长篇记忆、剧情线 backend/src/memories/*
Episodes 分集计划生成/确认 backend/src/episodes/*
Scripts 单集脚本、分镜脚本 backend/src/scripts/*
Images 分镜图、角色图 mock/Provider 抽象 backend/src/images/*
Media 多角色 TTS、字幕、普通 FFmpeg 合成 backend/src/media/*
Live Action 真人短剧:演员定妆、真人分镜、关键帧、视频片段、质检、合成 backend/src/live-action/*
AI Router 镜头评分、自动选 Provider、fallback、成本判断 backend/src/ai-router/*
Providers Provider 配置、执行、日志、成本、bootstrap backend/src/providers/*
Billing 额度账户、冻结额度、成本预估 backend/src/billing/*
Reviews 文本/视频审核、公开案例授权 backend/src/reviews/*
Queues 任务查询、worker task 入口 backend/src/queues/*
Admin 后台项目、Provider、日志、审计、Router 视图 backend/src/admin/*
Common API 响应、异常、加密、中间件、HTTPS 检查 backend/src/common/*

前端模块

模块 主要职责 关键文件
用户端制作台 创建项目、上传/原创、版权、故事、角色、分集、脚本、真人视频、合成、审核、成品 user-app/src/pages/index/index.vue
用户端 API Client 用户端 REST API 封装、错误文案、上传下载、真人视频接口 user-app/src/api/client.ts
用户端工作流 状态标签、进度计算、任务类型显示 user-app/src/workflow.ts
用户端样式 深色运营台风格、单列制作流程、响应式 UI user-app/src/styles.css
后台端 Provider 配置、AI 平台入口、Router 审计、任务审计、项目管理 admin/src/App.vue

Worker 模块

workers/src/main.ts 已有 BullMQ worker 框架,队列名包含:

  • novel_queue
  • story_queue
  • character_queue
  • episode_queue
  • script_queue
  • storyboard_queue
  • image_queue
  • audio_queue
  • subtitle_queue
  • video_queue
  • review_queue

当前大量生成动作仍由 API 同步触发并写 RenderTask,队列化已有框架和部分后端队列入口,但仍需要继续把重任务全面迁移到 worker。

3. 数据表关系

主业务链路

users
  └─ projects
       ├─ novel_sources
       │    └─ novel_chapters
       ├─ copyright_records
       ├─ story_bibles
       ├─ world_bibles
       ├─ characters
       │    ├─ character_images
       │    └─ character_memories
       ├─ plot_memories
       ├─ plot_threads
       ├─ episodes
       │    ├─ episode_scripts
       │    ├─ storyboard_shots
       │    │    ├─ shot_images
       │    │    └─ video_clips
       │    └─ render_tasks
       ├─ assets
       ├─ content_reviews
       ├─ case_showcases
       ├─ project_creative_patterns
       └─ analytics_events

AI/任务/审计链路

provider_configs
  ├─ provider_logs
  └─ render_tasks.provider_id

render_tasks
  ├─ assets(output_asset_id)
  ├─ provider_logs(task_id)
  └─ quota_logs(task_id)

operation_logs
  └─ target_type + target_id 记录用户/后台/Router 操作轨迹

system_configs
  └─ ai.router.v1 / security.api_crypto_enabled / current_stage

角色库链路

global_characters
  └─ global_character_assets

projects
  └─ characters.global_character_id
       ├─ character_images
       └─ actor_profiles

爆款诊断 / 模式库

hit_analysis_cases
  └─ hit_analysis_segments
       └─ creative_patterns
            └─ project_creative_patterns

关键表说明

作用
users 用户和管理员账号
projects 项目主表,区分 ai_original/uploadimage_manga/motion_comic/live_action_ai
novel_sources, novel_chapters 原创/上传小说源和章节
story_bibles, world_bibles 故事圣经、世界观设定
characters, global_characters 项目角色和全局角色库
character_images, actor_profiles 角色锚点图、真人演员定妆
episodes, episode_scripts, storyboard_shots 分集、脚本、分镜
shot_images 分镜图/关键帧
video_clips 真人视频片段
assets 私有/公开素材,包括小说、图片、音频、字幕、视频
render_tasks 生成任务、输入 JSON、成本、错误、输出素材
provider_configs AI Provider 配置
provider_logs Provider 调用日志、请求/响应摘要、成本
content_reviews 文本/视频审核
quota_accounts, quota_logs 用户额度
system_configs 系统配置,包括 Router 配置
operation_logs 操作日志和审计时间线

4. AI Provider 列表

Provider 默认模板来源:

  • backend/src/providers/provider.types.ts
  • backend/prisma/seed.ts
  • backend/prisma/migrations/20260602130000_domestic_video_providers/migration.sql

Mock Provider

Provider Code 类型
mock-text TextProvider
mock-novel NovelProvider
mock-image ImageProvider
mock-video VideoProvider
mock-voice VoiceProvider
mock-lipsync LipSyncProvider,默认禁用
mock-moderation ModerationProvider
mock-qc QualityCheckProvider
mock-file-parse FileParseProvider
mock-embedding EmbeddingProvider

OpenAI

Provider Code 类型 默认模型
openai-responses-text TextProvider gpt-5.5
openai-responses-novel NovelProvider gpt-5.5
openai-moderation ModerationProvider omni-moderation-latest
openai-embedding EmbeddingProvider text-embedding-3-small
openai-image ImageProvider gpt-image-2
openai-video VideoProvider sora-2
openai-tts VoiceProvider gpt-4o-mini-tts

视频 Provider

Provider Code 平台/模型 默认状态
minimax_hailuo_23_fast MiniMax Hailuo 2.3 Fast 图生视频 默认禁用,当前服务器已启用过
minimax_hailuo_23 MiniMax Hailuo 2.3 图生视频 默认禁用
alibaba_wan26_i2v_flash 阿里 Wan2.6 I2V Flash 默认禁用
alibaba_wan26_i2v 阿里 Wan2.6 I2V 标准 默认禁用
vidu_q3_turbo_reference Vidu Q3 Turbo 参考图生视频 默认禁用
vidu_q3_pro Vidu Q3 Pro 参考图生视频 默认禁用
jimeng_seedance 即梦/Seedance 图生视频 默认禁用
runway-image-to-video Runway Image-to-Video 默认禁用
kling-image-to-video Kling Image-to-Video 默认禁用
google-veo-video Google Veo Video 默认禁用
replicate-video Replicate Video 默认禁用
fal-video fal.ai Video 默认禁用
luma-ray-video Luma Ray Video 默认禁用
pika-video Pika Video 默认禁用

文本/小说 Provider

Provider Code 平台
google-gemini-text, google-gemini-novel Google Gemini
anthropic-claude-text, anthropic-claude-novel Anthropic Claude
deepseek-text, deepseek-novel DeepSeek
qwen-text, qwen-novel Alibaba Qwen
kimi-text, kimi-novel Moonshot Kimi
zhipu-glm-text, zhipu-glm-novel 智谱 GLM
baidu-qianfan-text 百度千帆
tencent-hunyuan-text 腾讯混元
iflytek-spark-text 讯飞星火
volcengine-doubao-text, volcengine-doubao-novel 火山/豆包
minimax-text MiniMax
baichuan-text 百川
stepfun-text 阶跃星辰
sensenova-text 商汤日日新
ai360-text 360 AI
mistral-text Mistral
cohere-command-text Cohere
xai-grok-text xAI Grok
openrouter-text OpenRouter
together-llama-text Together
fireworks-llama-text Fireworks
perplexity-sonar-text Perplexity
azure-openai-text Azure OpenAI
aws-bedrock-openai-compatible-text AWS Bedrock OpenAI-compatible

图片 Provider

Provider Code 平台
google-gemini-image Google Gemini Image
stability-image Stability AI
replicate-flux-image Replicate Flux
fal-flux-image fal.ai Flux
ideogram-image Ideogram
leonardo-image Leonardo
openai-image OpenAI Image
mock-image Mock

语音 Provider

Provider Code 平台
openai-tts OpenAI TTS
elevenlabs-tts ElevenLabs
minimax-tts MiniMax TTS
volcengine-tts 火山 TTS
mock-voice Mock

Lip Sync Provider

Provider Code 状态
mock-lipsync Mock,占位
minimax-lipsync 占位,需确认公开 API
alibaba-videoretalk-lipsync 阿里 VideoRetalk,要求公网 video_url/audio_url
heygen-lipsync 默认禁用
sync-labs-lipsync 默认禁用
fal-veed-lipsync 默认禁用
volcengine-doubao-lipsync 占位,需确认公开 API
generic-lipsync 通用适配器

5. Router 逻辑

实现文件:

  • backend/src/ai-router/ai-router.service.ts
  • backend/src/ai-router/ai-router.types.ts
  • 真人视频调用入口:backend/src/live-action/live-action.service.ts

默认配置

system_configs.config_key = ai.router.v1

{
  "version": 1,
  "enabled": true,
  "default_language": "zh-CN",
  "daily_budget": 500,
  "live_action_video": {
    "zh-CN": {
      "thresholds": {
        "premium_importance_gt": 7,
        "premium_action_gt": 5
      },
      "normal": {
        "provider_code": "minimax_hailuo_23_fast",
        "fallback_chain": ["minimax_hailuo_23_fast", "jimeng_seedance", "mock-video"]
      },
      "premium": {
        "provider_code": "kling-image-to-video",
        "fallback_chain": ["kling-image-to-video", "minimax_hailuo_23_fast", "jimeng_seedance", "mock-video"]
      }
    }
  }
}

评分字段

StoryboardShot 上已落库:

  • scene_type
  • importance_score
  • emotion_score
  • action_score
  • route_tier

决策流程

StoryboardShot
  -> scoreLiveActionShot()
       scene_type / importance / emotion / action / route_tier
  -> resolveLiveActionVideoRoute()
       如果后台传 provider_code 且允许 override:走人工 Provider
       否则读取 ai.router.v1
  -> fallback_chain
       normal: Hailuo -> Jimeng -> Mock
       premium: Kling -> Hailuo -> Jimeng -> Mock
  -> Provider 可用性检查
       provider 存在
       is_enabled=true
       单片段成本不超过 max_cost_per_clip
       当日预算不超过 daily_budget
  -> 输出 AiRouteDecision
       provider_code
       fallback_chain
       candidates
       estimated_cost
       decision_reason
       scores

已实现能力

  • 没传 provider_code 时自动走 Router。
  • 后台/管理员可人工 override。
  • 任务 input_json 记录 router_decision
  • 支持 fallback 链、禁用 Provider 跳过、成本上限跳过、日预算跳过。
  • Router 审计数据可从 RenderTask.input_jsonProviderLogOperationLog 读取。

待优化

  • Router 当前重点服务真人视频片段,文本/图片/TTS 多 Provider Router 仍可继续统一。
  • 日预算目前基于 ProviderLog 聚合,缺少更强的账户级预算锁。
  • Premium 阈值配置存在,但 routeTierForScores 的细节还可进一步后台可视化。
  • Router 决策的人工可解释 UI 还可继续增强。

6. Prompt Builder 实现情况

实现文件:

  • backend/src/live-action/prompt-builder.service.ts
  • 调用点:backend/src/live-action/live-action.service.ts

已实现

LiveActionPromptBuilderService 已实现真人视频 Prompt Engine V1

  • Provider profile
    • generic
    • hailuo
    • kling
    • mock
  • 结构化输入:
    • 项目/集/镜头编号
    • Provider Code
    • scene type / route tier
    • duration
    • characters
    • actor consistency rules
    • location
    • action
    • visual description
    • camera motion / camera instruction
    • performance instruction
    • dialogue / narration
    • effect type
    • scores
    • lip-sync policy
    • director plan
  • 输出:
    • prompt
    • negative_prompt
    • components
    • prompt_version
    • provider_profile

场景模板

Prompt Builder 内置 scene template,用于决定:

  • camera shot
  • camera move
  • lighting
  • performance
  • vfx cue
  • sound cue
  • negative motion

Hailuo 专项

Hailuo profile 会输出中文短剧 Prompt,包含:

  • 真人短剧竖屏 9:16
  • 项目/集/镜头信息
  • 场景、人物、演员一致性
  • 主动作
  • Motion Director
  • Director Plan
  • 镜头、表演、光线、特效、后期音效提示
  • lip-sync fallback 约束
  • “只完成一个主要动作,不要突然切场景”
  • Hailuo 负面词中包含避免“一条 clip 塞长多动作”

Lip Sync 策略

当没有稳定 lip-sync Provider 或镜头不适合正脸说话时,策略会落为:

  • post_tts_subtitle_light_mouth

Prompt 会要求:

  • 避免正脸嘴部特写
  • 台词后期由 TTS 和字幕处理
  • 演员只做轻微口型/反应/表情

Motion Director / Director Plan

Live Action Service 会补充:

  • director_plan
    • scene group
    • shot role
    • shot size
    • continuity in/out
    • edit intent
    • sound bridge
  • motion_director
    • time beats
    • camera rhythm
    • vfx timing
    • sound hits
    • negative motion

待优化

  • Prompt Library/题材套路库已经有数据表,但与 Prompt Builder 的深度联动还不完整。
  • 爆款拉片沉淀的 creative_patterns 还未全面驱动真人视频 Prompt。
  • 专业音效/BGM 的剧情化选择已部分在 Live Action 后期里实现,但还缺可运营素材库。
  • 多 Provider 差异化 Prompt 可继续细分,如 Kling/Runway/Veo 专用结构。

7. Character Library 实现情况

实现文件:

  • backend/src/characters/characters.service.ts
  • backend/src/live-action/live-action.service.ts
  • 数据表:characters, global_characters, global_character_assets, character_images, actor_profiles

项目角色

已实现:

  • 从故事圣经和章节抽取角色。
  • 角色字段包含:
    • name / aliases / role_type
    • gender / age / identity
    • appearance / face / hair / eye / body
    • costume / props
    • personality / speech / relationship / arc
    • negative_rules
    • anchor_asset_id
    • voice provider/model/id/style
    • performance_style
  • 角色确认后锁定关键字段。
  • 锁定后只允许有限字段变更,避免破坏一致性。
  • 角色锚点图生成、重生成、切换锚点。

全局角色库

已实现数据结构:

  • global_characters
  • global_character_assets
  • 项目角色可通过 global_character_id 关联全局角色。

当前定位:

  • 已具备全局角色库基础表和后台入口。
  • 更偏“生产系统预留 + 初步可用”,还不是完整运营级角色资产市场。

真人 Actor Profile

Live Action 已实现:

  • actor_profiles
  • 每个项目角色生成演员定妆。
  • 字段包含:
    • actor_desc
    • appearance_rules
    • wardrobe_rules
    • performance_style
    • voice_style
    • reference_asset_ids
    • anchor_asset_id

Actor Lock V1

已实现:

  • 生成每个真人视频镜头时,只把该镜头出现的角色 ActorProfile 注入 Provider Prompt。
  • 记录:
    • actor_lock.character_names
    • actor_lock.actor_hints
    • reference_asset_ids
    • provider_character_reference_enabled
    • actor_lock.audit
  • 防止“全项目角色混入一个镜头”。
  • 任务 input_json.actor_lock 可审计。

待优化

  • 多角色同镜头的脸部一致性仍依赖 Provider 能力。
  • 角色参考图/定妆图生成质量还需要更多真实 Provider 对比。
  • 全局角色复用、授权、商用范围、声音样本绑定仍需完善运营闭环。

8. FFmpeg 流程

普通漫剧/图片视频流程

实现文件:

  • backend/src/media/media.service.ts

流程:

confirmed storyboard shots
  -> shot_images
  -> generateEpisodeAudio()
       多角色 TTS
       同文本 + 同 voice 缓存复用
       segment files 落盘
       timeline warnings
  -> generateEpisodeSubtitle()
       dialogue-level SRT
       shot-level SRT 可选
  -> renderEpisodeVideo()
       prefer_ffmpeg=true 时走本地 FFmpeg
       图片转视频
       音频/字幕合成
       输出 MP4 Asset

FFmpeg 能力:

  • 检查 ffmpeg 是否存在。
  • 分镜图写入临时目录。
  • 音频/字幕素材写入临时目录。
  • SRT 转 ASS 字幕。
  • 图片生成视频轨。
  • 音频混合。
  • 输出 video/mp4
  • 失败时写 RenderTask.error_code/error_message

真人短剧流程

实现文件:

  • backend/src/live-action/live-action.service.ts

片段生成:

StoryboardShot + keyframe
  -> Router 选 Provider
  -> Prompt Builder
  -> Provider 生成 6s/10s clip
  -> action_beat_mode 可拆成 2-3 段
  -> 多段之间可提取上一段末帧作为下一段关键帧
  -> concat + trim 到目标时长
  -> VideoClip + Asset

整集合成:

VideoClip assets
  -> normalizeLiveActionClipForRender()
       ffprobe 探测源时长
       超出目标时长则自动裁切
       记录 clip_normalization
  -> concatVideoClips()
  -> prepareLiveActionPostProductionAssets()
       TTS 对白
       SRT/ASS 字幕
       BGM
       SFX
       可选 lip-sync
  -> finalizeLiveActionRenderWithPostProduction()
       视频调色/暗角/字幕
       dialogue + bgm + sfx 混音
       loudnorm / limiter
       输出 episode-final.mp4

真人后期 FFmpeg 参数特点:

  • libx264
  • -preset veryfast
  • -crf 20
  • yuv420p
  • +faststart
  • 音频 aac 160k 44100 stereo
  • BGM fade in/out
  • SFX limiter
  • dialogue loudnorm
  • 混音 amix normalize=0
  • 字幕走 ASS/FFmpeg subtitles filter

已记录审计

  • renderTask.input_json.clip_normalization
  • 是否裁切、源时长、目标时长、最终时长、裁切策略、trim start。
  • 最终成片状态:
    • 全 mock clip -> asset mock
    • 任一真实 clip -> asset active

9. 当前已完成功能

系统 A 基础 MVP

  • 用户注册登录。
  • 项目创建。
  • AI 原创小说 mock 流程。
  • 上传小说、解析、章节拆分。
  • 版权确认。
  • 故事圣经生成/确认。
  • 角色抽取/确认。
  • 角色锚点图。
  • 长篇记忆。
  • 分集计划。
  • 单集脚本。
  • 分镜脚本。
  • 图片生成 mock/Provider 抽象。
  • 多角色 TTS。
  • 字幕生成。
  • FFmpeg 合成 MP4。
  • 用户端查看进度、预览、下载。
  • 后台项目管理、任务管理、Provider 管理。
  • 内容审核。
  • 公开案例授权。
  • 额度账户和冻结额度。

AI Provider

  • Provider 抽象层。
  • Mock Provider。
  • OpenAI Provider 模板。
  • 国内外主流文本/图片/视频/TTS/lip-sync Provider 模板。
  • Provider 日志。
  • Provider 成本摘要。
  • 后台统一保存同公司 Key 的体验优化。
  • MiniMax TTS 实测修复:
    • voice_id 映射
    • 空音频错误识别
    • Provider 拒绝错误透出。

真人短剧

  • live_action_ai 输出模式。
  • 演员定妆 ActorProfile。
  • 真人分镜改写。
  • 关键帧生成/上传绑定。
  • 视频片段生成:
    • Hailuo / Kling / Jimeng / Mock 路由
    • preflight
    • 成本预估
    • 单片段成本上限
    • 真实费用确认
    • action beat 拆段
    • candidate_count 支持
  • Router 质检闭环:
    • 质检
    • 低分自动重试
    • fallback Provider
    • manual_required
    • 人工通过/驳回
  • 片段重试。
  • 小样测试台。
  • 真人整集合成。
  • TTS/BGM/SFX/字幕后期合成。
  • clip normalization 自动裁切。
  • actor lock 审计。

前端/后台体验

  • 用户端制作页已改为单列纵向流程。
  • 每步完成后自动滚动到下一步。
  • 用户端真人视频面板已同步 action beat 控制。
  • 后台深色运营台风格。
  • 后台 AI 平台入口和配置。
  • Router/质检审计视图和操作闭环已有实现。

10. 待优化功能

生产级队列化

  • 当前 BullMQ/worker 框架已存在,但重型生成流程仍有大量 API 同步执行。
  • 需要把:
    • 重新质检
    • 自动修复
    • 指定 Provider 重试
    • 真人视频生成
    • FFmpeg 合成 全部任务化,形成可暂停、恢复、重跑、精确计费的队列闭环。

真人视频质量

  • Hailuo 对复杂动作、翻滚、结印、法相天地等高复杂特效表现不稳定。
  • 需要更多 Provider 准入测试:
    • Kling
    • Runway
    • Vidu
    • Veo
    • 阿里 Wan
    • 即梦/Seedance
  • 都市短剧可继续用 Hailuo 主力;修仙/特效/复杂动作需要更强模型。

Lip Sync

  • 已有 lip-sync 抽象和多个 Provider 占位。
  • 稳定公开 API 仍需逐个平台实测。
  • MiniMax/豆包 lip-sync 目前标为占位,不能假定已稳定可用。
  • 阿里 VideoRetalk 需要公网 video_url/audio_url,素材公网桥接已设计但仍需生产验证。

Prompt Engine

  • 真人 Prompt Builder V1 已落地。
  • Prompt Library / CreativePattern 与实际脚本、分镜、真人 Prompt 的联动还需加强。
  • 需要题材模板:
    • 都市逆袭
    • 霸总打脸
    • 修仙法相
    • 聊斋志异
    • 次元壁
  • 需要把拉片分析的镜头语言、音效、BGM、剪辑节奏转为可复用模板。

Character Library

  • 全局角色表已存在。
  • 还需要:
    • 前台化角色资产库
    • 商用授权状态
    • 角色复用统计
    • voice sample 管理
    • 多项目角色一致性验证

成本/ROI

  • Provider 成本估算和日志已有。
  • 还需接真实账单回填、播放数据、完播率、收益,形成 ROI:
    • 每题材 ROI
    • 每 Provider 成本/成功率
    • 每镜头类型失败率
    • 每集成本和收益

数据清理/生产隔离

  • 当前服务器数据库包含大量测试项目、任务、素材和 ProviderLog。
  • Git 只提交源码,不提交数据库和 storage。
  • 上线前建议:
    • 分测试库/生产库
    • 测试素材定期清理
    • ProviderLog 按时间归档
    • storage 生命周期策略

11. 关键文件路径

根目录

文件 作用
README.md 项目说明
OPERATION_GUIDE.md 操作说明
AGENTS.md Codex 开发约束
.env.example 环境变量模板
.gitignore Git 忽略规则
CODEX_PROGRESS.md 阶段进度记录
AI_VIDEO_TEST_LESSONS.md 真人视频测试经验记录
CURRENT_ARCHITECTURE.md 当前架构文档

后端

文件 作用
backend/src/app.module.ts Nest 模块总入口
backend/src/main.ts 后端启动入口
backend/prisma/schema.prisma 数据库 schema
backend/prisma/migrations/*/migration.sql 数据库迁移
backend/prisma/seed.ts 初始 mock Provider、Router、管理员
backend/src/providers/provider.types.ts Provider 默认模板和成本摘要
backend/src/providers/providers.service.ts Provider bootstrap、执行、日志、配置
backend/src/ai-router/ai-router.service.ts Router 决策
backend/src/ai-router/ai-router.types.ts Router 默认配置和类型
backend/src/live-action/live-action.service.ts 真人短剧核心流程
backend/src/live-action/prompt-builder.service.ts 真人 Prompt Builder
backend/src/media/media.service.ts TTS、字幕、普通 FFmpeg 合成
backend/src/assets/storage.service.ts 存储抽象
backend/src/admin/admin.service.ts 后台审计和管理

用户端

文件 作用
user-app/src/pages/index/index.vue 用户端主制作台
user-app/src/api/client.ts 用户端 API 封装
user-app/src/workflow.ts 工作流标签和进度
user-app/src/styles.css 用户端样式

后台端

文件 作用
admin/src/App.vue 后台管理主界面
admin/src/api/client.ts 后台 API 封装
admin/src/styles.css 后台样式

Worker

文件 作用
workers/src/main.ts BullMQ worker 入口

运维

文件 作用
deploy/docker-compose.dev.yml 开发依赖服务
deploy/nginx.https.example.conf Nginx HTTPS 示例
deploy/README.md 部署说明

12. 当前架构判断

当前系统已经从“普通 AI 漫剧 MVP”扩展到“AI 真人短剧生产流水线雏形”:

  • 基础项目/小说/故事/角色/分集/脚本/分镜/合成已跑通。
  • Provider 抽象、Router、质检、成本、审计已经具备生产系统骨架。
  • 真人短剧的关键难点已经开始落地:
    • 角色定妆
    • Actor Lock
    • 专业 Prompt Builder
    • 真实 Provider 小样
    • 片段质检
    • 后期音频/BGM/SFX/字幕
    • FFmpeg 裁切/拼接/混音

下一阶段最重要的不是继续堆 Provider,而是把真人视频生产质量和任务稳定性打磨成可重复流水线:

  1. 真实 Provider 准入矩阵。
  2. 队列化/失败恢复。
  3. Prompt Library 与拉片模式库联动。
  4. 角色库运营化。
  5. 真实成本/ROI 回流。