dengzedong
2025-02-27 6205c22a959fbb3b69735f34af8d3316c4082a5d
提交 | 用户 | 时间
7fd198 1 package com.iailab.module.model.mdk.sample;
2
b3674c 3 import com.iailab.module.model.mdk.vo.StAdjustDeviationDTO;
50084d 4 import com.iailab.module.model.mdk.common.exceptions.ModelInvokeException;
7fd198 5 import com.iailab.module.model.mdk.sample.dto.SampleData;
6 import com.iailab.module.model.mdk.sample.dto.SampleInfo;
efdc38 7 import lombok.extern.slf4j.Slf4j;
7fd198 8 import org.springframework.beans.factory.annotation.Autowired;
9 import org.springframework.stereotype.Component;
10
11 import java.text.MessageFormat;
12 import java.util.Date;
13 import java.util.List;
6c2ff1 14 import java.util.Map;
7fd198 15
16 /**
17  * 样本构造
18  *
19  * @author PanZhibao
20  * @Description
21  * @createTime 2024年09月03日
22  */
efdc38 23 @Slf4j
7fd198 24 @Component
25 public class SampleConstructor {
26
27     @Autowired
28     private SampleFactory sampleFactory;
29
bab433 30     public List<SampleData> constructSample(String typeA, String modelId, Date runTime,String itemName,
31                                             Map<Integer, Integer> dynamicDataLength) throws ModelInvokeException {
7fd198 32         try {
33             SampleInfoConstructor sampleInfoConstructor = sampleFactory.createSampleInfo(typeA, modelId);
bab433 34             SampleInfo sampleInfo = sampleInfoConstructor.prepareSampleInfo(modelId, runTime, dynamicDataLength);
eca625 35             SampleDataConstructor sampleDataConstructor = sampleFactory.createSampleData(typeA);
7fd198 36             return sampleDataConstructor.prepareSampleData(sampleInfo);
37         } catch (Exception e) {
c9dd12 38             e.printStackTrace();
efdc38 39             log.error("获取模型的算法参数异常",e);
50084d 40             throw new ModelInvokeException(MessageFormat.format("{0},Name:{1}",
D 41                     ModelInvokeException.errorGetModelArithParam, itemName));
7fd198 42         }
43
44
45     }
fdcde1 46
47     public List<SampleData> constructSample(String typeA, String modelId, Date runTime,String itemName,
b3674c 48                                             Map<Integer, Integer> dynamicDataLength, List<StAdjustDeviationDTO> deviationList) throws ModelInvokeException {
fdcde1 49         try {
50             SampleInfoConstructor sampleInfoConstructor = sampleFactory.createSampleInfo(typeA, modelId);
51             SampleInfo sampleInfo = sampleInfoConstructor.prepareSampleInfo(modelId, runTime, dynamicDataLength);
b3674c 52             sampleInfo.setDeviation(deviationList);
fdcde1 53             SampleDataConstructor sampleDataConstructor = sampleFactory.createSampleData(typeA);
54             return sampleDataConstructor.prepareSampleData(sampleInfo);
55         } catch (Exception e) {
56             e.printStackTrace();
57             log.error("获取模型的算法参数异常",e);
58             throw new ModelInvokeException(MessageFormat.format("{0},Name:{1}",
59                     ModelInvokeException.errorGetModelArithParam, itemName));
60         }
61
62
63     }
7fd198 64 }