Class TextVectorService
java.lang.Object
com.bytedesk.kbase.llm_text.vector.TextVectorService
@Service
@ConditionalOnBean(org.springframework.ai.vectorstore.elasticsearch.ElasticsearchVectorStore.class)
public class TextVectorService
extends Object
Text向量检索服务
用于处理Text的向量存储和相似度搜索
- Author:
- jackning
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final TextRestServiceprivate final org.springframework.ai.vectorstore.elasticsearch.ElasticsearchVectorStore -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidcheckAndDeleteExistingDoc(String docId) 检查并删除已存在的文档deleteTextVector(TextEntity text) 从向量存储中删除文本voidindexTextVector(TextEntity text) 将文本内容添加到向量存储中searchTextVector(String query, String kbUid, String categoryUid, String orgUid, int limit) 在向量存储中进行语义搜索voidupdateAllVectorIndex(TextRequest request) 更新所有文本的向量索引voidupdateVectorIndex(TextRequest request) 更新文本的向量索引
-
Field Details
-
vectorStore
private final org.springframework.ai.vectorstore.elasticsearch.ElasticsearchVectorStore vectorStore -
textRestService
-
-
Constructor Details
-
TextVectorService
public TextVectorService()
-
-
Method Details
-
indexTextVector
将文本内容添加到向量存储中- Parameters:
text- 文本实体
-
updateVectorIndex
更新文本的向量索引- Parameters:
request- 文本请求对象
-
updateAllVectorIndex
更新所有文本的向量索引- Parameters:
request- 文本请求对象,包含知识库ID
-
deleteTextVector
从向量存储中删除文本- Parameters:
text- 要删除的文本实体- Returns:
- 是否删除成功
-
searchTextVector
public List<TextVectorSearchResult> searchTextVector(String query, String kbUid, String categoryUid, String orgUid, int limit) 在向量存储中进行语义搜索- Parameters:
query- 搜索关键词kbUid- 知识库UID(可选)categoryUid- 分类UID(可选)orgUid- 组织UID(可选)limit- 返回结果数量限制- Returns:
- 相似度搜索结果列表
-
checkAndDeleteExistingDoc
检查并删除已存在的文档- Parameters:
docId- 文档ID
-