增加 返回 人工评估自动评估 数据集名称 以及维度名称

This commit is contained in:
limin 2024-12-28 16:01:37 +08:00
parent 9621c41a0e
commit d3f8722f5a
6 changed files with 80 additions and 7 deletions

View File

@ -46,11 +46,14 @@ public class ModelAssessTaskAutoRespVO {
private Integer dimension;
@Schema(description = "自动评估列表")
private List<ModelAssessTaskStoplistDO> stoplists;
private List<ModelAssessTaskStoplistRespVO> stoplists;
@Schema(description = "模型评估任务状态使用字典llm_model_assess_task_status")
private Integer status;
@Schema(description = "模型名称")
private String modelServiceName;
@Schema(description = "数据集名称")
private String datasetName;
}

View File

@ -28,4 +28,7 @@ public class ModelAssessTaskStoplistRespVO {
@ExcelProperty("停用词ID")
private Long stoplistId;
@Schema(description = "停用词name")
private String stoplistName;
}

View File

@ -32,4 +32,7 @@ public class ModelAssessTaskDimensionRespVO {
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "评估维度模型")
private String dimensionName;
}

View File

@ -45,7 +45,7 @@ public class ModelAssessTaskManualRespVO {
private LocalDateTime createTime;
@Schema(description = "人工评估列表")
private List<ModelAssessTaskDimensionDO> dimensions;
private List<ModelAssessTaskDimensionRespVO> dimensions;
@Schema(description = "模型评估任务状态使用字典llm_model_assess_task_status")
private Integer status;
@ -56,6 +56,9 @@ public class ModelAssessTaskManualRespVO {
@Schema(description = "模型服务名称")
private String modelServiceName;
@Schema(description = "数据集名称")
private String datasetName;
}

View File

@ -1,9 +1,13 @@
package cn.iocoder.yudao.module.llm.service.modelassesstaskauto;
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo.ModelAssessTaskManualRespVO;
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassessstoplist.ModelAssessStoplistDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskauto.ModelAssessTaskStoplistDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ModelAssessTaskManualDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelservice.ModelServiceDO;
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetMapper;
import cn.iocoder.yudao.module.llm.dal.mysql.modelassessstoplist.ModelAssessStoplistMapper;
import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskauto.ModelAssessTaskStoplistMapper;
import cn.iocoder.yudao.module.llm.dal.mysql.modelservice.ModelServiceMapper;
import com.alibaba.druid.util.StringUtils;
@ -44,6 +48,10 @@ public class ModelAssessTaskAutoServiceImpl implements ModelAssessTaskAutoServic
private ModelAssessTaskStoplistMapper modelingTaskStoplistMapper;
@Resource
private ModelServiceMapper modelServiceMapper;
@Resource
private DatasetMapper datasetMapper;
@Resource
private ModelAssessStoplistMapper modelAssessStoplistMapper;
@Override
@ -109,14 +117,37 @@ public class ModelAssessTaskAutoServiceImpl implements ModelAssessTaskAutoServic
public ModelAssessTaskAutoRespVO getModelAssessTaskAuto(Long id) {
ModelAssessTaskAutoDO modelAssessTaskAutoDO = modelAssessTaskAutoMapper.selectById(id);
ModelAssessTaskAutoRespVO result = BeanUtils.toBean(modelAssessTaskAutoDO, ModelAssessTaskAutoRespVO.class);
// 标注查询
List<ModelAssessTaskStoplistDO> modelAssessTaskStoplistDOS = modelingTaskStoplistMapper.selectList(new LambdaQueryWrapper<ModelAssessTaskStoplistDO>()
.eq(ModelAssessTaskStoplistDO::getTaskId, id)
.eq(ModelAssessTaskStoplistDO::getDeleted, false));
result.setStoplists(modelAssessTaskStoplistDOS);
List<ModelAssessTaskStoplistRespVO> stoplistRespVOS = BeanUtils.toBean(modelAssessTaskStoplistDOS, ModelAssessTaskStoplistRespVO.class);
// 提取id
List<Long> stoplistIds = modelAssessTaskStoplistDOS.stream().map(ModelAssessTaskStoplistDO::getStoplistId).collect(Collectors.toList());
// 查询停用词表 将词表word返回
LambdaQueryWrapper<ModelAssessStoplistDO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(ModelAssessStoplistDO::getId,stoplistIds);
List<ModelAssessStoplistDO> modelAssessStoplistDOs = modelAssessStoplistMapper.selectList(wrapper);
Map<Long, ModelAssessStoplistDO> longModelServiceDOMap = cn.iocoder.yudao.framework.common.util.collection.
CollectionUtils.convertMap(modelAssessStoplistDOs, ModelAssessStoplistDO::getId);
stoplistRespVOS.stream().forEach(stoplistRespVO -> {
ModelAssessStoplistDO modelAssessStoplistDO = longModelServiceDOMap.get(stoplistRespVO.getStoplistId());
if(modelAssessStoplistDO != null){
stoplistRespVO.setStoplistName(modelAssessStoplistDO.getWord());
}
});
result.setStoplists(stoplistRespVOS);
ModelServiceDO modelServiceDO = modelServiceMapper.selectById(modelAssessTaskAutoDO.getModelService());
if (modelServiceDO != null){
result.setModelServiceName(modelServiceDO.getServiceName());
}
DatasetDO datasetDO = datasetMapper.selectById(modelAssessTaskAutoDO.getDataset());
if (datasetDO != null){
result.setDatasetName(datasetDO.getDatasetName());
}
return result;
}
@ -135,10 +166,10 @@ public class ModelAssessTaskAutoServiceImpl implements ModelAssessTaskAutoServic
List<ModelServiceDO> modelServiceDOS = modelServiceMapper.selectList(wrapper);
Map<Long, ModelServiceDO> longModelServiceDOMap = cn.iocoder.yudao.framework.common.util.collection.
CollectionUtils.convertMap(modelServiceDOS, ModelServiceDO::getId);
result.getList().stream().forEach(ModelAssessTaskAutoRespVO -> {
ModelServiceDO modelServiceDO = longModelServiceDOMap.get(ModelAssessTaskAutoRespVO.getModelService());
result.getList().stream().forEach(modelAssessTaskAutoRespVO -> {
ModelServiceDO modelServiceDO = longModelServiceDOMap.get(modelAssessTaskAutoRespVO.getModelService());
if(modelServiceDO != null){
ModelAssessTaskAutoRespVO.setModelServiceName(modelServiceDO.getServiceName());
modelAssessTaskAutoRespVO.setModelServiceName(modelServiceDO.getServiceName());
}
});
return result;

View File

@ -1,7 +1,12 @@
package cn.iocoder.yudao.module.llm.service.modelassesstaskmanual;
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassessstoplist.ModelAssessStoplistDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ModelAssessDimensionDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ModelAssessTaskDimensionDO;
import cn.iocoder.yudao.module.llm.dal.dataobject.modelservice.ModelServiceDO;
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetMapper;
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 com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@ -41,6 +46,10 @@ public class ModelAssessTaskManualServiceImpl implements ModelAssessTaskManualSe
private ModelAssessTaskDimensionMapper modelAssessTaskDimensionMapper;
@Resource
private ModelServiceMapper modelServiceMapper;
@Resource
private DatasetMapper datasetMapper;
@Resource
private ModelAssessDimensionMapper modelAssessDimensionMapper;
@Override
public Long createModelAssessTaskManual(ModelAssessTaskManualSaveReqVO createReqVO) {
@ -109,11 +118,32 @@ public class ModelAssessTaskManualServiceImpl implements ModelAssessTaskManualSe
List<ModelAssessTaskDimensionDO> modelAssessTaskDimensionDOS = modelAssessTaskDimensionMapper.selectList(new LambdaQueryWrapper<ModelAssessTaskDimensionDO>()
.eq(ModelAssessTaskDimensionDO::getTaskId, id)
.eq(ModelAssessTaskDimensionDO::getDeleted, false));
result.setDimensions(modelAssessTaskDimensionDOS);
List<ModelAssessTaskDimensionRespVO> modelAssessTaskDimensionRespVOS = BeanUtils.toBean(modelAssessTaskDimensionDOS, ModelAssessTaskDimensionRespVO.class);
// 提取id
List<Long> dimensionIds = modelAssessTaskDimensionDOS.stream().map(ModelAssessTaskDimensionDO::getDimensionId).collect(Collectors.toList());
// 查询模型评估维度 将维度名称返回
List<ModelAssessDimensionDO> modelAssessDimensionDOS = modelAssessDimensionMapper.selectList(new LambdaQueryWrapper<ModelAssessDimensionDO>()
.in(ModelAssessDimensionDO::getId, dimensionIds));
Map<Long, ModelAssessDimensionDO> longModelDimesionDOMap = cn.iocoder.yudao.framework.common.util.collection.
CollectionUtils.convertMap(modelAssessDimensionDOS, ModelAssessDimensionDO::getId);
modelAssessTaskDimensionRespVOS.stream().forEach(
modelAssessTaskDimensionRespVO -> {
ModelAssessDimensionDO modelAssessDimensionDO = longModelDimesionDOMap.get(modelAssessTaskDimensionRespVO.getDimensionId());
if (modelAssessDimensionDO != null){
modelAssessTaskDimensionRespVO.setDimensionName(modelAssessDimensionDO.getDimension());
}
}
);
result.setDimensions(modelAssessTaskDimensionRespVOS);
ModelServiceDO modelServiceDO = modelServiceMapper.selectById(modelAssessTaskManual.getModelService());
if (modelServiceDO != null){
result.setModelServiceName(modelServiceDO.getServiceName());
}
DatasetDO datasetDO = datasetMapper.selectById(modelAssessTaskManual.getDataset());
if (datasetDO != null){
result.setDatasetName(datasetDO.getDatasetName());
}
return result;
}