mirror of
https://github.com/tencentmusic/supersonic.git
synced 2025-12-10 19:51:00 +00:00
[improvement](chat) add TAG to Element and Nature, fix MetricTagQuery queryMode (#429)
This commit is contained in:
@@ -41,6 +41,9 @@ public class ModelSchema {
|
|||||||
case VALUE:
|
case VALUE:
|
||||||
element = dimensionValues.stream().filter(e -> e.getId() == elementID).findFirst();
|
element = dimensionValues.stream().filter(e -> e.getId() == elementID).findFirst();
|
||||||
break;
|
break;
|
||||||
|
case TAG:
|
||||||
|
element = tags.stream().filter(e -> e.getId() == elementID).findFirst();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,31 +1,30 @@
|
|||||||
package com.tencent.supersonic.chat.query.rule.metric;
|
package com.tencent.supersonic.chat.query.rule.metric;
|
||||||
|
|
||||||
|
import static com.tencent.supersonic.chat.api.pojo.SchemaElementType.ENTITY;
|
||||||
|
import static com.tencent.supersonic.chat.api.pojo.SchemaElementType.ID;
|
||||||
|
import static com.tencent.supersonic.chat.query.rule.QueryMatchOption.OptionType.REQUIRED;
|
||||||
|
import static com.tencent.supersonic.chat.query.rule.QueryMatchOption.RequireNumberType.AT_LEAST;
|
||||||
|
|
||||||
import com.tencent.supersonic.auth.api.authentication.pojo.User;
|
import com.tencent.supersonic.auth.api.authentication.pojo.User;
|
||||||
import com.tencent.supersonic.chat.api.pojo.response.QueryResult;
|
import com.tencent.supersonic.chat.api.pojo.response.QueryResult;
|
||||||
import com.tencent.supersonic.common.pojo.enums.FilterType;
|
|
||||||
import com.tencent.supersonic.common.pojo.enums.FilterOperatorEnum;
|
|
||||||
import com.tencent.supersonic.common.pojo.Filter;
|
import com.tencent.supersonic.common.pojo.Filter;
|
||||||
|
import com.tencent.supersonic.common.pojo.enums.FilterOperatorEnum;
|
||||||
|
import com.tencent.supersonic.common.pojo.enums.FilterType;
|
||||||
import com.tencent.supersonic.semantic.api.query.request.QueryMultiStructReq;
|
import com.tencent.supersonic.semantic.api.query.request.QueryMultiStructReq;
|
||||||
import com.tencent.supersonic.semantic.api.query.request.QueryStructReq;
|
import com.tencent.supersonic.semantic.api.query.request.QueryStructReq;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import static com.tencent.supersonic.chat.api.pojo.SchemaElementType.ID;
|
import org.springframework.stereotype.Component;
|
||||||
import static com.tencent.supersonic.chat.api.pojo.SchemaElementType.ENTITY;
|
|
||||||
import static com.tencent.supersonic.chat.query.rule.QueryMatchOption.OptionType.REQUIRED;
|
|
||||||
import static com.tencent.supersonic.chat.query.rule.QueryMatchOption.RequireNumberType.AT_LEAST;
|
|
||||||
|
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
public class MetricTagQuery extends MetricSemanticQuery {
|
public class MetricTagQuery extends MetricSemanticQuery {
|
||||||
|
|
||||||
public static final String QUERY_MODE = "METRIC_ENTITY";
|
public static final String QUERY_MODE = "METRIC_TAG";
|
||||||
|
|
||||||
public MetricTagQuery() {
|
public MetricTagQuery() {
|
||||||
super();
|
super();
|
||||||
|
|||||||
@@ -43,6 +43,9 @@ public class NatureHelper {
|
|||||||
case VALUE:
|
case VALUE:
|
||||||
result = SchemaElementType.VALUE;
|
result = SchemaElementType.VALUE;
|
||||||
break;
|
break;
|
||||||
|
case TAG:
|
||||||
|
result = SchemaElementType.TAG;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,6 +20,8 @@ public enum DictWordType {
|
|||||||
|
|
||||||
NUMBER("m"),
|
NUMBER("m"),
|
||||||
|
|
||||||
|
TAG("tag"),
|
||||||
|
|
||||||
SUFFIX("suffix");
|
SUFFIX("suffix");
|
||||||
|
|
||||||
public static final String NATURE_SPILT = "_";
|
public static final String NATURE_SPILT = "_";
|
||||||
|
|||||||
Reference in New Issue
Block a user