模型管理
这个功能解决什么问题
训练产出的 .pt 文件只是一个权重快照,离真正能拿去推理还有一段距离。同一个架构会被反复训练多次,每次训练又可能导出 ONNX、TensorRT 等不同推理格式。如果没有清晰的组织方式,很快就会陷入一堆名字差不多的文件里,找不到该用哪个。
模型管理模块用三层结构把这件事理顺:把同一架构同一任务类型的多次训练归到一个「模型系列」下,每次训练是一个不可变「版本」,每个版本下又能挂多个不同格式的「制品」。检测、主动学习、标注这些消费方都绑定到具体制品,不直接绑定模型本身。
三层模型体系
- Model(模型系列):项目内同一架构 + 同一任务类型的容器。例如
Yolov26n-Det是一个 Model,多次训练累积在它下面。 - ModelVersion(版本):一次训练产出的不可变快照。版本一旦发布,训练超参、数据集版本、汇总指标都不能再改。
- ModelArtifact(制品):版本下的可执行产物。
.pt是训练格式,ONNX、TensorRT、NPU 是推理格式,导出一次就多一个 Artifact。

模型来源
模型系列有两种产生方式:
- 训练自动注册:训练任务完成并发布后,系统按
(项目, 任务类型, 架构, 来源=training)匹配键查找已有 Model,找到就追加新版本,找不到就创建新 Model。同一架构多次训练始终累积在同一系列下,不会每次都新建。 - 手动上传
.pt文件:直接在模型管理页面上传已经训练好的权重。上传等同于立即发布,没有 draft 阶段。适合拿外部训练好的模型直接接入平台。
训练任务完成后,产物先进入「待发布」状态(completed_pending_registration)。需要你在训练详情面板里点「发布」按钮,把它注册为某个 Model 下的新 Version,才会出现在模型管理列表里。未发布的 draft 可以单独在检测页测试,详见模型测试与检测。
模型命名规则
训练自动注册的模型名格式是 {架构}-{任务类型},例如:
Yolov26n-Det(YOLOv26n 检测模型)Yolov8s-Seg(YOLOv8s 分割模型)Yolo11m-Pose(YOLO11m 姿态模型)
任务类型缩写:Det(检测)/ Seg(分割)/ Pose(姿态)/ OBB(旋转框)。
名称里不再追加训练任务名和 _best 后缀。模型是「系列」概念,名称稳定不变。
如果默认命名不符合团队习惯,可以在模型详情头部 hover 模型名称,出现铅笔图标后点击进入 inline 编辑,回车保存,Esc 取消。
模型详情页布局
进入某个模型后,看到的是「版本中心化」布局:

页面元素:
- 头部 5 张卡片:版本数、总参数量、预估内存、可剪枝模块、总模块数。这些是模型级事实,不随版本切换变化。
- 副标题行:模型大小、更新时间、版本数。
- 版本下拉选择器:切换查看不同版本,下方子 Tab 内容跟着切换。
- 3 个子 Tab:
- 总览:当前版本的 mAP 等汇总指标、超参快照、数据集版本信息。
- 训练:来源训练任务的详情、
results.csv指标曲线。 - 制品导出:该版本下的所有 Artifact(
.pt/ ONNX / TensorRT / NPU),从这里发起导出,详见模型导出。
头部 5 张卡片是模型级聚合数据。如果你想看某个具体版本的 mAP、精度、召回率,请切到「总览」子 Tab,那里展示版本级的训练汇总。
发布版本
一个 Model 下可能有多个 Version,但运行时消费方(检测、主动学习、标注 AI 流程)需要一个稳定的「默认指向」。
发布版本(default_version_id)就是模型系列里被标记为「当前生产使用」的那个版本。在模型详情页通过「设为发布版本」操作切换。
任一时刻每个 Model 有且仅有 1 个发布版本 + 0~N 个归档版本。设新发布版本时会自动把旧的发布版本归档,不需要手动操作。
归档版本只把状态置为 archived,权重和导出文件都还在。如果之后需要恢复,重新把它设为发布版本即可。
模型操作入口
模型详情头部提供两类操作:
重命名模型
把鼠标移到模型名称上,右侧会出现铅笔图标,点击进入 inline 编辑模式。回车保存,Esc 取消。新名字会同步到所有展示位置。
删除模型
点头部的
⋯菜单,选「删除模型」。会先弹出确认对话框,展示完整影响清单:- 该模型下的版本数
- 关联的训练任务数
确认后系统会遍历所有版本下的 Artifact,删除对应的 S3 物理文件,然后级联清理。关联的训练任务、检测任务、标注批次通过外键
ON DELETE SET NULL自动解除引用,不会阻断删除。
删除模型会物理清除所有版本的权重和导出文件。关联的训练任务会变成「无输出模型」状态,但任务记录本身保留。删除前的影响清单会列出全部关联,请仔细确认后再点确认。
字段说明
| 字段 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
模型名称 | 文本 | 必填 | — | 自动生成或手动编辑,格式建议 `{架构}-{任务类型}`,例如 Yolov26n-Det。 |
版本数 | 只读 | 可选 | — | 该 Model 下所有 Version 的总数,包括发布版本和归档版本。 |
总参数量 | 只读 | 可选 | — | 模型网络参数总量,影响推理时的显存占用。 |
可剪枝模块 / 总模块数 | 只读 | 可选 | — | 可用于结构化剪枝的模块占比,便于评估模型压缩空间。 |
发布版本 | 标记 | 可选 | — | 当前被设为默认版本的那个 Version,运行时消费方默认指向它。 |
常见问题
训练完成默认进入「待发布」状态。需要去训练 Tab 的详情面板里点「发布」按钮,把它注册为 Model 下的 Version 之后,才会出现在模型管理里。如果想先测试再决定发不发布,可以用训练详情里的「测试此 draft」入口。
不会。匹配键是 (项目, 任务类型, 架构, 来源=training),同一项目里同架构同任务类型的多次训练,都会累积到同一个 Model 下作为新 Version,不会重复创建系列。不同架构(比如 yolov8n 和 yolov26n)各自独立成 Model。
不会。训练任务记录本身保留,只是 output_model_id 被置空,状态显示为「无输出模型」。删除的是模型制品文件和 Model / Version / Artifact 数据库行,不级联删除训练任务。
版本下拉选择器会记住你最近一次选过的版本。下次进入同一个模型详情时,默认就停在那个版本上,不用每次重新翻。