mirror of
https://gitee.com/huangge1199_admin/vue-pro.git
synced 2025-01-19 03:30:06 +08:00
【优化】AI知识库:visibilityPermissions 使用 list
This commit is contained in:
parent
c05d7c9f95
commit
1de70eeeb3
@ -5,6 +5,8 @@ import jakarta.validation.constraints.NotBlank;
|
|||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Schema(description = "管理后台 - AI 知识库创建 Request VO")
|
@Schema(description = "管理后台 - AI 知识库创建 Request VO")
|
||||||
@Data
|
@Data
|
||||||
public class AiKnowledgeCreateReqVO {
|
public class AiKnowledgeCreateReqVO {
|
||||||
@ -16,8 +18,8 @@ public class AiKnowledgeCreateReqVO {
|
|||||||
@Schema(description = "知识库描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "存储 ruoyi-vue-pro 操作文档")
|
@Schema(description = "知识库描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "存储 ruoyi-vue-pro 操作文档")
|
||||||
private String description;
|
private String description;
|
||||||
|
|
||||||
@Schema(description = "可见权限,只能选择哪些人可见", requiredMode = Schema.RequiredMode.REQUIRED, example = "1,2,3")
|
@Schema(description = "可见权限,只能选择哪些人可见", requiredMode = Schema.RequiredMode.REQUIRED, example = "[1,2,3]")
|
||||||
private String visibilityPermissions;
|
private List<Long> visibilityPermissions;
|
||||||
|
|
||||||
@Schema(description = "嵌入模型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
@Schema(description = "嵌入模型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||||
@NotNull(message = "嵌入模型不能为空")
|
@NotNull(message = "嵌入模型不能为空")
|
||||||
|
@ -5,6 +5,8 @@ import jakarta.validation.constraints.NotBlank;
|
|||||||
import jakarta.validation.constraints.NotNull;
|
import jakarta.validation.constraints.NotNull;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Schema(description = "管理后台 - AI 知识库更新【我的】 Request VO")
|
@Schema(description = "管理后台 - AI 知识库更新【我的】 Request VO")
|
||||||
@Data
|
@Data
|
||||||
public class AiKnowledgeUpdateReqVO {
|
public class AiKnowledgeUpdateReqVO {
|
||||||
@ -21,7 +23,7 @@ public class AiKnowledgeUpdateReqVO {
|
|||||||
private String description;
|
private String description;
|
||||||
|
|
||||||
@Schema(description = "可见权限,只能选择哪些人可见", requiredMode = Schema.RequiredMode.REQUIRED, example = "1,2,3")
|
@Schema(description = "可见权限,只能选择哪些人可见", requiredMode = Schema.RequiredMode.REQUIRED, example = "1,2,3")
|
||||||
private String visibilityPermissions;
|
private List<Long> visibilityPermissions;
|
||||||
|
|
||||||
@Schema(description = "嵌入模型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
@Schema(description = "嵌入模型编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||||
@NotNull(message = "嵌入模型不能为空")
|
@NotNull(message = "嵌入模型不能为空")
|
||||||
|
@ -2,10 +2,14 @@ package cn.iocoder.yudao.module.ai.dal.dataobject.knowledge;
|
|||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||||
|
import cn.iocoder.yudao.framework.mybatis.core.type.LongListTypeHandler;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* AI 知识库 DO
|
* AI 知识库 DO
|
||||||
*
|
*
|
||||||
@ -40,7 +44,8 @@ public class AiKnowledgeDO extends BaseDO {
|
|||||||
* <p>
|
* <p>
|
||||||
* -1 所有人可见,其他为各自用户编号
|
* -1 所有人可见,其他为各自用户编号
|
||||||
*/
|
*/
|
||||||
private String visibilityPermissions;
|
@TableField(typeHandler = LongListTypeHandler.class)
|
||||||
|
private List<Long> visibilityPermissions;
|
||||||
/**
|
/**
|
||||||
* 嵌入模型编号
|
* 嵌入模型编号
|
||||||
*/
|
*/
|
||||||
|
@ -156,11 +156,10 @@ public class AiChatMessageServiceImpl implements AiChatMessageService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private List<AiKnowledgeSegmentDO> recallSegment(String content, Long knowledgeId) {
|
private List<AiKnowledgeSegmentDO> recallSegment(String content, Long knowledgeId) {
|
||||||
List<AiKnowledgeSegmentDO> segmentList = new ArrayList<>();
|
if (Objects.isNull(knowledgeId)) {
|
||||||
if (Objects.nonNull(knowledgeId)) {
|
return Collections.emptyList();
|
||||||
segmentList = knowledgeSegmentService.similaritySearch(new AiKnowledgeSegmentSearchReqVO().setKnowledgeId(knowledgeId).setContent(content));
|
|
||||||
}
|
}
|
||||||
return segmentList;
|
return knowledgeSegmentService.similaritySearch(new AiKnowledgeSegmentSearchReqVO().setKnowledgeId(knowledgeId).setContent(content));
|
||||||
}
|
}
|
||||||
|
|
||||||
private Prompt buildPrompt(AiChatConversationDO conversation, List<AiChatMessageDO> messages,List<AiKnowledgeSegmentDO> segmentList,
|
private Prompt buildPrompt(AiChatConversationDO conversation, List<AiChatMessageDO> messages,List<AiKnowledgeSegmentDO> segmentList,
|
||||||
|
Loading…
Reference in New Issue
Block a user