mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-11 12:07:42 +00:00
(improvement)(headless)Restructure facade and expose only ChatLayerService and SemanticLayerService.
This commit is contained in:
@@ -7,7 +7,6 @@ import com.tencent.supersonic.headless.api.pojo.request.QueryNLReq;
|
||||
import com.tencent.supersonic.headless.api.pojo.request.QuerySqlReq;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.ParseResp;
|
||||
import com.tencent.supersonic.headless.server.facade.service.ChatLayerService;
|
||||
import com.tencent.supersonic.headless.server.facade.service.RetrieveService;
|
||||
import com.tencent.supersonic.headless.server.facade.service.SemanticLayerService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -26,9 +25,6 @@ public class ChatQueryApiController {
|
||||
@Autowired
|
||||
private ChatLayerService chatLayerService;
|
||||
|
||||
@Autowired
|
||||
private RetrieveService retrieveService;
|
||||
|
||||
@Autowired
|
||||
private SemanticLayerService semanticLayerService;
|
||||
|
||||
@@ -37,7 +33,7 @@ public class ChatQueryApiController {
|
||||
HttpServletRequest request,
|
||||
HttpServletResponse response) throws Exception {
|
||||
queryNLReq.setUser(UserHolder.findUser(request, response));
|
||||
return retrieveService.retrieve(queryNLReq);
|
||||
return chatLayerService.retrieve(queryNLReq);
|
||||
}
|
||||
|
||||
@PostMapping("/chat/map")
|
||||
|
||||
@@ -8,6 +8,9 @@ import com.tencent.supersonic.headless.api.pojo.request.QuerySqlReq;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.MapInfoResp;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.MapResp;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.ParseResp;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.SearchResult;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/***dd
|
||||
* SemanticLayerService for query and search
|
||||
@@ -20,6 +23,8 @@ public interface ChatLayerService {
|
||||
|
||||
MapInfoResp map(QueryMapReq queryMapReq);
|
||||
|
||||
List<SearchResult> retrieve(QueryNLReq queryNLReq);
|
||||
|
||||
void correct(QuerySqlReq querySqlReq, User user);
|
||||
|
||||
SqlEvaluation validate(QuerySqlReq querySqlReq, User user);
|
||||
|
||||
@@ -21,12 +21,14 @@ import com.tencent.supersonic.headless.api.pojo.response.DataSetResp;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.MapInfoResp;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.MapResp;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.ParseResp;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.SearchResult;
|
||||
import com.tencent.supersonic.headless.chat.ChatQueryContext;
|
||||
import com.tencent.supersonic.headless.chat.corrector.GrammarCorrector;
|
||||
import com.tencent.supersonic.headless.chat.corrector.SchemaCorrector;
|
||||
import com.tencent.supersonic.headless.chat.knowledge.builder.BaseWordBuilder;
|
||||
import com.tencent.supersonic.headless.chat.query.SemanticQuery;
|
||||
import com.tencent.supersonic.headless.server.facade.service.ChatLayerService;
|
||||
import com.tencent.supersonic.headless.server.web.service.RetrieveService;
|
||||
import com.tencent.supersonic.headless.server.pojo.MetaFilter;
|
||||
import com.tencent.supersonic.headless.server.utils.ChatWorkflowEngine;
|
||||
import com.tencent.supersonic.headless.server.utils.ComponentFactory;
|
||||
@@ -56,6 +58,8 @@ public class S2ChatLayerService implements ChatLayerService {
|
||||
@Autowired
|
||||
private DataSetService dataSetService;
|
||||
@Autowired
|
||||
private RetrieveService retrieveService;
|
||||
@Autowired
|
||||
private ChatWorkflowEngine chatWorkflowEngine;
|
||||
|
||||
@Override
|
||||
@@ -127,6 +131,11 @@ public class S2ChatLayerService implements ChatLayerService {
|
||||
return semanticParseInfo.getSqlEvaluation();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SearchResult> retrieve(QueryNLReq queryNLReq) {
|
||||
return retrieveService.retrieve(queryNLReq);
|
||||
}
|
||||
|
||||
private SemanticParseInfo correctSqlReq(QuerySqlReq querySqlReq, User user) {
|
||||
ChatQueryContext queryCtx = new ChatQueryContext();
|
||||
SemanticSchema semanticSchema = schemaService.getSemanticSchema();
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.tencent.supersonic.headless.server.task;
|
||||
|
||||
import com.tencent.supersonic.headless.server.facade.service.FlightService;
|
||||
import com.tencent.supersonic.headless.server.web.service.FlightService;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.tencent.supersonic.headless.server.facade.service;
|
||||
package com.tencent.supersonic.headless.server.web.service;
|
||||
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import org.apache.arrow.flight.sql.FlightSqlProducer;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.tencent.supersonic.headless.server.facade.service;
|
||||
package com.tencent.supersonic.headless.server.web.service;
|
||||
|
||||
import com.tencent.supersonic.headless.api.pojo.request.QueryNLReq;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.SearchResult;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.tencent.supersonic.headless.server.facade.service.impl;
|
||||
package com.tencent.supersonic.headless.server.web.service.impl;
|
||||
|
||||
import static com.google.protobuf.Any.pack;
|
||||
import static com.google.protobuf.ByteString.copyFrom;
|
||||
@@ -20,7 +20,7 @@ import com.tencent.supersonic.headless.api.pojo.Param;
|
||||
import com.tencent.supersonic.headless.api.pojo.request.QuerySqlReq;
|
||||
import com.tencent.supersonic.headless.api.pojo.request.SemanticQueryReq;
|
||||
import com.tencent.supersonic.headless.api.pojo.response.SemanticQueryResp;
|
||||
import com.tencent.supersonic.headless.server.facade.service.FlightService;
|
||||
import com.tencent.supersonic.headless.server.web.service.FlightService;
|
||||
import com.tencent.supersonic.headless.server.facade.service.SemanticLayerService;
|
||||
import com.tencent.supersonic.headless.server.utils.FlightUtils;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.tencent.supersonic.headless.server.facade.service.impl;
|
||||
package com.tencent.supersonic.headless.server.web.service.impl;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.tencent.supersonic.auth.api.authentication.pojo.User;
|
||||
@@ -21,7 +21,7 @@ import com.tencent.supersonic.headless.chat.knowledge.helper.NatureHelper;
|
||||
import com.tencent.supersonic.headless.chat.mapper.MatchText;
|
||||
import com.tencent.supersonic.headless.chat.mapper.ModelWithSemanticType;
|
||||
import com.tencent.supersonic.headless.chat.mapper.SearchMatchStrategy;
|
||||
import com.tencent.supersonic.headless.server.facade.service.RetrieveService;
|
||||
import com.tencent.supersonic.headless.server.web.service.RetrieveService;
|
||||
import com.tencent.supersonic.headless.server.web.service.DataSetService;
|
||||
import com.tencent.supersonic.headless.server.web.service.SchemaService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
Reference in New Issue
Block a user