Class ChunkElasticService
java.lang.Object
com.bytedesk.kbase.llm_chunk.elastic.ChunkElasticService
elasticsearch 全文检索服务
- Author:
- jackning
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate ChunkRestServiceprivate org.springframework.data.elasticsearch.core.ElasticsearchOperations -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidapplyHighlighting(ChunkElasticSearchResult result, String query, ChunkElastic chunkElastic) 为搜索结果添加高亮deleteByKbaseUid(String kbaseUid) 根据知识库UID删除所有相关Chunk索引deleteChunk(String chunkUid) 从Elasticsearch中删除Chunk的索引voidindexChunk(ChunkEntity chunk) 索引Chunk实体到ElasticsearchsearchChunks(String query, String kbUid, String categoryUid, String orgUid) 搜索Chunk内容private List<ChunkElasticSearchResult>searchChunksInternal(String query, String kbUid, String categoryUid, String orgUid, boolean isSuggest, Integer maxResults) 搜索Chunk内容 - 私有辅助方法,处理搜索和联想的共同逻辑suggestChunks(ChunkRequest request) 用户在输入过程中,给出输入联想voidupdateAllIndex(ChunkRequest request) voidupdateIndex(ChunkRequest request)
-
Field Details
-
elasticsearchOperations
@Autowired private org.springframework.data.elasticsearch.core.ElasticsearchOperations elasticsearchOperations -
chunkRestService
-
-
Constructor Details
-
ChunkElasticService
public ChunkElasticService()
-
-
Method Details
-
updateIndex
-
updateAllIndex
-
indexChunk
索引Chunk实体到Elasticsearch- Parameters:
chunk- 要索引的Chunk实体
-
deleteChunk
从Elasticsearch中删除Chunk的索引- Parameters:
chunkUid- 要删除的Chunk的UID- Returns:
- 是否删除成功
-
deleteByKbaseUid
根据知识库UID删除所有相关Chunk索引- Parameters:
kbaseUid- 知识库UID- Returns:
- 是否删除成功
-
searchChunks
public List<ChunkElasticSearchResult> searchChunks(String query, String kbUid, String categoryUid, String orgUid) 搜索Chunk内容- Parameters:
query- 查询关键词kbUid- 知识库UID(可选)categoryUid- 分类UID(可选)orgUid- 组织UID(可选)- Returns:
- Chunk搜索结果列表
-
suggestChunks
用户在输入过程中,给出输入联想- Parameters:
request- 请求参数- Returns:
- Chunk搜索结果列表
-
searchChunksInternal
private List<ChunkElasticSearchResult> searchChunksInternal(String query, String kbUid, String categoryUid, String orgUid, boolean isSuggest, Integer maxResults) 搜索Chunk内容 - 私有辅助方法,处理搜索和联想的共同逻辑- Parameters:
query- 搜索关键词kbUid- 知识库UID(可选)categoryUid- 分类UID(可选)orgUid- 组织UID(可选)isSuggest- 是否为输入联想模式maxResults- 最大结果数,为null则不限制- Returns:
- 搜索结果列表
-
applyHighlighting
private void applyHighlighting(ChunkElasticSearchResult result, String query, ChunkElastic chunkElastic) 为搜索结果添加高亮
-