Package com.bytedesk.kbase.llm_chunk
Class ChunkVectorService
java.lang.Object
com.bytedesk.kbase.llm_chunk.ChunkVectorService
Chunk向量检索服务
用于处理Chunk的向量存储和相似度搜索
- Author:
- jackning
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ChunkRestService
private final org.springframework.ai.embedding.EmbeddingModel
private final org.springframework.ai.vectorstore.elasticsearch.ElasticsearchVectorStore
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
检查并删除已存在的文档void
deleteChunkVector
(ChunkEntity chunk) 删除chunk的向量索引void
indexChunkVector
(ChunkEntity chunk) 将chunk内容添加到向量存储中searchChunkVector
(String query, String kbUid, String categoryUid, String orgUid, int limit) 向量相似度搜索searchChunkVector
(String query, String kbUid, String categoryUid, String orgUid, int limit, double similarity) 向量相似度搜索(带相似度阈值参数)void
updateAllVectorIndex
(ChunkRequest request) void
updateVectorIndex
(ChunkRequest request) 更新chunk的向量索引
-
Field Details
-
vectorStore
private final org.springframework.ai.vectorstore.elasticsearch.ElasticsearchVectorStore vectorStore -
chunkRestService
-
embeddingModel
@Qualifier("bytedeskOllamaEmbeddingModel") private final org.springframework.ai.embedding.EmbeddingModel embeddingModel
-
-
Constructor Details
-
ChunkVectorService
public ChunkVectorService()
-
-
Method Details
-
indexChunkVector
将chunk内容添加到向量存储中- Parameters:
chunk
- Chunk实体
-
updateVectorIndex
更新chunk的向量索引- Parameters:
request
- chunk请求对象
-
updateAllVectorIndex
-
deleteChunkVector
删除chunk的向量索引- Parameters:
chunk
- Chunk实体
-
searchChunkVector
public List<ChunkVectorSearchResult> searchChunkVector(String query, String kbUid, String categoryUid, String orgUid, int limit) 向量相似度搜索- Parameters:
query
- 查询文本kbUid
- 知识库UID (可选)categoryUid
- 分类UID (可选)orgUid
- 组织UID (可选)limit
- 返回结果数量限制- Returns:
- 搜索结果列表
-
searchChunkVector
public List<ChunkVectorSearchResult> searchChunkVector(String query, String kbUid, String categoryUid, String orgUid, int limit, double similarity) 向量相似度搜索(带相似度阈值参数)- Parameters:
query
- 查询文本kbUid
- 知识库UID (可选)categoryUid
- 分类UID (可选)orgUid
- 组织UID (可选)limit
- 返回结果数量限制similarity
- 相似度阈值 (0-1)- Returns:
- 搜索结果列表
-
checkAndDeleteExistingDoc
检查并删除已存在的文档- Parameters:
id
- 文档ID
-