Commit 102dceb9 authored by alex yao's avatar alex yao

refactor: 重构知识库训练-异步

parent 814d1100
......@@ -240,7 +240,10 @@ public interface DgtoolsApiConstants {
* 知识库
*/
String TRAIN_KNOWLEDGE = "knowLedgeRest/trainKnowLedge.json";
String TRAIN_KNOWLEDGE_EVENT = "knowLedgeRest/trainKnowLedgeEvent.json";
String TRAIN_KNOWLEDGE_STATUS = "/knowLedgeRest/trainKnowLedgeStatus.json";
String DEL_KNOWLEDGE = "knowLedgeRest/delKnowLedge.json";
String SEARCH_KNOWLEDGE = "knowLedgeRest/searchKnowledge.json";
......
......@@ -19,6 +19,22 @@ public interface DemandKnowledgeService {
*/
String trainKnowledge(String fileURL, SegmentationConfigRequest segmentationConfig);
/**
* 训练知识库-异步
*
* @param fileURL 训练文档
* @return 知识库id
*/
String trainKnowledgeEvent(String fileURL, SegmentationConfigRequest segmentationConfig);
/**
* 获取知识库训练状态
*
* @param knowledgeId
* @return 训练状态
*/
String trainKnowledgeStatus(String knowledgeId);
/**
* 删除知识库
*
......
......@@ -40,6 +40,31 @@ public class DemandKnowledgeServiceImpl implements DemandKnowledgeService {
return trainKnowledgeResult.getKnowledgeId();
}
@Override
public String trainKnowledgeEvent(String fileURL, SegmentationConfigRequest segmentationConfig) {
Assert.notBlank(fileURL);
TrainKnowledgeRequest request = new TrainKnowledgeRequest();
request.setDocumentUrl(fileURL);
request.setSegmentationConfig(segmentationConfig);
TrainKnowledgeResult trainKnowledgeResult = dgToolsAbstractHttpClient.doRequest(DgtoolsApiConstants.DgtoolsAI.TRAIN_KNOWLEDGE_EVENT, request, getHeaders());
if (null == trainKnowledgeResult) {
throw new BusinessException("train knowledge error");
}
return trainKnowledgeResult.getKnowledgeId();
}
@Override
public String trainKnowledgeStatus(String knowledgeId) {
Assert.notBlank(knowledgeId);
TrainKnowledgeStatusRequest request = new TrainKnowledgeStatusRequest();
request.setKnowledgeId(knowledgeId);
TrainKnowledgeStatusResult trainKnowledgeStatusResult = dgToolsAbstractHttpClient.doRequest(DgtoolsApiConstants.DgtoolsAI.TRAIN_KNOWLEDGE_STATUS, request, getHeaders());
if (null == trainKnowledgeStatusResult) {
throw new BusinessException("get knowledge train status error");
}
return trainKnowledgeStatusResult.getTrainStatus();
}
@Override
public void delKnowledge(String knowledgeId) {
Assert.notBlank(knowledgeId);
......
package cn.com.poc.thirdparty.resource.demand.ai.constants;
public interface KnowledgeTrainStatusConstant {
String unTrain = "unTrain";
String line = "line";
String train = "train";
String fail = "fail";
String success = "success";
}
package cn.com.poc.thirdparty.resource.demand.ai.entity.knowledge;
import cn.com.poc.support.dgTools.request.AbstractRequest;
import java.io.Serializable;
public class TrainKnowledgeStatusRequest extends AbstractRequest<TrainKnowledgeStatusResult> implements Serializable {
private String knowledgeId;
public String getKnowledgeId() {
return knowledgeId;
}
public void setKnowledgeId(String knowledgeId) {
this.knowledgeId = knowledgeId;
}
@Override
public String getMethod() throws Exception {
return null;
}
}
package cn.com.poc.thirdparty.resource.demand.ai.entity.knowledge;
import cn.com.poc.support.dgTools.result.AbstractResult;
import java.io.Serializable;
public class TrainKnowledgeStatusResult extends AbstractResult implements Serializable {
private String trainStatus;
public String getTrainStatus() {
return trainStatus;
}
public void setTrainStatus(String trainStatus) {
this.trainStatus = trainStatus;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment