using OrpaonVision.Core.Results; using OrpaonVision.Core.Training.Contracts; using OrpaonVision.Core.Training.Contracts.Commands; namespace OrpaonVision.Core.Training; /// /// 模型包应用服务接口。 /// public interface IModelPackageAppService { /// /// 构建模型包。 /// /// 构建模型包命令。 /// 取消令牌。 /// 模型包ID。 Task> BuildPackageAsync(BuildModelPackageCommand command, CancellationToken cancellationToken = default); /// /// 导出模型包。 /// /// 导出模型包命令。 /// 取消令牌。 /// 导出文件信息。 Task> ExportPackageAsync(ExportModelPackageCommand command, CancellationToken cancellationToken = default); /// /// 获取模型包详情。 /// /// 模型包ID。 /// 取消令牌。 /// 模型包详情。 Task> GetDetailAsync(Guid modelPackageId, CancellationToken cancellationToken = default); /// /// 导入模型包。 /// /// 模型包文件路径。 /// 取消令牌。 /// 导入结果。 Task> ImportPackageAsync(string packagePath, CancellationToken cancellationToken = default); /// /// 校验模型包。 /// /// 模型包ID。 /// 取消令牌。 /// 校验结果。 Task> ValidatePackageAsync(Guid modelPackageId, CancellationToken cancellationToken = default); /// /// 启用模型包。 /// /// 模型包ID。 /// 取消令牌。 /// 启用结果。 Task> ActivatePackageAsync(Guid modelPackageId, CancellationToken cancellationToken = default); /// /// 停用模型包。 /// /// 模型包ID。 /// 取消令牌。 /// 停用结果。 Task> DeactivatePackageAsync(Guid modelPackageId, CancellationToken cancellationToken = default); /// /// 回滚到指定版本。 /// /// 目标模型包ID。 /// 取消令牌。 /// 回滚结果。 Task> RollbackToPackageAsync(Guid targetModelPackageId, CancellationToken cancellationToken = default); /// /// 获取已导入的模型包列表。 /// /// 取消令牌。 /// 模型包列表。 Task>> GetImportedPackagesAsync(CancellationToken cancellationToken = default); }