模型调优,增加aigc模型名称和列表id
This commit is contained in:
parent
b3e41e4962
commit
9e2de3c3e0
@ -142,4 +142,10 @@ public class FineTuningTaskDO extends BaseDO {
|
||||
private Long baseModelId;
|
||||
|
||||
private String jobId;
|
||||
}
|
||||
|
||||
//AIGC模型名称
|
||||
private String jobModelName;
|
||||
|
||||
//AIGC模型列表主键id
|
||||
private Long jobModelListId;
|
||||
}
|
||||
|
@ -45,6 +45,7 @@ public class AsyncFineTuningTaskService {
|
||||
if (resp != null) {
|
||||
updateObj.setJobId(resp.getJobId());
|
||||
updateObj.setStatus(FinetuningTaskStatusEnum.WAITING.getStatus());
|
||||
updateObj.setJobModelName(resp.getFineTunedModel());
|
||||
} else {
|
||||
updateObj.setStatus(FinetuningTaskStatusEnum.CANCELLED.getStatus());
|
||||
}
|
||||
|
@ -27,7 +27,7 @@ public class BaseModelTaskService {
|
||||
// @Scheduled(cron ="0 0/1 * * * ?")
|
||||
public void updateBaseModel() {
|
||||
Log.info("定时任务启动");
|
||||
String resStr = trainHttpService.modelsList();
|
||||
String resStr = trainHttpService.modelsList("");
|
||||
Log.info("获取aicg模型列表返回数据内容{}",resStr);
|
||||
JSONObject jsonObject = JSONObject.parseObject(resStr);
|
||||
JSONObject data = jsonObject.getJSONObject("data");
|
||||
|
@ -4,8 +4,11 @@ import cn.iocoder.yudao.module.llm.dal.dataobject.finetuningtask.FineTuningTaskD
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.finetuningtask.FineTuningTaskMapper;
|
||||
import cn.iocoder.yudao.module.llm.enums.FineTuningTaskStatusConstants;
|
||||
import cn.iocoder.yudao.module.llm.enums.FinetuningTaskStatusEnum;
|
||||
import cn.iocoder.yudao.module.llm.service.basemodel.vo.ModelListRes;
|
||||
import cn.iocoder.yudao.module.llm.service.http.TrainHttpService;
|
||||
import cn.iocoder.yudao.module.llm.service.http.vo.AigcFineTuningDetailRespVO;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import com.esotericsoftware.minlog.Log;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
@ -33,16 +36,35 @@ public class FineTuningTaskSyncService {
|
||||
if(Objects.equals(fineTuningTaskDO.getStatus(), FinetuningTaskStatusEnum.TRAINING.getStatus())
|
||||
|| Objects.equals(fineTuningTaskDO.getStatus(), FinetuningTaskStatusEnum.WAITING.getStatus())){
|
||||
AigcFineTuningDetailRespVO resp = trainHttpService.finetuningDetail(new HashMap<>(), fineTuningTaskDO.getJobId());
|
||||
String modelName = resp.getFineTunedModel();
|
||||
|
||||
FineTuningTaskDO updateObj = new FineTuningTaskDO();
|
||||
Integer status = FineTuningTaskStatusConstants.getStatus(resp.getTrainStatus());
|
||||
if(status != null){
|
||||
FineTuningTaskDO updateObj = new FineTuningTaskDO();
|
||||
updateObj.setId(fineTuningTaskDO.getId());
|
||||
updateObj.setStatus(status);
|
||||
updateObj.setTrainDuration(StringUtils.isNotBlank(resp.getTrainDuration())?resp.getTrainDuration():"");
|
||||
}
|
||||
//如果微调任务由训练中变为已完成,则取模型列表中获取该任务生成的模型id
|
||||
if(fineTuningTaskDO.getStatus() == 1 && status == 2){
|
||||
String jobModelName = fineTuningTaskDO.getJobModelName();
|
||||
String resStr = trainHttpService.modelsList("");
|
||||
Log.info("获取aicg模型列表返回数据内容{}",resStr);
|
||||
JSONObject jsonObject = JSONObject.parseObject(resStr);
|
||||
JSONObject data = jsonObject.getJSONObject("data");
|
||||
JSONArray list = data.getJSONArray("list");
|
||||
String s = list.toJSONString();
|
||||
List<ModelListRes> modelListRess = JSONObject.parseArray(s, ModelListRes.class);
|
||||
if(modelListRess != null){
|
||||
ModelListRes modelListRes = modelListRess.get(0);
|
||||
updateObj.setJobModelListId(modelListRes.getId());
|
||||
}else{
|
||||
//todo 已训练完成的微调任务,没有在模型列表找对对应模型的处理方式
|
||||
}
|
||||
fineTuningTaskMapper.updateById(updateObj);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -89,11 +89,11 @@ public class TrainHttpService {
|
||||
/**
|
||||
* 大模型列表 GET
|
||||
*/
|
||||
public String modelsList(){
|
||||
public String modelsList(String modelName){
|
||||
Map<String, String> headers = new HashMap<>();
|
||||
login(headers);
|
||||
String modelsList = llmBackendProperties.getModelsList();
|
||||
String res = HttpUtils.get(modelsList, headers);
|
||||
String res = HttpUtils.get(modelsList + "?modelName=" + modelName, headers);
|
||||
return res;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user