Commit 445496cd465fab755078e082ccf7d985a59d6d9f
1 parent
e756b18e
fix last up: 每个翻译结果的检索表达式,单个multimatch ->
combined_fields+best_field+phrase_boost
Showing
4 changed files
with
14 additions
and
24 deletions
Show diff stats
config/config.yaml
| @@ -129,10 +129,10 @@ query_config: | @@ -129,10 +129,10 @@ query_config: | ||
| 129 | - "description" | 129 | - "description" |
| 130 | - "vendor" | 130 | - "vendor" |
| 131 | shared_fields: | 131 | shared_fields: |
| 132 | - - "tags" | ||
| 133 | - - "option1_values" | ||
| 134 | - - "option2_values" | ||
| 135 | - - "option3_values" | 132 | + # - "tags" |
| 133 | + # - "option1_values" | ||
| 134 | + # - "option2_values" | ||
| 135 | + # - "option3_values" | ||
| 136 | core_multilingual_fields: | 136 | core_multilingual_fields: |
| 137 | - "title" | 137 | - "title" |
| 138 | - "qanchors" | 138 | - "qanchors" |
config/loader.py
| @@ -266,19 +266,19 @@ class AppConfigLoader: | @@ -266,19 +266,19 @@ class AppConfigLoader: | ||
| 266 | multilingual_fields=list( | 266 | multilingual_fields=list( |
| 267 | search_fields.get( | 267 | search_fields.get( |
| 268 | "multilingual_fields", | 268 | "multilingual_fields", |
| 269 | - ["title", "brief", "description", "vendor", "category_path", "category_name_text"], | 269 | + [], |
| 270 | ) | 270 | ) |
| 271 | ), | 271 | ), |
| 272 | shared_fields=list( | 272 | shared_fields=list( |
| 273 | search_fields.get( | 273 | search_fields.get( |
| 274 | "shared_fields", | 274 | "shared_fields", |
| 275 | - ["tags", "option1_values", "option2_values", "option3_values"], | ||
| 276 | - ) | 275 | + [], |
| 276 | + ) or [] | ||
| 277 | ), | 277 | ), |
| 278 | core_multilingual_fields=list( | 278 | core_multilingual_fields=list( |
| 279 | search_fields.get( | 279 | search_fields.get( |
| 280 | "core_multilingual_fields", | 280 | "core_multilingual_fields", |
| 281 | - ["title", "brief", "vendor", "category_name_text"], | 281 | + [], |
| 282 | ) | 282 | ) |
| 283 | ), | 283 | ), |
| 284 | base_minimum_should_match=str(text_strategy.get("base_minimum_should_match", "70%")), | 284 | base_minimum_should_match=str(text_strategy.get("base_minimum_should_match", "70%")), |
| @@ -536,7 +536,6 @@ class AppConfigLoader: | @@ -536,7 +536,6 @@ class AppConfigLoader: | ||
| 536 | errors.append("query_config.default_language must be included in supported_languages") | 536 | errors.append("query_config.default_language must be included in supported_languages") |
| 537 | for name, values in ( | 537 | for name, values in ( |
| 538 | ("multilingual_fields", query_config.multilingual_fields), | 538 | ("multilingual_fields", query_config.multilingual_fields), |
| 539 | - ("shared_fields", query_config.shared_fields), | ||
| 540 | ("core_multilingual_fields", query_config.core_multilingual_fields), | 539 | ("core_multilingual_fields", query_config.core_multilingual_fields), |
| 541 | ): | 540 | ): |
| 542 | if not values: | 541 | if not values: |
config/schema.py
| @@ -36,20 +36,13 @@ class QueryConfig: | @@ -36,20 +36,13 @@ class QueryConfig: | ||
| 36 | source_fields: Optional[List[str]] = None | 36 | source_fields: Optional[List[str]] = None |
| 37 | knn_boost: float = 0.25 | 37 | knn_boost: float = 0.25 |
| 38 | multilingual_fields: List[str] = field( | 38 | multilingual_fields: List[str] = field( |
| 39 | - default_factory=lambda: [ | ||
| 40 | - "title", | ||
| 41 | - "brief", | ||
| 42 | - "description", | ||
| 43 | - "vendor", | ||
| 44 | - "category_path", | ||
| 45 | - "category_name_text", | ||
| 46 | - ] | 39 | + default_factory=lambda: [] |
| 47 | ) | 40 | ) |
| 48 | shared_fields: List[str] = field( | 41 | shared_fields: List[str] = field( |
| 49 | - default_factory=lambda: ["tags", "option1_values", "option2_values", "option3_values"] | 42 | + default_factory=lambda: [] |
| 50 | ) | 43 | ) |
| 51 | core_multilingual_fields: List[str] = field( | 44 | core_multilingual_fields: List[str] = field( |
| 52 | - default_factory=lambda: ["title", "brief", "vendor", "category_name_text"] | 45 | + default_factory=lambda: [] |
| 53 | ) | 46 | ) |
| 54 | base_minimum_should_match: str = "70%" | 47 | base_minimum_should_match: str = "70%" |
| 55 | translation_minimum_should_match: str = "70%" | 48 | translation_minimum_should_match: str = "70%" |
search/es_query_builder.py
| @@ -64,11 +64,9 @@ class ESQueryBuilder: | @@ -64,11 +64,9 @@ class ESQueryBuilder: | ||
| 64 | """ | 64 | """ |
| 65 | self.match_fields = match_fields | 65 | self.match_fields = match_fields |
| 66 | self.field_boosts = field_boosts or {} | 66 | self.field_boosts = field_boosts or {} |
| 67 | - self.multilingual_fields = multilingual_fields or [ | ||
| 68 | - "title", "brief", "description", "qanchors", "vendor", "category_path", "category_name_text" | ||
| 69 | - ] | ||
| 70 | - self.shared_fields = shared_fields or ["tags", "option1_values", "option2_values", "option3_values"] | ||
| 71 | - self.core_multilingual_fields = core_multilingual_fields or ["title", "brief", "vendor", "category_name_text"] | 67 | + self.multilingual_fields = multilingual_fields or [] |
| 68 | + self.shared_fields = shared_fields or [] | ||
| 69 | + self.core_multilingual_fields = core_multilingual_fields or [] | ||
| 72 | self.text_embedding_field = text_embedding_field | 70 | self.text_embedding_field = text_embedding_field |
| 73 | self.image_embedding_field = image_embedding_field | 71 | self.image_embedding_field = image_embedding_field |
| 74 | self.source_fields = source_fields | 72 | self.source_fields = source_fields |