모델등록시 JSON파일(상태값) 파싱 추가
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
package com.kamco.cd.kamcoback.model.service;
|
||||
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.kamco.cd.kamcoback.common.utils.FIleChecker;
|
||||
import com.kamco.cd.kamcoback.common.utils.FIleChecker.Basic;
|
||||
import com.kamco.cd.kamcoback.config.api.ApiResponseDto;
|
||||
@@ -10,6 +12,8 @@ import com.kamco.cd.kamcoback.postgres.core.ModelMngCoreService;
|
||||
import com.kamco.cd.kamcoback.upload.dto.UploadDto;
|
||||
import com.kamco.cd.kamcoback.upload.service.UploadService;
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
@@ -81,6 +85,30 @@ public class ModelMngService {
|
||||
modelMetricAddReq.setLoss(0);
|
||||
modelMetricAddReq.setIou(0);
|
||||
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
String filePath = addReq.getClsModelPath()+addReq.getClsModelFileName();
|
||||
String dataJson = null;
|
||||
try {
|
||||
dataJson = Files.readString(Path.of(filePath));
|
||||
JsonNode node = mapper.readTree(dataJson);
|
||||
|
||||
double f1_score = node.get("properties").get("f1_score").asDouble();
|
||||
double precision = node.get("properties").get("precision").asDouble();
|
||||
double recall = node.get("properties").get("recall").asDouble();
|
||||
double loss = node.get("properties").get("loss").asDouble();
|
||||
double iou = node.get("properties").get("iou").asDouble();
|
||||
|
||||
modelMetricAddReq.setF1Score(f1_score);
|
||||
modelMetricAddReq.setPrecision(precision);
|
||||
modelMetricAddReq.setRecall(recall);
|
||||
modelMetricAddReq.setLoss(loss);
|
||||
modelMetricAddReq.setIou(iou);
|
||||
|
||||
} catch (IOException e) {
|
||||
return new ApiResponseDto.ResponseObj("fail", "JSON파일 오류");
|
||||
}
|
||||
|
||||
|
||||
modelMngCoreService.insertModelResultMetric(modelMetricAddReq);
|
||||
|
||||
return new ApiResponseDto.ResponseObj(ApiResponseDto.ApiResponseCode.OK, "등록되었습니다.");
|
||||
@@ -121,7 +149,7 @@ public class ModelMngService {
|
||||
int endPos = 20;
|
||||
|
||||
List<Basic> files =
|
||||
FIleChecker.getFilesFromAllDepth(dirPath, "*", "pth,py", 10, "name", startPos, endPos);
|
||||
FIleChecker.getFilesFromAllDepth(dirPath, "*", "pth,py,json", 10, "name", startPos, endPos);
|
||||
|
||||
for (Basic dto : files) {
|
||||
// 예: 파일명 출력 및 추가 작업
|
||||
|
||||
Reference in New Issue
Block a user