mortred_model_server

P4 Modern Model Developer Experience TODO List

历史执行清单,不是用户手册。 现行接入见 how_to_add_new_model.zh-cn.md

执行分支:refactor/models-p4-developer-experience
方案文档:model-developer-experience-p4.zh-cn.md
勾选规则:只有该步骤代码、测试、文档和必要验证全部完成后才标记为完成。

总览

阶段 状态
Phase 0 基线与度量 已完成
Phase 1 Runtime Toolkit 已完成
Phase 2 Model Catalog 已完成
Phase 3 Scaffolder 已完成
Phase 4 IO 拆分 已完成
Phase 5 测试注册化 已完成
Phase 6 模型族迁移 已完成
Phase 7 多 Session 模板 已完成
Phase 8 文档与引导 已完成

准备工作

Phase 0:基线与度量

Phase 1:Model Runtime Toolkit

Phase 2:Model Catalog

Phase 2 落地说明:

Phase 3:Scaffolder

Phase 3 落地说明:

Phase 4:IO 拆分

Phase 4 落地说明:

Phase 5:测试注册化

Phase 5 落地说明:

Phase 6:模型族迁移

顺序清单

每个模型族验收

Phase 6 进度说明(截至 enhancement 批次):

Phase 7:多 Session 模板

Phase 7 进度说明(步骤 1-3 完成):

Phase 7 收尾结论(LDM 评估后)

LDM 不迁移,理由是结构性的,不是实现细节:

  1. LDMSampler 继承 BaseAiModel 而非 BackendCvModel,而 MultiSessionModel 派生自 BackendCvModel;迁移要先改基类。
  2. session 不是通过自身 section 的 <key>_backend 子表创建,而是从 两个外部 TOML 文件latent_diffusion_cfg / vae_decoder_cfg)加载。
  3. 决定性障碍:DDIM 和 DDPM 是共享同一个 shared_ptr<LatentDenoiseModel> 的两个调度器——一个 session 被两条编排路径共用,与「每个命名引擎一个 session」正好相反。
  4. 子模型(DDPMUNet / AutoEncoderKL)本身已是完整的 BackendCvModel, 各自通过自己的 [DDPM_UNET].backend / [AUTOENCODER_KL].backend 持有 session。

LDM 是「多个独立模型的组合」,不是「一个多引擎模型」。强行套模板需要改基类、 重构配置加载、并破坏共享 UNet 的设计。且 LDM 没有 golden 用例,无零漂移兜底。

Phase 7 最终状态

Phase 8:文档与引导

Phase 8 落地说明:

总验收