- 后端:/admin/trainings/combined 发起(≥2 数据集、类别重映射、防重名、负样本单份); model_training/model_version 加 kind+dataset_ids(迁移 v14),综合任务 dataset_id=0、 文件基名 combined(_n)、版本序列独立;训练列表补 published 标记 - 管理端:数据训练页工具栏发起综合训练;横幅常驻进行中任务 + 每档最近一条已结束任务, 成功未发布给「发布模型」入口(可关闭收起) - App:目录解析 kind/datasetIds、激活覆盖互斥、自动更新退场改目标档待办横幅手动一键下载
30 lines
2.3 KiB
Go
30 lines
2.3 KiB
Go
package entity
|
||
|
||
import "github.com/gogf/gf/v2/os/gtime"
|
||
|
||
// ModelTraining 训练任务:runner 启动训练进程,轮询解析 epoch 日志更新进度/指标,
|
||
// 日志尾部截断存 log_tail;pid 用于取消与存活探测。
|
||
// 状态机 queued → running → success/failed(queued=GPU 忙排队,轮询晋级启动)。
|
||
type ModelTraining struct {
|
||
Id int64 `json:"id" orm:"id" description:"自增主键"`
|
||
Name string `json:"name" orm:"name" description:"任务名"`
|
||
Status string `json:"status" orm:"status" description:"queued|running|success|failed"`
|
||
Variant string `json:"variant" orm:"variant" description:"档位 s(高识别)|n(高性能)"`
|
||
DatasetId int64 `json:"datasetId" orm:"dataset_id" description:"来源数据集(综合任务=0)"`
|
||
Kind string `json:"kind" orm:"kind" description:"species 单物种|combined 多物种综合"`
|
||
DatasetIds string `json:"datasetIds" orm:"dataset_ids" description:"综合任务覆盖的数据集 id JSON 数组"`
|
||
Imgsz int `json:"imgsz" orm:"imgsz" description:"训练分辨率"`
|
||
Epochs int `json:"epochs" orm:"epochs" description:"目标轮数"`
|
||
Batch int `json:"batch" orm:"batch" description:"batch size"`
|
||
Device string `json:"device" orm:"device" description:"训练设备"`
|
||
CurrentEpoch int `json:"currentEpoch" orm:"current_epoch" description:"当前轮数"`
|
||
TotalEpochs int `json:"totalEpochs" orm:"total_epochs" description:"实际总轮数(完成时写)"`
|
||
Metrics string `json:"metrics" orm:"metrics" description:"JSON {p,r,map50}"`
|
||
LogTail string `json:"logTail" orm:"log_tail" description:"日志尾部(截断)"`
|
||
Pid int `json:"pid" orm:"pid" description:"训练进程 pid"`
|
||
Error string `json:"error" orm:"error" description:"失败原因"`
|
||
StartedAt *gtime.Time `json:"startedAt" orm:"started_at" description:"开始时间"`
|
||
FinishedAt *gtime.Time `json:"finishedAt" orm:"finished_at" description:"结束时间"`
|
||
CreatedAt *gtime.Time `json:"createdAt" orm:"created_at" description:"创建时间"`
|
||
}
|