[improvement](chat) add TAG to Element and Nature, fix MetricTagQuery queryMode (#429)

This commit is contained in:
lexluo09
2023-11-27 17:51:54 +08:00
committed by GitHub
parent 41e585324d
commit f5a064aaad
4 changed files with 18 additions and 11 deletions

View File

@@ -41,6 +41,9 @@ public class ModelSchema {
case VALUE:
element = dimensionValues.stream().filter(e -> e.getId() == elementID).findFirst();
break;
case TAG:
element = tags.stream().filter(e -> e.getId() == elementID).findFirst();
break;
default:
}

View File

@@ -1,31 +1,30 @@
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.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.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.QueryStructReq;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
import static com.tencent.supersonic.chat.api.pojo.SchemaElementType.ID;
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;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
@Slf4j
@Component
public class MetricTagQuery extends MetricSemanticQuery {
public static final String QUERY_MODE = "METRIC_ENTITY";
public static final String QUERY_MODE = "METRIC_TAG";
public MetricTagQuery() {
super();

View File

@@ -43,6 +43,9 @@ public class NatureHelper {
case VALUE:
result = SchemaElementType.VALUE;
break;
case TAG:
result = SchemaElementType.TAG;
break;
default:
break;
}

View File

@@ -20,6 +20,8 @@ public enum DictWordType {
NUMBER("m"),
TAG("tag"),
SUFFIX("suffix");
public static final String NATURE_SPILT = "_";