From 0a1b8dcf0a9af73f4cc0904487791f6730e79a71 Mon Sep 17 00:00:00 2001 From: Liuyang <2746366019@qq.com> Date: Thu, 13 Feb 2025 19:00:36 +0800 Subject: [PATCH] =?UTF-8?q?fix(llm):=20=E4=BF=AE=E5=A4=8D=E6=A8=A1?= =?UTF-8?q?=E5=9E=8B=E9=83=A8=E7=BD=B2=E5=A4=B1=E8=B4=A5=E6=97=B6=E7=9A=84?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E6=9B=B4=E6=96=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 AsyncModelServiceService 和 BaseModelTaskService 中添加对部署失败的处理逻辑 - 修改 TrainHttpService 中的 modelDeploy 方法,增加错误处理和状态码检查 - 优化日志记录,便于排查问题 --- .../llm/service/async/AsyncModelServiceService.java | 11 ++++++++--- .../llm/service/basemodel/BaseModelTaskService.java | 12 +++++++----- .../module/llm/service/http/TrainHttpService.java | 10 +++++++++- 3 files changed, 24 insertions(+), 9 deletions(-) diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/async/AsyncModelServiceService.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/async/AsyncModelServiceService.java index 66ad0065a..fbba40111 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/async/AsyncModelServiceService.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/async/AsyncModelServiceService.java @@ -84,9 +84,14 @@ public class AsyncModelServiceService { AigcModelDeploySaveReq aigcModelDeploySaveReq = new AigcModelDeploySaveReq(modelServiceDO.getBaseModelName(), "gpu"); ModelDeployRespVO modelDeployRespVO = trainHttpService.modelDeploy(new HashMap<>(), aigcModelDeploySaveReq); - updateObj.setStatus(1); - updateObj.setJobId(modelDeployRespVO.getId()); - updateObj.setModelUrl(modelDeployRespVO.getPort()+DEFAULT_MODEL_URL_SUFFIX); + if (modelDeployRespVO.getMessage().equals("error")){ + updateObj.setStatus(3); + }else { + updateObj.setStatus(1); + updateObj.setJobId(modelDeployRespVO.getId()); + updateObj.setModelUrl(modelDeployRespVO.getPort()+DEFAULT_MODEL_URL_SUFFIX); + } + modelServiceMapper.updateById(updateObj); }catch(Exception e){ // updateObj.setStatus(3); diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/basemodel/BaseModelTaskService.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/basemodel/BaseModelTaskService.java index 0744f3966..3ebbac412 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/basemodel/BaseModelTaskService.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/basemodel/BaseModelTaskService.java @@ -60,11 +60,13 @@ public class BaseModelTaskService { AigcModelDeploySaveReq aigcModelDeploySaveReq = new AigcModelDeploySaveReq(baseModelDO.getAigcModelName(), "gpu"); ModelDeployRespVO modelDeployRespVO = trainHttpService.modelDeploy(new HashMap<>(), aigcModelDeploySaveReq); - BaseModelSaveReqVO baseModelSaveReqVO = new BaseModelSaveReqVO(); - baseModelSaveReqVO.setId(baseModelDO.getId()); - baseModelSaveReqVO.setModelId(modelDeployRespVO.getId()); - baseModelSaveReqVO.setChatUrl(modelDeployRespVO.getPort() + DEFAULT_MODEL_URL_SUFFIX); - baseModelService.updateBaseModel(new BaseModelSaveReqVO()); + if (!modelDeployRespVO.getMessage().equals("error")) { + BaseModelSaveReqVO baseModelSaveReqVO = new BaseModelSaveReqVO(); + baseModelSaveReqVO.setId(baseModelDO.getId()); + baseModelSaveReqVO.setModelId(modelDeployRespVO.getId()); + baseModelSaveReqVO.setChatUrl(modelDeployRespVO.getPort() + DEFAULT_MODEL_URL_SUFFIX); + baseModelService.updateBaseModel(new BaseModelSaveReqVO()); + } } } } diff --git a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java index 670324a24..70557eeb8 100644 --- a/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java +++ b/yudao-module-llm/yudao-module-llm-biz/src/main/java/cn/iocoder/yudao/module/llm/service/http/TrainHttpService.java @@ -244,7 +244,15 @@ public class TrainHttpService { log.info(" modelDeploy request:{}", JSON.toJSONString(req)); String res = HttpUtils.post(modelDeploy, headers, JSON.toJSONString(req)); log.info(" modelDeploy:{}", res); - ModelDeployRespVO modelDeployRespVO = JSON.parseObject(res.getBytes(), ModelDeployRespVO.class); + JSONObject parseObject = JSON.parseObject(res); + ModelDeployRespVO modelDeployRespVO=new ModelDeployRespVO(); + + if(parseObject.getString("res").contains("error")){ + modelDeployRespVO.setMessage("error"); + return modelDeployRespVO; + } + modelDeployRespVO = JSON.parseObject(res.getBytes(), ModelDeployRespVO.class); + return modelDeployRespVO; } public AigcModelDeployVO modelUndeploy(Map headers, Long deployId) {