Commit cc24eca470cea786c065b327ef2e4ea1dbe06e40

Authored by YunaiV
1 parent 433e91da

【代码重构】AI:“聊天模型”重构为“模型”,支持 type 模型类型

yudao-module-ai/yudao-module-ai-api/src/main/java/cn/iocoder/yudao/module/ai/enums/ErrorCodeConstants.java
... ... @@ -17,6 +17,7 @@ public interface ErrorCodeConstants {
17 17 ErrorCode MODEL_NOT_EXISTS = new ErrorCode(1_040_001_000, "模型不存在!");
18 18 ErrorCode MODEL_DISABLE = new ErrorCode(1_040_001_001, "模型({})已禁用!");
19 19 ErrorCode MODEL_DEFAULT_NOT_EXISTS = new ErrorCode(1_040_001_002, "操作失败,找不到默认模型");
  20 + ErrorCode MODEL_USE_TYPE_ERROR = new ErrorCode(1_040_001_003, "操作失败,该模型的模型类型不正确");
20 21  
21 22 // ========== API 聊天角色 1-040-002-000 ==========
22 23 ErrorCode CHAT_ROLE_NOT_EXISTS = new ErrorCode(1_040_002_000, "聊天角色不存在");
... ...
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/controller/admin/knowledge/vo/segment/AiKnowledgeSegmentSaveReqVO.java 0 → 100644
  1 +package cn.iocoder.yudao.module.ai.controller.admin.knowledge.vo.segment;
  2 +
  3 +import io.swagger.v3.oas.annotations.media.Schema;
  4 +import jakarta.validation.constraints.NotEmpty;
  5 +import lombok.Data;
  6 +
  7 +@Schema(description = "管理后台 - AI 新增/修改知识库段落 request VO")
  8 +@Data
  9 +public class AiKnowledgeSegmentSaveReqVO {
  10 +
  11 + @Schema(description = "编号", example = "24790")
  12 + private Long id;
  13 +
  14 + @Schema(description = "知识库文档编号", example = "1024")
  15 + private Long documentId;
  16 +
  17 + @Schema(description = "切片内容", requiredMode = Schema.RequiredMode.REQUIRED, example = "Java 开发手册")
  18 + @NotEmpty(message = "切片内容不能为空")
  19 + private String content;
  20 +
  21 +}
... ...
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/mindmap/AiMindMapServiceImpl.java
1 1 package cn.iocoder.yudao.module.ai.service.mindmap;
2 2  
3 3 import cn.hutool.core.collection.CollUtil;
4   -import cn.hutool.core.lang.Assert;
  4 +import cn.hutool.core.util.ObjUtil;
5 5 import cn.hutool.core.util.StrUtil;
6 6 import cn.iocoder.yudao.framework.ai.core.enums.AiModelTypeEnum;
7 7 import cn.iocoder.yudao.framework.ai.core.enums.AiPlatformEnum;
... ... @@ -38,7 +38,7 @@ import java.util.List;
38 38 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
39 39 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.error;
40 40 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
41   -import static cn.iocoder.yudao.module.ai.enums.ErrorCodeConstants.MIND_MAP_NOT_EXISTS;
  41 +import static cn.iocoder.yudao.module.ai.enums.ErrorCodeConstants.*;
42 42  
43 43 /**
44 44 * AI 思维导图 Service 实现类
... ... @@ -129,7 +129,13 @@ public class AiMindMapServiceImpl implements AiMindMapService {
129 129 if (model == null) {
130 130 model = modalService.getRequiredDefaultModel(AiModelTypeEnum.CHAT.getType());
131 131 }
132   - Assert.notNull(model, "[AI] 获取不到模型");
  132 + // 校验模型存在、且合法
  133 + if (model == null) {
  134 + throw exception(MODEL_NOT_EXISTS);
  135 + }
  136 + if (ObjUtil.notEqual(model.getType(), AiModelTypeEnum.CHAT.getType())) {
  137 + throw exception(MODEL_USE_TYPE_ERROR);
  138 + }
133 139 return model;
134 140 }
135 141  
... ...
yudao-module-ai/yudao-module-ai-biz/src/main/java/cn/iocoder/yudao/module/ai/service/write/AiWriteServiceImpl.java
1 1 package cn.iocoder.yudao.module.ai.service.write;
2 2  
3 3 import cn.hutool.core.collection.CollUtil;
4   -import cn.hutool.core.lang.Assert;
  4 +import cn.hutool.core.util.ObjUtil;
5 5 import cn.hutool.core.util.StrUtil;
6 6 import cn.iocoder.yudao.framework.ai.core.enums.AiModelTypeEnum;
7 7 import cn.iocoder.yudao.framework.ai.core.enums.AiPlatformEnum;
... ... @@ -42,7 +42,7 @@ import java.util.Objects;
42 42 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
43 43 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.error;
44 44 import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
45   -import static cn.iocoder.yudao.module.ai.enums.ErrorCodeConstants.WRITE_NOT_EXISTS;
  45 +import static cn.iocoder.yudao.module.ai.enums.ErrorCodeConstants.*;
46 46  
47 47 /**
48 48 * AI 写作 Service 实现类
... ... @@ -115,7 +115,13 @@ public class AiWriteServiceImpl implements AiWriteService {
115 115 if (model == null) {
116 116 model = modalService.getRequiredDefaultModel(AiModelTypeEnum.CHAT.getType());
117 117 }
118   - Assert.notNull(model, "[AI] 获取不到模型");
  118 + // 校验模型存在、且合法
  119 + if (model == null) {
  120 + throw exception(MODEL_NOT_EXISTS);
  121 + }
  122 + if (ObjUtil.notEqual(model.getType(), AiModelTypeEnum.CHAT.getType())) {
  123 + throw exception(MODEL_USE_TYPE_ERROR);
  124 + }
119 125 return model;
120 126 }
121 127  
... ...