背景
当前能效智能调速算法涉及使用机器学习相关算法,而算法所需要的训练数据内置在BMC中无法进行修改,为满足不同客户的诉求,需提供替换和恢复训练数据的能力。
关联ISSUE
评审点
(1)新增资源协作路径:/bmc/kepler/Chassis/:ChassisId/ThermalSubsystem/AlgorithmsEngine;
(2)新增资源协作接口:bmc.kepler.Chassis.ThermalSubsystem.AlgorithmsEngine,AlgorithmsEngine接口下新增方法GetAlgorithmsList、Import和ResetToDefaults
详细描述
评审点1:新增资源协作路径:/bmc/kepler/Chassis/:ChassisId/ThermalSubsystem/AlgorithmsEngine
路径描述:新增能效智能调速算法路径,统一管理能效智能算法相关配置
实现接口
| 实现接口 | 实现接口描述 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| bmc.kepler.Chassis.ThermalSubsystem.AlgorithmsEngine | (1)实现GetAlgorithmsList方法,提供获取能效智能调速算法及其状态 (2)实现Import方法,提供能效智能算法导入配置的功能 (3)实现ResetToDefaults方法,提供能效智能算法恢复默认配置的功能 |
不涉及 | 新增接口,无兼容性问题 | 不涉及 |
评审点2:新增资源协作接口:bmc.kepler.Chassis.ThermalSubsystem.AlgorithmsEngine
接口描述:此接口用于管理能效智能调速算法的通用接口
新增方法
| 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 |
|---|---|---|---|---|---|---|
| GetAlgorithmsList | / | / | a{ssa{ss}} | 整体是一个数组AlgorithmsList,每一个数组对应一种算法类型,每一个数组元素为: AlgorithmType:智能调速算法类型 AlgorithmStatus:智能调速算法运行状态 CustomConfigurations:智能调速算法自定义配置生效状态 |
返回当前能效智能调速算法类型,算法运行状态和算法自定义配置生效状态 | ReadOnly |
| Import | sss | AlgorithmType:智能调速算法类型,枚举值,取值范围:MPC,后续可进行扩展 ConfigType: 导入配置类型,枚举值,取值范围TrainSet,表示训练集导入,后续可进行扩展 Content: 表示导入配置的文件路径名称 (当ConfigType取值为TrainSet时,表示训练集类型的配置导入,导入文件必须为csv格式, 所有训练数据必须打包为 单个 ZIP 压缩包),支持远程导入 注:当前针对AlgorithmType和ConfigType的取值在业务逻辑中进行校验 |
u | 成功返回:TaskId:任务id 错误返回: (1)检查是否有正在导入的任务,返回错误信息“ConfigurationImportingErr”;(2)传入文件不存在,返回错误信息“InvalidPath” (3)解压失败或是文件解析格式错误或数据不一致,返回错误信息“WrongFileFormat” (4)解析文件配置,属性值类型或取值范围不匹配,返回错误信息“PropertyValueMismatch” (5)其它错误导致导入数据失败,返回错误信息“InternalError” |
提供能效智能算法导入配置的功能 | BasicSetting |
| ResetToDefaults | ss | AlgorithmType:智能调速算法类型,枚举值,取值范围:MPC,后续可进行扩展 ResetType: 恢复配置类型,枚举值 ResetAll 恢复所有配置到默认值,后续可进行扩展 注:当前针对AlgorithmType和ResetType的取值在业务逻辑中进行校验 |
u | 成功返回:TaskId:任务id 错误返回: 如果对应算法正在执行导入或是恢复任务,返回错误信息“ResetOperationNotAllowed” |
恢复指定算法对应配置的默认值 | BasicSetting |
评审结论
通过,具体结论如下:
- 同意新增资源协作路径:/bmc/kepler/Chassis/:ChassisId/ThermalSubsystem/AlgorithmsEngine;
- 同意在新增资源协作路径下新增接口:bmc.kepler.Chassis.ThermalSubsystem.AlgorithmsEngine和其对应的方法:GetAlgorithmsList,Import,ResetToDefaults,接口的方法详细信息见评审点2;