模型调优。模型服务,异步任务搭建
This commit is contained in:
parent
163bdef8a4
commit
b2da3069a5
@ -53,6 +53,22 @@ public class ModelServiceController {
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@PutMapping("/active")
|
||||
@Operation(summary = "开启模型服务")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-service:update')")
|
||||
public CommonResult<Boolean> activeModelService(@Valid @RequestBody ModelServiceSaveReqVO updateReqVO) {
|
||||
modelServiceService.active(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@PutMapping("/unactive")
|
||||
@Operation(summary = "关闭模型服务")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-service:update')")
|
||||
public CommonResult<Boolean> unactiveModelService(@Valid @RequestBody ModelServiceSaveReqVO updateReqVO) {
|
||||
modelServiceService.unactive(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
@Operation(summary = "查询所有模型服务")
|
||||
@PreAuthorize("@ss.hasPermission('llm:model-service:query')")
|
||||
|
@ -0,0 +1,50 @@
|
||||
package cn.iocoder.yudao.module.llm.service.async;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.finetuningtask.FineTuningTaskDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.finetuningtask.FineTuningTaskMapper;
|
||||
import cn.iocoder.yudao.module.llm.service.http.TrainHttpService;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.HashMap;
|
||||
|
||||
@Service
|
||||
public class AsyncFineTuningTaskService {
|
||||
|
||||
@Resource
|
||||
private FineTuningTaskMapper fineTuningTaskMapper;
|
||||
|
||||
@Resource
|
||||
private TrainHttpService trainHttpService;
|
||||
|
||||
//大模型平台创建调优任务
|
||||
@Async
|
||||
public void createTuning(FineTuningTaskDO fineTuningTask) {
|
||||
try {
|
||||
trainHttpService.finetuningCreate(new HashMap<>(),new String());
|
||||
}catch(Exception e){
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
//调优任务部署
|
||||
@Async
|
||||
public void startFineTuningTask() {
|
||||
try {
|
||||
|
||||
}catch(Exception e){
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
//调优任务停止
|
||||
@Async
|
||||
public void stopFineTuningTask() {
|
||||
try {
|
||||
|
||||
}catch(Exception e){
|
||||
|
||||
};
|
||||
}
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
package cn.iocoder.yudao.module.llm.service.async;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.finetuningtask.FineTuningTaskMapper;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
@Service
|
||||
public class AsyncModelServiceService {
|
||||
|
||||
@Resource
|
||||
private FineTuningTaskMapper fineTuningTaskMapper;
|
||||
|
||||
//模型服务开启
|
||||
@Async
|
||||
public void startModelService() {
|
||||
try {
|
||||
|
||||
}catch(Exception e){
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
//调型服务关闭
|
||||
@Async
|
||||
public void stopModelService() {
|
||||
try {
|
||||
|
||||
}catch(Exception e){
|
||||
|
||||
};
|
||||
}
|
||||
}
|
@ -1,29 +1,28 @@
|
||||
package cn.iocoder.yudao.module.llm.service.finetuningtask;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.finetuningtask.vo.FineTuningTaskPageReqVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.finetuningtask.vo.FineTuningTaskRespVO;
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.finetuningtask.vo.FineTuningTaskSaveReqVO;
|
||||
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.modelservice.ModelServiceDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.finetuningtask.FineTuningTaskDO;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.basemodel.BaseModelMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.dataset.DatasetMapper;
|
||||
import cn.iocoder.yudao.module.llm.dal.mysql.finetuningtask.FineTuningTaskMapper;
|
||||
import cn.iocoder.yudao.module.llm.service.async.AsyncFineTuningTaskService;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||
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 javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.controller.admin.finetuningtask.vo.*;
|
||||
import cn.iocoder.yudao.module.llm.dal.dataobject.finetuningtask.FineTuningTaskDO;
|
||||
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.finetuningtask.FineTuningTaskMapper;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static cn.iocoder.yudao.module.llm.enums.ErrorCodeConstants.FINE_TUNING_TASK_NOT_EXISTS;
|
||||
|
||||
@ -43,12 +42,16 @@ public class FineTuningTaskServiceImpl implements FineTuningTaskService {
|
||||
private BaseModelMapper baseModelMapper;
|
||||
@Resource
|
||||
private DatasetMapper datasetMapper;
|
||||
@Resource
|
||||
private AsyncFineTuningTaskService asyncFineTuningTaskService;
|
||||
|
||||
@Override
|
||||
public Long createFineTuningTask(FineTuningTaskSaveReqVO createReqVO) {
|
||||
// 插入
|
||||
FineTuningTaskDO fineTuningTask = BeanUtils.toBean(createReqVO, FineTuningTaskDO.class);
|
||||
fineTuningTaskMapper.insert(fineTuningTask);
|
||||
//todo 调用模型服务,创建调优任务
|
||||
asyncFineTuningTaskService.createTuning(fineTuningTask);
|
||||
// 返回
|
||||
return fineTuningTask.getId();
|
||||
}
|
||||
@ -127,26 +130,25 @@ public class FineTuningTaskServiceImpl implements FineTuningTaskService {
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
* 停止服务
|
||||
* @param id
|
||||
*/
|
||||
@Override
|
||||
public void stopFineTuningTask(Long id) {
|
||||
fineTuningTaskMapper.stopStartTask(id,0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void startFineTuningTask(Long id) {
|
||||
fineTuningTaskMapper.stopStartTask(id,1);
|
||||
//todo 调用模型服务,开启调优任务
|
||||
asyncFineTuningTaskService.startFineTuningTask();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<FineTuningTaskDO> getFineTuningTaskPage(FineTuningTaskPageReqVO pageReqVO) {
|
||||
PageResult<FineTuningTaskDO> pageResult = fineTuningTaskMapper.selectPage(pageReqVO);
|
||||
PageResult<FineTuningTaskRespVO> result = BeanUtils.toBean(pageResult, FineTuningTaskRespVO.class);
|
||||
public void stopFineTuningTask(Long id) {
|
||||
fineTuningTaskMapper.stopStartTask(id,0);
|
||||
//todo 调用模型服务,停止调优任务
|
||||
asyncFineTuningTaskService.stopFineTuningTask();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public PageResult<FineTuningTaskDO> getFineTuningTaskPage(FineTuningTaskPageReqVO pageReqVO) {
|
||||
return fineTuningTaskMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -57,4 +57,8 @@ public interface ModelServiceService {
|
||||
* @return
|
||||
*/
|
||||
List<ModelServiceDO> getModelServiceList();
|
||||
|
||||
void active(ModelServiceSaveReqVO updateReqVO);
|
||||
|
||||
void unactive(ModelServiceSaveReqVO updateReqVO);
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package cn.iocoder.yudao.module.llm.service.modelservice;
|
||||
|
||||
import cn.iocoder.yudao.module.llm.service.async.AsyncModelServiceService;
|
||||
import org.springframework.stereotype.Service;
|
||||
import javax.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
@ -29,6 +30,9 @@ public class ModelServiceServiceImpl implements ModelServiceService {
|
||||
@Resource
|
||||
private ModelServiceMapper modelServiceMapper;
|
||||
|
||||
@Resource
|
||||
private AsyncModelServiceService asyncModelServiceService;
|
||||
|
||||
@Override
|
||||
public Long createModelService(ModelServiceSaveReqVO createReqVO) {
|
||||
// 插入
|
||||
@ -76,4 +80,25 @@ public class ModelServiceServiceImpl implements ModelServiceService {
|
||||
return modelServiceMapper.selectList();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void active(ModelServiceSaveReqVO updateReqVO) {
|
||||
ModelServiceDO updateObj = BeanUtils.toBean(updateReqVO, ModelServiceDO.class);
|
||||
updateObj.setStatus(1);
|
||||
modelServiceMapper.updateById(updateObj);
|
||||
|
||||
//todo 开启模型服务
|
||||
asyncModelServiceService.startModelService();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void unactive(ModelServiceSaveReqVO updateReqVO) {
|
||||
ModelServiceDO updateObj = BeanUtils.toBean(updateReqVO, ModelServiceDO.class);
|
||||
updateObj.setStatus(0);
|
||||
modelServiceMapper.updateById(updateObj);
|
||||
|
||||
//todo 关闭模型服务
|
||||
asyncModelServiceService.stopModelService();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user