Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
a1ce3b6ce5
@ -79,4 +79,8 @@ public interface ErrorCodeConstants {
|
||||
ErrorCode MANUAL_MODEL_ANSWER_NOT_EXISTS = new ErrorCode(10031, "模型评估人工评估信息不存在");
|
||||
ErrorCode MANUAL_MODEL_ANNO_NOT_EXISTS = new ErrorCode(10032, "模型评估人工评估标注信息不存在");
|
||||
|
||||
ErrorCode MODEL_ASSESS_TASK_MANUAL_BACKUP_NOT_EXISTS = new ErrorCode(10033, "人工评估备份不存在");
|
||||
|
||||
ErrorCode MODEL_ASSESS_TASK_MANUAL_BACKUP_EXISTS = new ErrorCode(100_1002, "人工评估已备份");
|
||||
|
||||
}
|
||||
|
@ -1,35 +1,25 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnnoSaveReqVO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerSaveReqVO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ManualModelAnswerDO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo.ManualAssessmentPageRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo.ModelAssessTaskManualPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.service.modelassesstaskmanual.ManualModelAnswerService;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
|
||||
import javax.validation.*;
|
||||
import javax.servlet.http.*;
|
||||
import java.util.*;
|
||||
import java.io.IOException;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
|
||||
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
||||
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*;
|
||||
|
||||
|
||||
@Tag(name = "管理后台 - 模型评估人工标注 模型回答")
|
||||
@RestController
|
||||
@ -40,13 +30,12 @@ public class ManualModelAnswerController {
|
||||
@Resource
|
||||
private ManualModelAnswerService manualModelAnswerService;
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得模型评估人工标注 模型回答")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('llm:manual-model-answer:query')")
|
||||
public CommonResult<ManualModelAnswerRespVO> getManualModelAnswer(@RequestParam("id") Long id) {
|
||||
ManualModelAnswerDO manualModelAnswer = manualModelAnswerService.getManualModelAnswer(id);
|
||||
return success(BeanUtils.toBean(manualModelAnswer, ManualModelAnswerRespVO.class));
|
||||
@GetMapping("/getManualAssessment")
|
||||
@Operation(summary = "获取列表")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual:query')")
|
||||
public CommonResult<PageResult<ManualAssessmentPageRespVO>> getManualAssessment(@Valid ManualModelAnswerPageReqVO pageReqVO) {
|
||||
//TODO 人工评估-人工评估标注补充
|
||||
return success(manualModelAnswerService.getManualAssessment(pageReqVO));
|
||||
}
|
||||
@PostMapping("/anno")
|
||||
@Operation(summary = "人工标注")
|
||||
|
@ -108,26 +108,14 @@ public class ModelAssessTaskManualController {
|
||||
return success(new PageResult<>());
|
||||
}
|
||||
|
||||
@GetMapping("/getManualAssessment")
|
||||
@Operation(summary = "人工评估")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual:query')")
|
||||
public CommonResult<PageResult<ModelAssessTaskManualRespVO>> getManualAssessment(@Valid ModelAssessTaskManualPageReqVO pageReqVO) {
|
||||
//TODO 人工评估-人工评估标注补充
|
||||
ManualAssessmentPageReqVO manualAssessment = modelAssessTaskManualService.getManualAssessment(pageReqVO);
|
||||
return success(new PageResult<>());
|
||||
}
|
||||
|
||||
|
||||
@PostMapping("/backedUp")
|
||||
@PostMapping("/backup")
|
||||
@Operation(summary = "备份")
|
||||
public void backedUp(ModelAssessTaskManualPageReqVO pageReqVO) {
|
||||
//TODO 人工评估-备份待补充
|
||||
}
|
||||
|
||||
@PostMapping("/cancelTheBackUp")
|
||||
@Operation(summary = "取消备份")
|
||||
public void cancelTheBackUp(ModelAssessTaskManualPageReqVO pageReqVO) {
|
||||
//TODO 人工评估-取消备份待补充
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual:update')")
|
||||
public CommonResult<Boolean> backedUp(@Valid @RequestBody ModelAssessTaskManualBackupReqVO backupReqVO) {
|
||||
modelAssessTaskManualService.backupModelAssessTaskManual(backupReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@PostMapping("/saveTheLabelData")
|
||||
|
@ -1,24 +0,0 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetQuestionRespVO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ModelAssessTaskDimensionDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ModelAssessTaskManualDO;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - 人工评估标注 Request VO")
|
||||
|
||||
@Data
|
||||
public class ManualAssessmentPageReqVO {
|
||||
@Schema(description = "人工评估标注")
|
||||
private PageResult<DatasetQuestionRespVO> datasetQuestionPage;
|
||||
|
||||
@Schema(description = "人工评估维度")
|
||||
private List<ModelAssessTaskDimensionDO> modelAssessTaskDimensionDOS;
|
||||
|
||||
@Schema(description = "人工评估任务")
|
||||
private ModelAssessTaskManualDO modelAssessTaskManualDO;
|
||||
}
|
@ -0,0 +1,78 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
|
||||
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetAnswerRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetQuestionRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnnoRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerRespVO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ManualModelAnswerDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ModelAssessTaskDimensionDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ModelAssessTaskManualDO;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - 人工评估标注 Request VO")
|
||||
|
||||
@Data
|
||||
public class ManualAssessmentPageRespVO {
|
||||
@Schema(description = "评估任务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16493")
|
||||
@ExcelProperty("评估任务ID")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "任务名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
|
||||
@ExcelProperty("任务名称")
|
||||
private String taskName;
|
||||
|
||||
@Schema(description = "任务描述")
|
||||
@ExcelProperty("任务描述")
|
||||
private String taskInfro;
|
||||
|
||||
@Schema(description = "CPU类型,使用字典(llm_cpu_type)", example = "2")
|
||||
@ExcelProperty(value = "CPU类型,使用字典(llm_cpu_type)", converter = DictConvert.class)
|
||||
@DictFormat("llm_cpu_type") // TODO 代码优化:建议设置到对应的 DictTypeConstants 枚举类中
|
||||
private Integer cpuType;
|
||||
|
||||
@Schema(description = "模型服务")
|
||||
@ExcelProperty("模型服务")
|
||||
private Long modelService;
|
||||
|
||||
@Schema(description = "数据集")
|
||||
@ExcelProperty("数据集")
|
||||
private Long dataset;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@Schema(description = "人工评估列表")
|
||||
private List<ModelAssessTaskDimensionRespVO> dimensions;
|
||||
|
||||
@Schema(description = "模型评估任务状态,使用字典(llm_model_assess_task_status)")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "任务进度")
|
||||
private Integer progress;
|
||||
|
||||
@Schema(description = "模型服务名称")
|
||||
private String modelServiceName;
|
||||
|
||||
@Schema(description = "数据集名称")
|
||||
private String datasetName;
|
||||
|
||||
@Schema(description = "数据集问题")
|
||||
private String question;
|
||||
|
||||
@Schema(description = "数据集答案")
|
||||
private List<DatasetAnswerRespVO> answers;
|
||||
|
||||
@Schema(description = "模型回答答案")
|
||||
private String modelAnswer;
|
||||
@Schema(description = "人工评估信息返回")
|
||||
private List<ManualModelAnnoRespVO> reqRespVos;
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 模型评估任务 —— 人工评估新增/修改 Request VO")
|
||||
@Data
|
||||
public class ModelAssessTaskManualBackupReqVO {
|
||||
@Schema(description = "评估任务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "16493")
|
||||
private Long id;
|
||||
}
|
@ -0,0 +1,95 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup;
|
||||
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
|
||||
import javax.validation.constraints.*;
|
||||
import javax.validation.*;
|
||||
import javax.servlet.http.*;
|
||||
import java.util.*;
|
||||
import java.io.IOException;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
|
||||
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
||||
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo.*;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanualbackup.ModelAssessTaskManualBackupDO;
|
||||
import cn.iocoder.yudao.module.llm.service.modelassesstaskmanualbackup.ModelAssessTaskManualBackupService;
|
||||
|
||||
@Tag(name = "管理后台 - 人工评估备份")
|
||||
@RestController
|
||||
@RequestMapping("/llm/model-assess-task-manual-backup")
|
||||
@Validated
|
||||
public class ModelAssessTaskManualBackupController {
|
||||
|
||||
@Resource
|
||||
private ModelAssessTaskManualBackupService modelAssessTaskManualBackupService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建人工评估备份")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual-backup:create')")
|
||||
public CommonResult<Long> createModelAssessTaskManualBackup(@Valid @RequestBody ModelAssessTaskManualBackupSaveReqVO createReqVO) {
|
||||
return success(modelAssessTaskManualBackupService.createModelAssessTaskManualBackup(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新人工评估备份")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual-backup:update')")
|
||||
public CommonResult<Boolean> updateModelAssessTaskManualBackup(@Valid @RequestBody ModelAssessTaskManualBackupSaveReqVO updateReqVO) {
|
||||
modelAssessTaskManualBackupService.updateModelAssessTaskManualBackup(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除人工评估备份")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual-backup:delete')")
|
||||
public CommonResult<Boolean> deleteModelAssessTaskManualBackup(@RequestParam("id") Long id) {
|
||||
modelAssessTaskManualBackupService.deleteModelAssessTaskManualBackup(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得人工评估备份")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual-backup:query')")
|
||||
public CommonResult<ModelAssessTaskManualBackupRespVO> getModelAssessTaskManualBackup(@RequestParam("id") Long id) {
|
||||
ModelAssessTaskManualBackupDO modelAssessTaskManualBackup = modelAssessTaskManualBackupService.getModelAssessTaskManualBackup(id);
|
||||
return success(BeanUtils.toBean(modelAssessTaskManualBackup, ModelAssessTaskManualBackupRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得人工评估备份分页")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual-backup:query')")
|
||||
public CommonResult<PageResult<ModelAssessTaskManualBackupRespVO>> getModelAssessTaskManualBackupPage(@Valid ModelAssessTaskManualBackupPageReqVO pageReqVO) {
|
||||
PageResult<ModelAssessTaskManualBackupDO> pageResult = modelAssessTaskManualBackupService.getModelAssessTaskManualBackupPage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, ModelAssessTaskManualBackupRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出人工评估备份 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-assess-task-manual-backup:export')")
|
||||
@ApiAccessLog(operateType = EXPORT)
|
||||
public void exportModelAssessTaskManualBackupExcel(@Valid ModelAssessTaskManualBackupPageReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<ModelAssessTaskManualBackupDO> list = modelAssessTaskManualBackupService.getModelAssessTaskManualBackupPage(pageReqVO).getList();
|
||||
// 导出 Excel
|
||||
ExcelUtils.write(response, "人工评估备份.xls", "数据", ModelAssessTaskManualBackupRespVO.class,
|
||||
BeanUtils.toBean(list, ModelAssessTaskManualBackupRespVO.class));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,46 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo;
|
||||
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@Schema(description = "管理后台 - 人工评估备份分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class ModelAssessTaskManualBackupPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "原评估信息Id", example = "8848")
|
||||
private Long srcId;
|
||||
|
||||
@Schema(description = "任务名称", example = "赵六")
|
||||
private String taskName;
|
||||
|
||||
@Schema(description = "任务描述")
|
||||
private String taskInfro;
|
||||
|
||||
@Schema(description = "CPU类型", example = "1")
|
||||
private Integer cpuType;
|
||||
|
||||
@Schema(description = "模型服务")
|
||||
private Long modelService;
|
||||
|
||||
@Schema(description = "数据集")
|
||||
private Long dataset;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] createTime;
|
||||
|
||||
@Schema(description = "模型评估任务状态", example = "2")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "进度")
|
||||
private Integer progress;
|
||||
|
||||
}
|
@ -0,0 +1,55 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import java.time.LocalDateTime;
|
||||
import com.alibaba.excel.annotation.*;
|
||||
|
||||
@Schema(description = "管理后台 - 人工评估备份 Response VO")
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class ModelAssessTaskManualBackupRespVO {
|
||||
|
||||
@Schema(description = "评估任务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "27930")
|
||||
@ExcelProperty("评估任务ID")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "原评估信息Id", requiredMode = Schema.RequiredMode.REQUIRED, example = "8848")
|
||||
@ExcelProperty("原评估信息Id")
|
||||
private Long srcId;
|
||||
|
||||
@Schema(description = "任务名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
|
||||
@ExcelProperty("任务名称")
|
||||
private String taskName;
|
||||
|
||||
@Schema(description = "任务描述")
|
||||
@ExcelProperty("任务描述")
|
||||
private String taskInfro;
|
||||
|
||||
@Schema(description = "CPU类型", example = "1")
|
||||
@ExcelProperty("CPU类型")
|
||||
private Integer cpuType;
|
||||
|
||||
@Schema(description = "模型服务")
|
||||
@ExcelProperty("模型服务")
|
||||
private Long modelService;
|
||||
|
||||
@Schema(description = "数据集")
|
||||
@ExcelProperty("数据集")
|
||||
private Long dataset;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@Schema(description = "模型评估任务状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
||||
@ExcelProperty("模型评估任务状态")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "进度")
|
||||
@ExcelProperty("进度")
|
||||
private Integer progress;
|
||||
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import javax.validation.constraints.*;
|
||||
|
||||
@Schema(description = "管理后台 - 人工评估备份新增/修改 Request VO")
|
||||
@Data
|
||||
public class ModelAssessTaskManualBackupSaveReqVO {
|
||||
|
||||
@Schema(description = "评估任务ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "27930")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "原评估信息Id", requiredMode = Schema.RequiredMode.REQUIRED, example = "8848")
|
||||
@NotNull(message = "原评估信息Id不能为空")
|
||||
private Long srcId;
|
||||
|
||||
@Schema(description = "任务名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
|
||||
@NotEmpty(message = "任务名称不能为空")
|
||||
private String taskName;
|
||||
|
||||
@Schema(description = "任务描述")
|
||||
private String taskInfro;
|
||||
|
||||
@Schema(description = "CPU类型", example = "1")
|
||||
private Integer cpuType;
|
||||
|
||||
@Schema(description = "模型服务")
|
||||
private Long modelService;
|
||||
|
||||
@Schema(description = "数据集")
|
||||
private Long dataset;
|
||||
|
||||
@Schema(description = "模型评估任务状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
||||
@NotNull(message = "模型评估任务状态不能为空")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "进度")
|
||||
private Integer progress;
|
||||
|
||||
}
|
@ -0,0 +1,63 @@
|
||||
package cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanualbackup;
|
||||
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||
|
||||
/**
|
||||
* 人工评估备份 DO
|
||||
*
|
||||
* @author 华大大模型
|
||||
*/
|
||||
@TableName("llm_model_assess_task_manual_backup")
|
||||
@KeySequence("llm_model_assess_task_manual_backup_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class ModelAssessTaskManualBackupDO extends BaseDO {
|
||||
|
||||
/**
|
||||
* 评估任务ID
|
||||
*/
|
||||
@TableId
|
||||
private Long id;
|
||||
/**
|
||||
* 原评估信息Id
|
||||
*/
|
||||
private Long srcId;
|
||||
/**
|
||||
* 任务名称
|
||||
*/
|
||||
private String taskName;
|
||||
/**
|
||||
* 任务描述
|
||||
*/
|
||||
private String taskInfro;
|
||||
/**
|
||||
* CPU类型
|
||||
*/
|
||||
private Integer cpuType;
|
||||
/**
|
||||
* 模型服务
|
||||
*/
|
||||
private Long modelService;
|
||||
/**
|
||||
* 数据集
|
||||
*/
|
||||
private Long dataset;
|
||||
/**
|
||||
* 模型评估任务状态
|
||||
*/
|
||||
private Integer status;
|
||||
/**
|
||||
* 进度
|
||||
*/
|
||||
private Integer progress;
|
||||
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
package cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanualbackup;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanualbackup.ModelAssessTaskManualBackupDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo.*;
|
||||
|
||||
/**
|
||||
* 人工评估备份 Mapper
|
||||
*
|
||||
* @author 华大大模型
|
||||
*/
|
||||
@Mapper
|
||||
public interface ModelAssessTaskManualBackupMapper extends BaseMapperX<ModelAssessTaskManualBackupDO> {
|
||||
|
||||
default PageResult<ModelAssessTaskManualBackupDO> selectPage(ModelAssessTaskManualBackupPageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<ModelAssessTaskManualBackupDO>()
|
||||
.eqIfPresent(ModelAssessTaskManualBackupDO::getSrcId, reqVO.getSrcId())
|
||||
.likeIfPresent(ModelAssessTaskManualBackupDO::getTaskName, reqVO.getTaskName())
|
||||
.eqIfPresent(ModelAssessTaskManualBackupDO::getTaskInfro, reqVO.getTaskInfro())
|
||||
.eqIfPresent(ModelAssessTaskManualBackupDO::getCpuType, reqVO.getCpuType())
|
||||
.eqIfPresent(ModelAssessTaskManualBackupDO::getModelService, reqVO.getModelService())
|
||||
.eqIfPresent(ModelAssessTaskManualBackupDO::getDataset, reqVO.getDataset())
|
||||
.betweenIfPresent(ModelAssessTaskManualBackupDO::getCreateTime, reqVO.getCreateTime())
|
||||
.eqIfPresent(ModelAssessTaskManualBackupDO::getStatus, reqVO.getStatus())
|
||||
.eqIfPresent(ModelAssessTaskManualBackupDO::getProgress, reqVO.getProgress())
|
||||
.orderByDesc(ModelAssessTaskManualBackupDO::getId));
|
||||
}
|
||||
|
||||
}
|
@ -2,9 +2,10 @@ package cn.iocoder.yudao.module.llm.service.modelassesstaskmanual;
|
||||
|
||||
import javax.validation.*;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnnoSaveReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerSaveReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo.ManualAssessmentPageRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo.ModelAssessTaskManualPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ManualModelAnswerDO;
|
||||
|
||||
import java.util.List;
|
||||
@ -55,4 +56,5 @@ public interface ManualModelAnswerService {
|
||||
PageResult<ManualModelAnswerDO> getManualModelAnswerPage(ManualModelAnswerPageReqVO pageReqVO);
|
||||
|
||||
void annoManualModelAnswer(List<ManualModelAnswerSaveReqVO> reqRespVo);
|
||||
PageResult<ManualAssessmentPageRespVO> getManualAssessment(ManualModelAnswerPageReqVO pageReqVO);
|
||||
}
|
@ -1,20 +1,25 @@
|
||||
package cn.iocoder.yudao.module.llm.service.modelassesstaskmanual;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.util.collection.CollectionUtils;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnnoSaveReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetAnswerRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetQuestionPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnnoRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.manualAnnoVo.ManualModelAnswerSaveReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo.ManualAssessmentPageRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo.ModelAssessTaskManualPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanual.vo.ModelAssessTaskManualRespVO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetAnswerDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetQuestionDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ManualModelAnnoDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ManualModelAnswerDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanual.ModelAssessTaskManualDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanual.ManualModelAnnoMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanual.ManualModelAnswerMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanual.ModelAssessTaskManualMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetAnswerMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetQuestionMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanual.*;
|
||||
import cn.iocoder.yudao.module.llm.service.dataset.DatasetQuestionService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import org.springdoc.core.GenericResponseService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
@ -23,6 +28,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
@ -44,7 +50,75 @@ public class ManualModelAnswerServiceImpl implements ManualModelAnswerService {
|
||||
@Resource
|
||||
private ManualModelAnnoMapper manualModelAnnoMapper;
|
||||
@Resource
|
||||
private ModelAssessTaskDimensionMapper modelAssessTaskDimensionMapper;
|
||||
@Resource
|
||||
private ModelAssessTaskManualMapper modelAssessTaskManualMapper;
|
||||
@Resource
|
||||
private DatasetQuestionService datasetQuestionService;
|
||||
@Resource
|
||||
private DatasetQuestionMapper datasetQuestionMapper;
|
||||
@Resource
|
||||
private DatasetAnswerMapper datasetAnswerMapper;
|
||||
|
||||
/**
|
||||
* 分页进行查询
|
||||
* @param pageReqVO
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public PageResult<ManualAssessmentPageRespVO> getManualAssessment(ManualModelAnswerPageReqVO pageReqVO) {
|
||||
ModelAssessTaskManualRespVO modelAssessTaskManual = modelAssessTaskManualService.getModelAssessTaskManual(pageReqVO.getManalTaskId());
|
||||
PageResult<ManualAssessmentPageRespVO> result = new PageResult<>();
|
||||
PageResult<ManualModelAnswerDO> modelAnswerDOPageResult = manualModelAnswerMapper.selectPage(pageReqVO);
|
||||
List<ManualAssessmentPageRespVO> res = new ArrayList<>();
|
||||
if(!CollectionUtils.isAnyEmpty(modelAnswerDOPageResult.getList())){
|
||||
modelAnswerDOPageResult.getList().forEach(modelAnswerDO -> {
|
||||
ManualAssessmentPageRespVO resp = BeanUtils.toBean(modelAssessTaskManual, ManualAssessmentPageRespVO.class);
|
||||
DatasetQuestionDO datasetQuestionDO = datasetQuestionMapper.selectById(modelAnswerDO.getQuestionId());
|
||||
List<DatasetAnswerDO> datasetAnswerDOS = datasetAnswerMapper.selectList(new LambdaQueryWrapper<>(DatasetAnswerDO.class).eq(DatasetAnswerDO::getQuestionId, modelAnswerDO.getQuestionId()));
|
||||
resp.setQuestion(datasetQuestionDO.getQuestion());
|
||||
resp.setAnswers(BeanUtils.toBean(datasetAnswerDOS, DatasetAnswerRespVO.class));
|
||||
resp.setModelAnswer(modelAnswerDO.getModelAnswer());
|
||||
List<ManualModelAnnoDO> manualModelAnnoDOS = manualModelAnnoMapper.selectList(new LambdaQueryWrapper<>(ManualModelAnnoDO.class)
|
||||
.eq(ManualModelAnnoDO::getModelAnswerId, modelAnswerDO.getId()));
|
||||
resp.setReqRespVos(BeanUtils.toBean(manualModelAnnoDOS, ManualModelAnnoRespVO.class));
|
||||
res.add(resp);
|
||||
});
|
||||
}
|
||||
result.setList(res);
|
||||
result.setTotal(modelAnswerDOPageResult.getTotal());
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 模型回答人工标注
|
||||
* @param reqRespVo
|
||||
*/
|
||||
@Override
|
||||
public void annoManualModelAnswer(List<ManualModelAnswerSaveReqVO> reqRespVo) {
|
||||
List<ManualModelAnswerDO> modelAnswerDOS = BeanUtils.toBean(reqRespVo, ManualModelAnswerDO.class);
|
||||
if (reqRespVo.size() > 0){
|
||||
Long modelAnswerId = modelAnswerDOS.get(0).getManalTaskId();
|
||||
reqRespVo.forEach(modelAnswerDO -> {
|
||||
if (!CollectionUtils.isAnyEmpty(modelAnswerDO.getAnnoReqRespVo())){
|
||||
List<ManualModelAnnoDO> modelAnnoDOS = BeanUtils.toBean(modelAnswerDO.getAnnoReqRespVo(), ManualModelAnnoDO.class);
|
||||
manualModelAnnoMapper.insertOrUpdate(modelAnnoDOS);
|
||||
manualModelAnswerMapper.updateStatus(modelAnswerDO.getId(),2);
|
||||
}
|
||||
});
|
||||
// 标注进度修改
|
||||
LambdaQueryWrapper<ManualModelAnswerDO> wrapper = new LambdaQueryWrapper<ManualModelAnswerDO>()
|
||||
.eq(ManualModelAnswerDO::getManalTaskId, modelAnswerId);
|
||||
Long sumCount = manualModelAnswerMapper.selectCount(wrapper);
|
||||
wrapper.eq(ManualModelAnswerDO::getStatus,2);
|
||||
Long annoCount = manualModelAnswerMapper.selectCount(wrapper);
|
||||
double ratio = sumCount == 0 ? 0 : ((double) annoCount / sumCount) *100;
|
||||
Integer formattedRatio = ratio == 0 ? 0 : (int) ratio;
|
||||
Integer status = formattedRatio == 100 ? 4 : 2;
|
||||
modelAssessTaskManualMapper.updateStatus(modelAnswerId,formattedRatio,status);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long createManualModelAnswer(ManualModelAnswerSaveReqVO createReqVO) {
|
||||
@ -80,16 +154,6 @@ public class ManualModelAnswerServiceImpl implements ManualModelAnswerService {
|
||||
|
||||
@Override
|
||||
public ManualModelAnswerDO getManualModelAnswer(Long id) {
|
||||
// 查询主表数据
|
||||
ModelAssessTaskManualRespVO modelAssessTaskManual = modelAssessTaskManualService.getModelAssessTaskManual(id);
|
||||
List<ManualModelAnswerDO> manualModelAnswerDOS = manualModelAnswerMapper.selectList(new LambdaQueryWrapper<ManualModelAnswerDO>()
|
||||
.eq(ManualModelAnswerDO::getManalTaskId, modelAssessTaskManual.getId()));
|
||||
List<ManualModelAnswerRespVO> manualModelAnswerRespVOS = BeanUtils.toBean(manualModelAnswerDOS, ManualModelAnswerRespVO.class);
|
||||
manualModelAnswerDOS.forEach(item -> {
|
||||
// item.setModelAnswer(modelAssessTaskManual.getModelAnswer());
|
||||
});
|
||||
ManualModelAnswerDO manualModelAnswerDO = manualModelAnswerMapper.selectById(id);
|
||||
ManualModelAnswerRespVO bean = BeanUtils.toBean(manualModelAnswerDO, ManualModelAnswerRespVO.class);
|
||||
return manualModelAnswerMapper.selectById(id);
|
||||
}
|
||||
|
||||
@ -98,30 +162,5 @@ public class ManualModelAnswerServiceImpl implements ManualModelAnswerService {
|
||||
return manualModelAnswerMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void annoManualModelAnswer(List<ManualModelAnswerSaveReqVO> reqRespVo) {
|
||||
List<ManualModelAnswerDO> modelAnswerDOS = BeanUtils.toBean(reqRespVo, ManualModelAnswerDO.class);
|
||||
if (reqRespVo.size() > 0){
|
||||
Long modelAnswerId = modelAnswerDOS.get(0).getManalTaskId();
|
||||
reqRespVo.forEach(modelAnswerDO -> {
|
||||
if (!CollectionUtils.isAnyEmpty(modelAnswerDO.getAnnoReqRespVo())){
|
||||
List<ManualModelAnnoDO> modelAnnoDOS = BeanUtils.toBean(modelAnswerDO.getAnnoReqRespVo(), ManualModelAnnoDO.class);
|
||||
manualModelAnnoMapper.insertOrUpdate(modelAnnoDOS);
|
||||
manualModelAnswerMapper.updateStatus(modelAnswerDO.getId(),2);
|
||||
}
|
||||
});
|
||||
// 标注进度修改
|
||||
LambdaQueryWrapper<ManualModelAnswerDO> wrapper = new LambdaQueryWrapper<ManualModelAnswerDO>()
|
||||
.eq(ManualModelAnswerDO::getManalTaskId, modelAnswerId);
|
||||
Long sumCount = manualModelAnswerMapper.selectCount(wrapper);
|
||||
wrapper.eq(ManualModelAnswerDO::getStatus,2);
|
||||
Long annoCount = manualModelAnswerMapper.selectCount(wrapper);
|
||||
double ratio = sumCount == 0 ? 0 : ((double) annoCount / sumCount) *100;
|
||||
Integer formattedRatio = ratio == 0 ? 0 : (int) ratio;
|
||||
Integer status = formattedRatio == 100 ? 4 : 2;
|
||||
modelAssessTaskManualMapper.updateStatus(modelAnswerId,formattedRatio,status);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
@ -53,5 +53,6 @@ public interface ModelAssessTaskManualService {
|
||||
PageResult<ModelAssessTaskManualRespVO> getModelAssessTaskManualPage1(ModelAssessTaskManualPageReqVO pageReqVO);
|
||||
PageResult<ModelAssessTaskManualDO> getModelAssessTaskManualPage(ModelAssessTaskManualPageReqVO pageReqVO);
|
||||
|
||||
ManualAssessmentPageReqVO getManualAssessment(ModelAssessTaskManualPageReqVO pageReqVO);
|
||||
|
||||
void backupModelAssessTaskManual(ModelAssessTaskManualBackupReqVO updateReqVO);
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ package cn.iocoder.yudao.module.llm.service.modelassesstaskmanual;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetQuestionPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetQuestionRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo.ModelAssessTaskManualBackupSaveReqVO;
|
||||
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;
|
||||
@ -13,6 +14,7 @@ import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanual.ModelAssessTa
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.modelservice.ModelServiceMapper;
|
||||
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.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||
@ -59,6 +61,8 @@ public class ModelAssessTaskManualServiceImpl implements ModelAssessTaskManualSe
|
||||
|
||||
@Resource
|
||||
private AsyncModelAccessManualService asyncModelAccessManualService;
|
||||
@Resource
|
||||
private ModelAssessTaskManualBackupService modelAssessTaskManualBackupService;
|
||||
|
||||
@Override
|
||||
public Long createModelAssessTaskManual(ModelAssessTaskManualSaveReqVO createReqVO) {
|
||||
@ -184,24 +188,18 @@ public class ModelAssessTaskManualServiceImpl implements ModelAssessTaskManualSe
|
||||
return modelAssessTaskManualMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public ManualAssessmentPageReqVO getManualAssessment(ModelAssessTaskManualPageReqVO pageReqVO) {
|
||||
ManualAssessmentPageReqVO reqVO = new ManualAssessmentPageReqVO();
|
||||
//获取数据集问题
|
||||
//TODO 人工评估标注获取信息后面需要更改
|
||||
DatasetQuestionPageReqVO vo = new DatasetQuestionPageReqVO();
|
||||
vo.setDatasetId(pageReqVO.getDatasetId());
|
||||
vo.setPageSize(1);
|
||||
PageResult<DatasetQuestionRespVO> datasetQuestionPage = datasetQuestionService.getDatasetQuestionPage(vo);
|
||||
reqVO.setDatasetQuestionPage(datasetQuestionPage);
|
||||
//获取模型评估标准
|
||||
LambdaQueryWrapper<ModelAssessTaskDimensionDO> wrapper = new LambdaQueryWrapper<ModelAssessTaskDimensionDO>().eq(ModelAssessTaskDimensionDO::getTaskId, pageReqVO.getTaskId());
|
||||
List<ModelAssessTaskDimensionDO> modelAssessTaskDimensionDOS = modelAssessTaskDimensionMapper.selectList(wrapper);
|
||||
reqVO.setModelAssessTaskDimensionDOS(modelAssessTaskDimensionDOS);
|
||||
LambdaQueryWrapper<ModelAssessTaskManualDO> eq = new LambdaQueryWrapper<ModelAssessTaskManualDO>().eq(ModelAssessTaskManualDO::getId, pageReqVO.getTaskId());
|
||||
ModelAssessTaskManualDO modelAssessTaskManualDO = modelAssessTaskManualMapper.selectOne(eq);
|
||||
reqVO.setModelAssessTaskManualDO(modelAssessTaskManualDO);
|
||||
return reqVO;
|
||||
public void backupModelAssessTaskManual(ModelAssessTaskManualBackupReqVO backupReqVO) {
|
||||
ModelAssessTaskManualDO modelDo = modelAssessTaskManualMapper.selectById(backupReqVO.getId());
|
||||
if(modelDo == null) {
|
||||
throw exception(MODEL_ASSESS_TASK_MANUAL_NOT_EXISTS);
|
||||
}
|
||||
this.modelAssessTaskManualBackupService.isBackup(backupReqVO.getId());
|
||||
ModelAssessTaskManualBackupSaveReqVO backupDo = BeanUtils.toBean(modelDo, ModelAssessTaskManualBackupSaveReqVO.class);
|
||||
backupDo.setId(null);
|
||||
backupDo.setSrcId(backupReqVO.getId());
|
||||
this.modelAssessTaskManualBackupService.createModelAssessTaskManualBackup(backupDo);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,57 @@
|
||||
package cn.iocoder.yudao.module.llm.service.modelassesstaskmanualbackup;
|
||||
|
||||
import java.util.*;
|
||||
import javax.validation.*;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo.*;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanualbackup.ModelAssessTaskManualBackupDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
|
||||
/**
|
||||
* 人工评估备份 Service 接口
|
||||
*
|
||||
* @author 华大大模型
|
||||
*/
|
||||
public interface ModelAssessTaskManualBackupService {
|
||||
|
||||
/**
|
||||
* 创建人工评估备份
|
||||
*
|
||||
* @param createReqVO 创建信息
|
||||
* @return 编号
|
||||
*/
|
||||
Long createModelAssessTaskManualBackup(@Valid ModelAssessTaskManualBackupSaveReqVO createReqVO);
|
||||
|
||||
/**
|
||||
* 更新人工评估备份
|
||||
*
|
||||
* @param updateReqVO 更新信息
|
||||
*/
|
||||
void updateModelAssessTaskManualBackup(@Valid ModelAssessTaskManualBackupSaveReqVO updateReqVO);
|
||||
|
||||
/**
|
||||
* 删除人工评估备份
|
||||
*
|
||||
* @param id 编号
|
||||
*/
|
||||
void deleteModelAssessTaskManualBackup(Long id);
|
||||
|
||||
/**
|
||||
* 获得人工评估备份
|
||||
*
|
||||
* @param id 编号
|
||||
* @return 人工评估备份
|
||||
*/
|
||||
ModelAssessTaskManualBackupDO getModelAssessTaskManualBackup(Long id);
|
||||
|
||||
/**
|
||||
* 获得人工评估备份分页
|
||||
*
|
||||
* @param pageReqVO 分页查询
|
||||
* @return 人工评估备份分页
|
||||
*/
|
||||
PageResult<ModelAssessTaskManualBackupDO> getModelAssessTaskManualBackupPage(ModelAssessTaskManualBackupPageReqVO pageReqVO);
|
||||
|
||||
void isBackup(Long srcId);
|
||||
|
||||
}
|
@ -0,0 +1,82 @@
|
||||
package cn.iocoder.yudao.module.llm.service.modelassesstaskmanualbackup;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.*;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.modelassesstaskmanualbackup.vo.*;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.modelassesstaskmanualbackup.ModelAssessTaskManualBackupDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanualbackup.ModelAssessTaskManualBackupMapper;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static cn.iocoder.yudao.module.llm.enums.ErrorCodeConstants.*;
|
||||
|
||||
/**
|
||||
* 人工评估备份 Service 实现类
|
||||
*
|
||||
* @author 华大大模型
|
||||
*/
|
||||
@Service
|
||||
@Validated
|
||||
public class ModelAssessTaskManualBackupServiceImpl implements ModelAssessTaskManualBackupService {
|
||||
|
||||
@Resource
|
||||
private ModelAssessTaskManualBackupMapper modelAssessTaskManualBackupMapper;
|
||||
|
||||
@Override
|
||||
public Long createModelAssessTaskManualBackup(ModelAssessTaskManualBackupSaveReqVO createReqVO) {
|
||||
// 插入
|
||||
ModelAssessTaskManualBackupDO modelAssessTaskManualBackup = BeanUtils.toBean(createReqVO, ModelAssessTaskManualBackupDO.class);
|
||||
modelAssessTaskManualBackupMapper.insert(modelAssessTaskManualBackup);
|
||||
// 返回
|
||||
return modelAssessTaskManualBackup.getId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateModelAssessTaskManualBackup(ModelAssessTaskManualBackupSaveReqVO updateReqVO) {
|
||||
// 校验存在
|
||||
validateModelAssessTaskManualBackupExists(updateReqVO.getId());
|
||||
// 更新
|
||||
ModelAssessTaskManualBackupDO updateObj = BeanUtils.toBean(updateReqVO, ModelAssessTaskManualBackupDO.class);
|
||||
modelAssessTaskManualBackupMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteModelAssessTaskManualBackup(Long id) {
|
||||
// 校验存在
|
||||
validateModelAssessTaskManualBackupExists(id);
|
||||
// 删除
|
||||
modelAssessTaskManualBackupMapper.deleteById(id);
|
||||
}
|
||||
|
||||
private void validateModelAssessTaskManualBackupExists(Long id) {
|
||||
if (modelAssessTaskManualBackupMapper.selectById(id) == null) {
|
||||
throw exception(MODEL_ASSESS_TASK_MANUAL_BACKUP_NOT_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ModelAssessTaskManualBackupDO getModelAssessTaskManualBackup(Long id) {
|
||||
return modelAssessTaskManualBackupMapper.selectById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<ModelAssessTaskManualBackupDO> getModelAssessTaskManualBackupPage(ModelAssessTaskManualBackupPageReqVO pageReqVO) {
|
||||
return modelAssessTaskManualBackupMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void isBackup(Long srcId) {
|
||||
List<ModelAssessTaskManualBackupDO> backupDOList = this.modelAssessTaskManualBackupMapper.selectList("src_id", srcId);
|
||||
if(backupDOList!=null && !backupDOList.isEmpty()) {
|
||||
throw exception(MODEL_ASSESS_TASK_MANUAL_BACKUP_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="cn.iocoder.yudao.module.llm.dal.mysql.modelassesstaskmanualbackup.ModelAssessTaskManualBackupMapper">
|
||||
|
||||
<!--
|
||||
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
||||
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
|
||||
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
||||
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||||
-->
|
||||
|
||||
</mapper>
|
Loading…
x
Reference in New Issue
Block a user