@@ -479,24 +479,27 @@ impl TrainerService {
479479 Ok ( model_path) => {
480480 handle. status . running = false ;
481481 handle. model_path = Some ( model_path. clone ( ) ) ;
482-
482+
483483 // 保存训练完成的模型信息
484484 let model_info = TrainedModelInfo {
485485 id : training_id_clone. clone ( ) ,
486- project_name : project_name,
487- project_path : project_path_clone,
488- yolo_version : base_model_clone,
486+ project_name : project_name. clone ( ) ,
487+ project_path : project_path_clone. clone ( ) ,
488+ yolo_version : base_model_clone. clone ( ) ,
489489 model_size : "N/A" . to_string ( ) ,
490490 best_epoch : epochs_clone,
491491 total_epochs : epochs_clone,
492492 map50 : 0.0 ,
493493 map50_95 : 0.0 ,
494- model_path : model_path,
494+ model_path : model_path. clone ( ) ,
495495 created_at : chrono:: Utc :: now ( ) . to_rfc3339 ( ) ,
496496 } ;
497-
498- // 注意:这里需要通过某种方式保存model_info
499- // 实际实现中应该调用save_trained_model
497+
498+ if let Err ( e) = self . save_trained_model ( model_info) . await {
499+ eprintln ! ( "[Trainer] Failed to save trained model: {}" , e) ;
500+ }
501+ // burn_trainer 会在 train() 完成时自动发送 TrainingEvent::Complete
502+ // 命令层会收到并转发 "training-complete" 给前端
500503 }
501504 Err ( e) => {
502505 handle. status . running = false ;
0 commit comments