Refactor: 모델 학습 진행 해결

This commit is contained in:
김용수 2024-09-30 13:20:46 +09:00
parent 6d6cd8b134
commit a6b2891dd1
3 changed files with 9 additions and 24 deletions

View File

@ -29,10 +29,9 @@ import java.util.List;
public class AiModelController {
private final AiModelService aiModelService;
private final ProgressService progressService;
@Operation(summary = "프로젝트 모델 조회", description = "프로젝트에 있는 모델을 조회합니다.")
@SwaggerApiSuccess(description = "프로젝트 멤버를 성공적으로 조회합니다.")
@SwaggerApiSuccess(description = "프로젝트 모델을 성공적으로 조회합니다.")
@SwaggerApiError({ErrorCode.EMPTY_REQUEST_PARAMETER, ErrorCode.SERVER_ERROR})
@GetMapping("/projects/{project_id}/models")
public List<AiModelResponse> getModelList(

View File

@ -57,11 +57,17 @@ public class ProgressCacheRepository {
return redisTemplate.opsForHash().hasKey(key, String.valueOf(projectId));
}
public void removeTrainProgress(final int projectId){
public void removeTrainProgress(final int projectId) {
String key = CacheKey.trainProgressKey();
redisTemplate.opsForHash().delete(key, String.valueOf(projectId));
}
public int getProgressModelId(final int projectId) {
String key = CacheKey.autoLabelingProgressKey();
Object modelId = redisTemplate.opsForHash().get(key, String.valueOf(projectId));
return modelId == null ? 0 : (int) modelId;
}
/**
* 현재 학습 진행 여부 확인 메서드 (단일 사용)
*/
@ -92,26 +98,6 @@ public class ProgressCacheRepository {
.toList();
}
public int getProgressModelByProjectId(final int projectId) {
String key = CacheKey.trainModelKey(projectId);
log.debug("key : {}", key);
// train:<projectId>:* 형태의 번째 키를 가져옴
Set<String> keys = redisTemplate.keys(key);
// 모델 ID를 추출하여 반환
if (keys != null && !keys.isEmpty()) {
String firstKey = keys.iterator().next(); // 번째 가져오기
String[] parts = firstKey.split(":");
return Integer.parseInt(parts[2]); // modelId가 번째 위치
}
return 0;
}
public void clearProgressModel(final int modelId) {
redisTemplate.delete(CacheKey.progressStatusKey(modelId));
}
private ReportResponse convert(String data) {
return gson.fromJson(data, ReportResponse.class);
}

View File

@ -53,7 +53,7 @@ public class ProgressService {
}
public int getProgressModelByProjectId(final int projectId) {
return progressCacheRepository.getProgressModelByProjectId(projectId);
return progressCacheRepository.getProgressModelId(projectId);
}
public List<ReportResponse> getProgressResponse(final int projectId, final int modelId) {