数据集Json新模板导入进行
This commit is contained in:
parent
c5fba37721
commit
5fa2c495f6
@ -6,6 +6,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.dto.DataJsonTemplate;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.DatasetSaveReqVO;
|
||||
|
@ -0,0 +1,12 @@
|
||||
package cn.iocoder.yudao.module.llm.controller.admin.dataset.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class DataJsonTemplate {
|
||||
private String system;
|
||||
private String question;
|
||||
private List<String> answers;
|
||||
}
|
@ -2,6 +2,8 @@ package cn.iocoder.yudao.module.llm.service.dataset;
|
||||
|
||||
import java.util.*;
|
||||
import javax.validation.*;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.dto.DataJsonTemplate;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.*;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
@ -4,10 +4,13 @@ package cn.iocoder.yudao.module.llm.service.dataset;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.llm.constant.DataConstants;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.dto.DataJsonTemplate;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.dataset.vo.*;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetAnswerDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetFilesDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.dataset.DatasetQuestionDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetAnswerMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetFilesMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetQuestionMapper;
|
||||
@ -49,6 +52,8 @@ public class DatasetServiceImpl implements DatasetService {
|
||||
private DatasetFilesMapper datasetFilesMapper;
|
||||
@Resource
|
||||
private DatasetQuestionMapper datasetQuestionMapper;
|
||||
@Resource
|
||||
private DatasetAnswerMapper datasetAnswerMapper;
|
||||
|
||||
@Override
|
||||
public Long createDataset(DatasetSaveReqVO createReqVO) {
|
||||
@ -186,16 +191,27 @@ public class DatasetServiceImpl implements DatasetService {
|
||||
content.append(line);
|
||||
}
|
||||
// 使用Jackson解析 Json 字符串为List<String>对象
|
||||
// 使用Jackson解析 Json 字符串为List<String>对象
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
// 使用 TypeReference 解析 JSON 字符串为 List<String>
|
||||
List<String> stringList = mapper.readValue(content.toString(), new TypeReference<List<String>>() {});
|
||||
stringList.forEach(
|
||||
string -> {
|
||||
DatasetQuestionDO datasetQuestionDO = new DatasetQuestionDO();
|
||||
List<DataJsonTemplate> jsonList = mapper.readValue(content.toString(), new TypeReference<List<DataJsonTemplate>>() {});
|
||||
jsonList.forEach(
|
||||
dataJsonTemplate -> {
|
||||
DatasetQuestionDO datasetQuestionDO = BeanUtils.toBean(dataJsonTemplate, DatasetQuestionDO.class);
|
||||
datasetQuestionDO.setDatasetId(datasetFilesDO.getDatasetId());
|
||||
datasetQuestionDO.setQuestion(string);
|
||||
datasetQuestionDO.setDatasetFilesId(datasetFilesDO.getId());
|
||||
datasetQuestionMapper.insert(datasetQuestionDO);
|
||||
List<String> answers = dataJsonTemplate.getAnswers();
|
||||
if (CollectionUtils.isNotEmpty(answers)){
|
||||
for (String answer : answers) {
|
||||
DatasetAnswerDO datasetAnswerDO = new DatasetAnswerDO();
|
||||
datasetAnswerDO.setDatasetId(datasetFilesDO.getDatasetId());
|
||||
datasetAnswerDO.setDatasetFilesId(datasetFilesDO.getId());
|
||||
datasetAnswerDO.setQuestionId(datasetQuestionDO.getId());
|
||||
datasetAnswerDO.setAnswer(answer);
|
||||
datasetAnswerMapper.insert(datasetAnswerDO);
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}catch (Exception e){
|
||||
|
Loading…
x
Reference in New Issue
Block a user