Commit 27f052de0a7bf9f61d17eea59427aee8fcf79c47

Authored by cherishsince
1 parent 74620ebc

【增加】midjourney 增加 --ar 参数设置

yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/image/vo/AiImageMidjourneyImagineReqVO.java
@@ -25,6 +25,12 @@ public class AiImageMidjourneyImagineReqVO { @@ -25,6 +25,12 @@ public class AiImageMidjourneyImagineReqVO {
25 @Schema(description = "模型(midjourney、niji)") 25 @Schema(description = "模型(midjourney、niji)")
26 private String model; 26 private String model;
27 27
  28 + @Schema(description = "图片宽度")
  29 + private String width;
  30 +
  31 + @Schema(description = "图片高度")
  32 + private String height;
  33 +
28 @Schema(description = "垫图(参考图)base64数组") 34 @Schema(description = "垫图(参考图)base64数组")
29 private List<String> base64Array; 35 private List<String> base64Array;
30 } 36 }
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/image/AiImageServiceImpl.java
@@ -12,8 +12,8 @@ import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; @@ -12,8 +12,8 @@ import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
12 import cn.iocoder.yudao.module.ai.AiCommonConstants; 12 import cn.iocoder.yudao.module.ai.AiCommonConstants;
13 import cn.iocoder.yudao.module.ai.ErrorCodeConstants; 13 import cn.iocoder.yudao.module.ai.ErrorCodeConstants;
14 import cn.iocoder.yudao.module.ai.client.MidjourneyProxyClient; 14 import cn.iocoder.yudao.module.ai.client.MidjourneyProxyClient;
  15 +import cn.iocoder.yudao.module.ai.client.enums.MidjourneySubmitCodeEnum;
15 import cn.iocoder.yudao.module.ai.client.vo.MidjourneyImagineReqVO; 16 import cn.iocoder.yudao.module.ai.client.vo.MidjourneyImagineReqVO;
16 -import cn.iocoder.yudao.module.ai.client.vo.MidjourneySubmitCodeEnum;  
17 import cn.iocoder.yudao.module.ai.client.vo.MidjourneySubmitRespVO; 17 import cn.iocoder.yudao.module.ai.client.vo.MidjourneySubmitRespVO;
18 import cn.iocoder.yudao.module.ai.controller.admin.image.vo.*; 18 import cn.iocoder.yudao.module.ai.controller.admin.image.vo.*;
19 import cn.iocoder.yudao.module.ai.dal.dataobject.image.AiImageDO; 19 import cn.iocoder.yudao.module.ai.dal.dataobject.image.AiImageDO;
@@ -157,7 +157,8 @@ public class AiImageServiceImpl implements AiImageService { @@ -157,7 +157,8 @@ public class AiImageServiceImpl implements AiImageService {
157 // 3、调用 MidjourneyProxy 提交任务 157 // 3、调用 MidjourneyProxy 提交任务
158 MidjourneyImagineReqVO imagineReqVO = BeanUtils.toBean(req, MidjourneyImagineReqVO.class); 158 MidjourneyImagineReqVO imagineReqVO = BeanUtils.toBean(req, MidjourneyImagineReqVO.class);
159 imagineReqVO.setNotifyHook(midjourneyNotifyUrl); 159 imagineReqVO.setNotifyHook(midjourneyNotifyUrl);
160 - imagineReqVO.setState(String.valueOf(aiImageDO.getId())); 160 + // 设置 midjourney 扩展参数,通过 --ar 来设置尺寸
  161 + imagineReqVO.setState(String.format("--ar %s:%s", req.getWidth(), req.getHeight()));
161 MidjourneySubmitRespVO submitRespVO = midjourneyProxyClient.imagine(imagineReqVO); 162 MidjourneySubmitRespVO submitRespVO = midjourneyProxyClient.imagine(imagineReqVO);
162 163
163 // 4、保存任务 id (状态码: 1(提交成功), 21(已存在), 22(排队中), other(错误)) 164 // 4、保存任务 id (状态码: 1(提交成功), 21(已存在), 22(排队中), other(错误))