版本260406
This commit is contained in:
82
OrpaonVision.Core/Training/IModelPackageAppService.cs
Normal file
82
OrpaonVision.Core/Training/IModelPackageAppService.cs
Normal file
@@ -0,0 +1,82 @@
|
||||
using OrpaonVision.Core.Results;
|
||||
using OrpaonVision.Core.Training.Contracts;
|
||||
using OrpaonVision.Core.Training.Contracts.Commands;
|
||||
|
||||
namespace OrpaonVision.Core.Training;
|
||||
|
||||
/// <summary>
|
||||
/// 模型包应用服务接口。
|
||||
/// </summary>
|
||||
public interface IModelPackageAppService
|
||||
{
|
||||
/// <summary>
|
||||
/// 构建模型包。
|
||||
/// </summary>
|
||||
/// <param name="command">构建模型包命令。</param>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>模型包ID。</returns>
|
||||
Task<Result<Guid>> BuildPackageAsync(BuildModelPackageCommand command, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 导出模型包。
|
||||
/// </summary>
|
||||
/// <param name="command">导出模型包命令。</param>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>导出文件信息。</returns>
|
||||
Task<Result<ExportFileDto>> ExportPackageAsync(ExportModelPackageCommand command, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 获取模型包详情。
|
||||
/// </summary>
|
||||
/// <param name="modelPackageId">模型包ID。</param>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>模型包详情。</returns>
|
||||
Task<Result<ModelPackageDetailDto>> GetDetailAsync(Guid modelPackageId, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 导入模型包。
|
||||
/// </summary>
|
||||
/// <param name="packagePath">模型包文件路径。</param>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>导入结果。</returns>
|
||||
Task<Result<ModelPackageImportResultDto>> ImportPackageAsync(string packagePath, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 校验模型包。
|
||||
/// </summary>
|
||||
/// <param name="modelPackageId">模型包ID。</param>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>校验结果。</returns>
|
||||
Task<Result<ModelPackageValidationResultDto>> ValidatePackageAsync(Guid modelPackageId, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 启用模型包。
|
||||
/// </summary>
|
||||
/// <param name="modelPackageId">模型包ID。</param>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>启用结果。</returns>
|
||||
Task<Result<ModelPackageActivationResultDto>> ActivatePackageAsync(Guid modelPackageId, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 停用模型包。
|
||||
/// </summary>
|
||||
/// <param name="modelPackageId">模型包ID。</param>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>停用结果。</returns>
|
||||
Task<Result<ModelPackageDeactivationResultDto>> DeactivatePackageAsync(Guid modelPackageId, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 回滚到指定版本。
|
||||
/// </summary>
|
||||
/// <param name="targetModelPackageId">目标模型包ID。</param>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>回滚结果。</returns>
|
||||
Task<Result<ModelPackageRollbackResultDto>> RollbackToPackageAsync(Guid targetModelPackageId, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 获取已导入的模型包列表。
|
||||
/// </summary>
|
||||
/// <param name="cancellationToken">取消令牌。</param>
|
||||
/// <returns>模型包列表。</returns>
|
||||
Task<Result<IReadOnlyList<ModelPackageSummaryDto>>> GetImportedPackagesAsync(CancellationToken cancellationToken = default);
|
||||
}
|
||||
Reference in New Issue
Block a user