dengzedong
2024-12-26 efdc380e66bbc3112eb87d7522f0a37d082082e1
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/impl/PredictModelHandlerImpl.java
@@ -99,15 +99,14 @@
            //IAILMDK.run
            HashMap<String, Object> modelResult = DllUtils.run(newModelBean, param2Values, predictModel.getMpkprojectid());
            //打印结果
            log.info("预测模型计算完成:modelId=" + modelId + ",modelName=" + predictModel.getMethodname() + ",modelResult=" + JSON.toJSONString(modelResult));
            //判断模型结果
            if (!modelResult.containsKey(CommonConstant.MDK_STATUS_CODE) || !modelResult.containsKey(CommonConstant.MDK_RESULT) ||
                    !modelResult.get(CommonConstant.MDK_STATUS_CODE).toString().equals(CommonConstant.MDK_STATUS_100)) {
                throw new ModelResultErrorException("模型结果异常:" + modelResult);
            }
            modelResult = (HashMap<String, Object>) modelResult.get(CommonConstant.MDK_RESULT);
            //打印结果
            JSONObject jsonObjResult = new JSONObject();
            jsonObjResult.put("result", modelResult);
            log.info("预测模型计算完成:modelId=" + modelId + ",modelName=" + predictModel.getMethodname() + ",modelResult=" + String.valueOf(jsonObjResult));
            List<MmItemOutputEntity> itemOutputList = mmItemOutputService.getByItemid(predictModel.getItemid());
            Map<MmItemOutputEntity, double[]> predictMatrixs = new HashMap<>();
@@ -143,11 +142,13 @@
            result.setModelResult(modelResult);
            result.setPredictTime(predictTime);
        } catch (ModelResultErrorException ex) {
            ex.printStackTrace();
//            ex.printStackTrace();
            log.error("模型结果异常", ex);
            throw ex;
        } catch (Exception ex) {
//            log.error("调用发生异常,异常信息为:{0}", ex.getMessage());
            ex.printStackTrace();
//            ex.printStackTrace();
            log.error("模型运行异常", ex);
            throw new ModelInvokeException(ex.getMessage());
        }
        return result;