|
|
|
@@ -1030,40 +1030,45 @@ public class ModelsServiceImpl implements ModelsService { |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public List<Object> queryVersionsMetrics(QueryModelMetricsVo queryModelMetricsVo) { |
|
|
|
List<Object> batchMetrics = new ArrayList<>(); |
|
|
|
for (String version : queryModelMetricsVo.getVersions()) { |
|
|
|
ModelDependency1 modelDependency1 = modelDependency1Dao.queryByRepoAndVersion(queryModelMetricsVo.getRepoId(), queryModelMetricsVo.getIdentifier(), version); |
|
|
|
ModelMetaVo modelMetaVo = JSON.parseObject(modelDependency1.getMeta(), ModelMetaVo.class); |
|
|
|
HashMap<String, Object> metrics = modelMetaVo.getMetricsParams(); |
|
|
|
List<String> needMetrics = queryModelMetricsVo.getMetrics(); |
|
|
|
public Map<String, Object> queryVersionsMetrics(QueryModelMetricsVo queryModelMetricsVo) { |
|
|
|
Map<String, Object> batchMetrics = new HashMap<>(); |
|
|
|
List<String> needMetrics = queryModelMetricsVo.getMetrics(); |
|
|
|
|
|
|
|
for (String needMetric : needMetrics) { |
|
|
|
ArrayList<Map<String, Object>> result = new ArrayList<>(); |
|
|
|
if (Constant.Type_Train.equals(queryModelMetricsVo.getType())) { |
|
|
|
List<List<Map<String, Object>>> tarinDetail = (List<List<Map<String, Object>>>) metrics.get("tarinDetail"); |
|
|
|
if (tarinDetail != null && tarinDetail.size() > 0) { |
|
|
|
List<Map<String, Object>> trainMetrics = tarinDetail.get(0); |
|
|
|
for (Map<String, Object> trainMetric : trainMetrics) { |
|
|
|
if (needMetrics.contains((String) trainMetric.get("name"))) { |
|
|
|
result.add(trainMetric); |
|
|
|
|
|
|
|
for (String version : queryModelMetricsVo.getVersions()) { |
|
|
|
ModelDependency1 modelDependency1 = modelDependency1Dao.queryByRepoAndVersion(queryModelMetricsVo.getRepoId(), queryModelMetricsVo.getIdentifier(), version); |
|
|
|
ModelMetaVo modelMetaVo = JSON.parseObject(modelDependency1.getMeta(), ModelMetaVo.class); |
|
|
|
HashMap<String, Object> metrics = modelMetaVo.getMetricsParams(); |
|
|
|
|
|
|
|
if (Constant.Type_Train.equals(queryModelMetricsVo.getType())) { |
|
|
|
List<List<Map<String, Object>>> tarinDetail = (List<List<Map<String, Object>>>) metrics.get("tarinDetail"); |
|
|
|
if (tarinDetail != null && tarinDetail.size() > 0) { |
|
|
|
List<Map<String, Object>> trainMetrics = tarinDetail.get(0); |
|
|
|
for (Map<String, Object> trainMetric : trainMetrics) { |
|
|
|
if (needMetric.equals(trainMetric.get("name"))) { |
|
|
|
trainMetric.put("version", version); |
|
|
|
result.add(trainMetric); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
batchMetrics.add(result); |
|
|
|
} |
|
|
|
} else { |
|
|
|
List<List<Map<String, Object>>> evaluateDetail = (List<List<Map<String, Object>>>) metrics.get("evaluateDetail"); |
|
|
|
if (evaluateDetail != null && evaluateDetail.size() > 0) { |
|
|
|
List<Map<String, Object>> evaluateMetrics = evaluateDetail.get(0); |
|
|
|
|
|
|
|
for (Map<String, Object> trainMetric : evaluateMetrics) { |
|
|
|
if (needMetrics.contains((String) trainMetric.get("name"))) { |
|
|
|
result.add(trainMetric); |
|
|
|
} else { |
|
|
|
List<List<Map<String, Object>>> evaluateDetail = (List<List<Map<String, Object>>>) metrics.get("evaluateDetail"); |
|
|
|
if (evaluateDetail != null && evaluateDetail.size() > 0) { |
|
|
|
List<Map<String, Object>> evaluateMetrics = evaluateDetail.get(0); |
|
|
|
for (Map<String, Object> evaluateMetric : evaluateMetrics) { |
|
|
|
if (needMetric.equals(evaluateMetric.get("name"))) { |
|
|
|
evaluateMetric.put("version", version); |
|
|
|
result.add(evaluateMetric); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
batchMetrics.add(result); |
|
|
|
} |
|
|
|
} |
|
|
|
batchMetrics.put(needMetric, result); |
|
|
|
} |
|
|
|
|
|
|
|
return batchMetrics; |
|
|
|
} |
|
|
|
|
|
|
|
|