[update] 停用/删除基础模型校验人工评估

This commit is contained in:
Liuyang 2025-01-20 16:53:59 +08:00
parent 6940f7c7cc
commit 10aa79a62e
5 changed files with 62 additions and 20 deletions

View File

@ -9,6 +9,7 @@ import cn.iocoder.yudao.module.llm.dal.dataobject.basemodel.BaseModelDO;
import cn.iocoder.yudao.module.llm.dal.mysql.basemodel.BaseModelMapper;
import cn.iocoder.yudao.module.llm.service.application.ApplicationService;
import cn.iocoder.yudao.module.llm.service.finetuningtask.FineTuningTaskService;
import cn.iocoder.yudao.module.llm.service.modelassesstaskmanual.ModelAssessTaskManualService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import org.springframework.context.annotation.Lazy;
@ -41,6 +42,9 @@ public class BaseModelServiceImpl implements BaseModelService {
@Resource
private FineTuningTaskService fineTuningTaskService;
@Resource
private ModelAssessTaskManualService modelAssessTaskManualService;
@Override
public Long createBaseModel (BaseModelSaveReqVO createReqVO) {
// 插入
@ -138,8 +142,8 @@ public class BaseModelServiceImpl implements BaseModelService {
validateModelUsesInApplicationCenter(id, modelName);
// 校验 基座模型 是否在 模型调优 有使用 是否为等待中
validateModelUsesInModelTuning(id, modelName);
// // 校验 基座模型 是否在 模型评估任务 有使用 是否为进行中
// validateModelUsesInModelAssessmentTask(id, modelName);
// 校验 基座模型 是否在 模型评估任务 有使用 是否为进行中
validateModelUsesInModelAssessmentTask(id, modelName);
// // 校验 基座模型 是否在 模型评估任务备份 有使用
// validateModelUsesInModelAssessmentTaskBackup(id, modelName);
}
@ -165,26 +169,27 @@ public class BaseModelServiceImpl implements BaseModelService {
* @param modelName 模型名称
*/
private void validateModelUsesInModelTuning (Long id, String modelName) {
Map<Long, String> modelTuning = fineTuningTaskService.getModelTuningByLabelId(id);
Map<Long, String> modelTuning = fineTuningTaskService.getModelTuningByModelId(id);
if (CollectionUtils.isNotEmpty(modelTuning)) {
String msg = String.format("模型【%s】在模型调优 %s 有使用,请先取消使用", modelName, modelTuning.values());
String msg = String.format("模型【%s】在模型调优 %s 有正在等待的任务,请先结束任务", modelName, modelTuning.values());
throw exception(new ErrorCode(10022_002, msg));
}
}
//
// /**
// * 校验模型是否在 模型评估任务 有使用
// *
// * @param id 模型ID
// * @param modelName 模型名称
// */
// private void validateModelUsesInModelAssessmentTask (Long id, String modelName) {
// Map<Long, String> modelAssessmentTask = modelAssessmentTaskService.getModelAssessmentTaskByLabelId(id);
// if (CollectionUtils.isNotEmpty(modelAssessmentTask)) {
// String msg = String.format("模型【%s】在模型评估任务 %s 有使用,请先取消使用", modelName, modelAssessmentTask.values());
// throw exception(new ErrorCode(10022_003, msg));
// }
// }
/**
* 校验模型是否在 模型评估任务 有使用
*
* @param id 模型ID
* @param modelName 模型名称
*/
private void validateModelUsesInModelAssessmentTask (Long id, String modelName) {
Map<Long, String> modelAssessmentTask = modelAssessTaskManualService.getModelAssessmentTaskByModelId(id);
if (CollectionUtils.isNotEmpty(modelAssessmentTask)) {
String msg = String.format("模型【%s】在模型评估-人工评估 %s 有正在进行的任务,请先结束任务", modelName, modelAssessmentTask.values());
throw exception(new ErrorCode(10022_003, msg));
}
}
//
// /**
// * 校验模型是否在 模型评估任务备份 有使用

View File

@ -92,5 +92,5 @@ public interface FineTuningTaskService {
* @param baseModelId 基础模型id
* @return 模型调优
*/
Map<Long, String> getModelTuningByLabelId (Long baseModelId);
Map<Long, String> getModelTuningByModelId (Long baseModelId);
}

View File

@ -203,7 +203,7 @@ public class FineTuningTaskServiceImpl implements FineTuningTaskService {
* @return 模型调优
*/
@Override
public Map<Long, String> getModelTuningByLabelId (Long baseModelId) {
public Map<Long, String> getModelTuningByModelId (Long baseModelId) {
if (baseModelId == null){
return Collections.emptyMap();

View File

@ -59,4 +59,12 @@ public interface ModelAssessTaskManualService {
void backupModelAssessTaskManual(Long id);
void unBackup(Long id);
/**
* 根据 基础模型id 获取 人工评估
*
* @param baseModelId 基础模型id
* @return 人工评估
*/
Map<Long, String> getModelAssessmentTaskByModelId (Long baseModelId);
}

View File

@ -5,6 +5,7 @@ import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetQuestionRe
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo.ModelAssessTaskManualBackupSaveReqVO;
import cn.iocoder.yudao.module.llm.dal.dataobject.basemodel.BaseModelDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.finetuningtask.FineTuningTaskDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassessstoplist.ModelAssessStoplistDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ManualModelAnnoDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ManualModelAnswerDO;
@ -19,9 +20,11 @@ import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanual.ManualModelAn
import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanual.ModelAssessDimensionMapper;
import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanual.ModelAssessTaskDimensionMapper;
import cn.iocoder.yudao.module.llm.dal.mysql.modelservice.ModelServiceMapper;
import cn.iocoder.yudao.module.llm.enums.FinetuningTaskStatusEnum;
import cn.iocoder.yudao.module.llm.service.async.AsyncModelAccessManualService;
import cn.iocoder.yudao.module.llm.service.dataset.DatasetQuestionService;
import cn.iocoder.yudao.module.llm.service.modelassesstaskmanualbackup.ModelAssessTaskManualBackupService;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@ -274,6 +277,32 @@ public class ModelAssessTaskManualServiceImpl implements ModelAssessTaskManualSe
modelAssessTaskManualMapper.updateById(modelAssessTaskManualDO);
}
/**
* 根据 基础模型id 获取 人工评估
*
* @param baseModelId 基础模型id
* @return 人工评估
*/
@Override
public Map<Long, String> getModelAssessmentTaskByModelId (Long baseModelId) {
if (baseModelId == null){
return Collections.emptyMap();
}
List<ModelAssessTaskManualDO> modelAssessTaskManualDOS = modelAssessTaskManualMapper.selectList(new LambdaQueryWrapper<ModelAssessTaskManualDO>()
.eq(ModelAssessTaskManualDO::getModelService, baseModelId)
// 2:进行中3推理中
.in(ModelAssessTaskManualDO::getStatus, 2, 3));
System.out.println(JSON.toJSON(modelAssessTaskManualDOS));
if (CollectionUtils.isNotEmpty(modelAssessTaskManualDOS)){
return modelAssessTaskManualDOS.stream().collect(Collectors.toMap(ModelAssessTaskManualDO::getId, ModelAssessTaskManualDO::getTaskName));
}
return Collections.emptyMap();
}
@Override
public List<ManualEvaluationReportRespVO> gitViewTheReportDetails(Long id) {
List<ManualEvaluationReportRespVO> manualEvaluationReportRespVOS = new ArrayList<>();