Blame view

config/config.yaml 20.4 KB
86d0e83d   tangwang   query翻译,根据源语言是否在索...
1
  runtime:
432d1c88   tangwang   评估框架
2
3
4
    environment: prod
    index_namespace: ''
    api_host: 0.0.0.0
86d0e83d   tangwang   query翻译,根据源语言是否在索...
5
    api_port: 6002
432d1c88   tangwang   评估框架
6
    indexer_host: 0.0.0.0
86d0e83d   tangwang   query翻译,根据源语言是否在索...
7
    indexer_port: 6004
432d1c88   tangwang   评估框架
8
    embedding_host: 0.0.0.0
86d0e83d   tangwang   query翻译,根据源语言是否在索...
9
10
11
    embedding_port: 6005
    embedding_text_port: 6005
    embedding_image_port: 6008
432d1c88   tangwang   评估框架
12
    translator_host: 0.0.0.0
86d0e83d   tangwang   query翻译,根据源语言是否在索...
13
    translator_port: 6006
432d1c88   tangwang   评估框架
14
    reranker_host: 0.0.0.0
86d0e83d   tangwang   query翻译,根据源语言是否在索...
15
    reranker_port: 6007
86d0e83d   tangwang   query翻译,根据源语言是否在索...
16
17
  infrastructure:
    elasticsearch:
432d1c88   tangwang   评估框架
18
      host: http://localhost:9200
86d0e83d   tangwang   query翻译,根据源语言是否在索...
19
20
21
      username: null
      password: null
    redis:
432d1c88   tangwang   评估框架
22
      host: localhost
86d0e83d   tangwang   query翻译,根据源语言是否在索...
23
24
25
26
27
28
29
      port: 6479
      snapshot_db: 0
      password: null
      socket_timeout: 1
      socket_connect_timeout: 1
      retry_on_timeout: false
      cache_expire_days: 720
432d1c88   tangwang   评估框架
30
31
      embedding_cache_prefix: embedding
      anchor_cache_prefix: product_anchors
86d0e83d   tangwang   query翻译,根据源语言是否在索...
32
33
34
35
36
37
38
39
40
41
      anchor_cache_expire_days: 30
    database:
      host: null
      port: 3306
      database: null
      username: null
      password: null
    secrets:
      dashscope_api_key: null
      deepl_auth_key: null
432d1c88   tangwang   评估框架
42
  es_index_name: search_products
86d0e83d   tangwang   query翻译,根据源语言是否在索...
43
  indexes: []
86d8358b   tangwang   config optimize
44
  assets:
432d1c88   tangwang   评估框架
45
    query_rewrite_dictionary_path: config/dictionaries/query_rewrite.dict
41f0b2e9   tangwang   product_enrich支持并发
46
47
  product_enrich:
    max_workers: 40
e81cbdf5   tangwang   fix(suggestion): ...
48
49
50
  suggestion:
    sat_recall_min: 40
    sat_recall_cap: 100
331861d5   tangwang   eval框架配置化
51
52
53
  search_evaluation:
    artifact_root: artifacts/search_evaluation
    queries_file: scripts/evaluation/queries/queries.txt
2059d959   tangwang   feat(eval): 多评估集统...
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
    default_dataset_id: core_queries
    datasets:
    - dataset_id: core_queries
      display_name: Core Queries
      description: Legacy baseline evaluation set from queries.txt
      query_file: scripts/evaluation/queries/queries.txt
      tenant_id: '163'
      language: en
      enabled: true
    - dataset_id: clothing_top771
      display_name: Clothing Filtered 771
      description: 771 clothing / shoes / accessories queries filtered from top1k
      query_file: scripts/evaluation/queries/all_keywords.txt.top1w.shuf.top1k.clothing_filtered
      tenant_id: '163'
      language: en
      enabled: true
331861d5   tangwang   eval框架配置化
70
71
72
73
74
    eval_log_dir: logs
    default_tenant_id: '163'
    search_base_url: ''
    web_host: 0.0.0.0
    web_port: 6010
984f14f9   tangwang   product_enrich模块迁出
75
    judge_model: qwen3.6-plus
331861d5   tangwang   eval框架配置化
76
77
    judge_enable_thinking: false
    judge_dashscope_batch: false
984f14f9   tangwang   product_enrich模块迁出
78
    intent_model: qwen3.6-plus
331861d5   tangwang   eval框架配置化
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
    intent_enable_thinking: true
    judge_batch_completion_window: 24h
    judge_batch_poll_interval_sec: 10.0
    build_search_depth: 1000
    build_rerank_depth: 10000
    annotate_search_top_k: 120
    annotate_rerank_top_k: 200
    batch_top_k: 100
    audit_top_k: 100
    audit_limit_suspicious: 5
    default_language: en
    search_recall_top_k: 200
    rerank_high_threshold: 0.5
    rerank_high_skip_count: 1000
    rebuild_llm_batch_size: 50
    rebuild_min_llm_batches: 10
    rebuild_max_llm_batches: 40
    rebuild_irrelevant_stop_ratio: 0.799
    rebuild_irrel_low_combined_stop_ratio: 0.959
    rebuild_irrelevant_stop_streak: 3
4d824a77   tangwang   所有租户共用一套统一配置.tena...
99
100
101
  es_settings:
    number_of_shards: 1
    number_of_replicas: 0
432d1c88   tangwang   评估框架
102
    refresh_interval: 30s
881d338b   tangwang   评估框架
103
  
47452e1d   tangwang   feat(search): 支持可...
104
  # 统一按“字段基名”配置;查询时按实际检索语言动态拼接 .{lang}
33839b37   tangwang   属性值参与搜索:
105
  field_boosts:
bd96cead   tangwang   1. 动态多语言字段与统一策略配置
106
    title: 3.0
1fdab52d   tangwang   This change adjus...
107
108
109
    # qanchors enriched_tags 在 enriched_attributes.value中也存在,所以其实他的权重为自身权重+enriched_attributes.value的权重
    qanchors: 1.0
    enriched_tags: 1.0
483a05d9   tangwang   文本搜索权重调整(qanchors...
110
    enriched_attributes.value: 1.5
69881ecb   tangwang   相关性调参、enrich内容解析优化
111
112
    category_name_text: 2.0
    category_path: 2.0
ccbdf870   tangwang   enriched_attribut...
113
114
115
116
117
118
119
120
    keywords: 2.0
    tags: 2.0
    option1_values: 1.7
    option2_values: 1.7
    option3_values: 1.7
    brief: 1.0
    description: 1.0
    vendor: 1.0
881d338b   tangwang   评估框架
121
  
4d824a77   tangwang   所有租户共用一套统一配置.tena...
122
  query_config:
4d824a77   tangwang   所有租户共用一套统一配置.tena...
123
    supported_languages:
432d1c88   tangwang   评估框架
124
125
126
    - zh
    - en
    default_language: en
4d824a77   tangwang   所有租户共用一套统一配置.tena...
127
128
    enable_text_embedding: true
    enable_query_rewrite: true
881d338b   tangwang   评估框架
129
  
d6c29734   tangwang   translation optim...
130
131
132
    zh_to_en_model: nllb-200-distilled-600m # nllb-200-distilled-600m deepl opus-mt-zh-en / opus-mt-en-zh
    en_to_zh_model: nllb-200-distilled-600m
    default_translation_model: nllb-200-distilled-600m
47452e1d   tangwang   feat(search): 支持可...
133
134
135
136
    # 源语种不在 index_languages时翻译质量比较重要,因此单独配置
    zh_to_en_model__source_not_in_index: deepl
    en_to_zh_model__source_not_in_index: deepl
    default_translation_model__source_not_in_index: deepl
881d338b   tangwang   评估框架
137
  
47452e1d   tangwang   feat(search): 支持可...
138
139
140
    # 查询解析阶段:翻译与 query 向量并发执行,共用同一等待预算(毫秒)
    translation_embedding_wait_budget_ms_source_in_index: 300
    translation_embedding_wait_budget_ms_source_not_in_index: 400
cda1cd62   tangwang   意图分析&应用 baseline
141
142
    style_intent:
      enabled: true
87cacb1b   tangwang   融合公式优化。加入意图匹配因子
143
      selected_sku_boost: 1.2
432d1c88   tangwang   评估框架
144
145
      color_dictionary_path: config/dictionaries/style_intent_color.csv
      size_dictionary_path: config/dictionaries/style_intent_size.csv
cda1cd62   tangwang   意图分析&应用 baseline
146
      dimension_aliases:
432d1c88   tangwang   评估框架
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
        color:
        - color
        - colors
        - colour
        - colours
        - 颜色
        - 
        - 色系
        size:
        - size
        - sizes
        - sizing
        - 尺码
        - 尺寸
        - 码数
        - 号码
        - 
74fdf9bd   tangwang   1.
164
165
    product_title_exclusion:
      enabled: true
432d1c88   tangwang   评估框架
166
      dictionary_path: config/dictionaries/product_title_exclusion.tsv
bd96cead   tangwang   1. 动态多语言字段与统一策略配置
167
    search_fields:
47452e1d   tangwang   feat(search): 支持可...
168
      # 统一按“字段基名”配置;查询时按实际检索语言动态拼接 .{lang}
bd96cead   tangwang   1. 动态多语言字段与统一策略配置
169
      multilingual_fields:
432d1c88   tangwang   评估框架
170
      - title
331861d5   tangwang   eval框架配置化
171
      - keywords
ccbdf870   tangwang   enriched_attribut...
172
      - qanchors
1c2ba48e   tangwang   eval tagger
173
      - enriched_tags
ccbdf870   tangwang   enriched_attribut...
174
      - enriched_attributes.value
3abbc95a   tangwang   重构(scripts): 整理sc...
175
      # - enriched_taxonomy_attributes.value
331861d5   tangwang   eval框架配置化
176
177
178
      - option1_values
      - option2_values
      - option3_values
432d1c88   tangwang   评估框架
179
180
      - category_path
      - category_name_text
ccbdf870   tangwang   enriched_attribut...
181
182
183
      # - brief
      # - description
      # - vendor
881d338b   tangwang   评估框架
184
      # shared_fields: 无语言后缀字段;示例: tags, option1_values, option2_values, option3_values
47452e1d   tangwang   feat(search): 支持可...
185
  
432d1c88   tangwang   评估框架
186
      shared_fields: null
bd96cead   tangwang   1. 动态多语言字段与统一策略配置
187
      core_multilingual_fields:
432d1c88   tangwang   评估框架
188
189
190
      - title
      - qanchors
      - category_name_text
881d338b   tangwang   评估框架
191
  
47452e1d   tangwang   feat(search): 支持可...
192
    # 文本召回(主查询 + 翻译查询)
bd96cead   tangwang   1. 动态多语言字段与统一策略配置
193
    text_query_strategy:
432d1c88   tangwang   评估框架
194
195
      base_minimum_should_match: 60%
      translation_minimum_should_match: 60%
69881ecb   tangwang   相关性调参、enrich内容解析优化
196
197
      translation_boost: 0.75
      tie_breaker_base_query: 0.5
e756b18e   tangwang   重构了文本召回构建器,现在每个 b...
198
199
200
201
202
203
204
205
206
      best_fields_boost: 2.0
      best_fields:
        title: 4.0
        qanchors: 3.0
        category_name_text: 2.0
      phrase_fields:
        title: 5.0
        qanchors: 4.0
      phrase_match_boost: 3.0
432d1c88   tangwang   评估框架
207
208
    text_embedding_field: title_embedding
    image_embedding_field: image_embedding.vector
881d338b   tangwang   评估框架
209
  
47452e1d   tangwang   feat(search): 支持可...
210
    # null表示返回所有字段,[]表示不返回任何字段
a7cc9078   tangwang   sku排序
211
    source_fields:
432d1c88   tangwang   评估框架
212
213
214
215
216
217
218
219
220
221
222
223
224
225
    - spu_id
    - handle
    - title
    - brief
    - description
    - vendor
    - category_name
    - category_name_text
    - category_path
    - category_id
    - category_level
    - category1_name
    - category2_name
    - category3_name
ccbdf870   tangwang   enriched_attribut...
226
227
228
229
    # - tags
    # - keywords
    # - qanchors
    # - enriched_tags
5c9baf91   tangwang   feat(search): 款式意...
230
231
    - enriched_attributes
    - enriched_taxonomy_attributes
47452e1d   tangwang   feat(search): 支持可...
232
  
432d1c88   tangwang   评估框架
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
    - min_price
    - compare_at_price
    - image_url
    - sku_prices
    - sku_weights
    - sku_weight_units
    - total_inventory
    - option1_name
    - option1_values
    - option2_name
    - option2_values
    - option3_name
    - option3_values
    - specifications
    - skus
881d338b   tangwang   评估框架
248
249
  
    # KNN:文本向量与多模态(图片)向量各自 boost 与召回(k / num_candidates)
ceaf6d03   tangwang   召回限定:must条件补充主干词命...
250
251
    knn_text_boost: 4
    knn_image_boost: 4
de98daa3   tangwang   多模态召回优化
252
    knn_text_k: 160
47452e1d   tangwang   feat(search): 支持可...
253
    knn_text_num_candidates: 560 #  k * 3.4
de98daa3   tangwang   多模态召回优化
254
255
    knn_text_k_long: 400
    knn_text_num_candidates_long: 1200
de98daa3   tangwang   多模态召回优化
256
257
    knn_image_k: 400
    knn_image_num_candidates: 1200
881d338b   tangwang   评估框架
258
  
4d824a77   tangwang   所有租户共用一套统一配置.tena...
259
  function_score:
432d1c88   tangwang   评估框架
260
261
    score_mode: sum
    boost_mode: multiply
4d824a77   tangwang   所有租户共用一套统一配置.tena...
262
    functions: []
8c8b9d84   tangwang   ES 拉取 coarse_rank...
263
264
  coarse_rank:
    enabled: true
0ba0e0fc   tangwang   1. rerank漏斗配置优化
265
266
    input_window: 480
    output_window: 160
8c8b9d84   tangwang   ES 拉取 coarse_rank...
267
    fusion:
4d000c94   tangwang   融合公式调参
268
      es_bias: 10.0
9df421ed   tangwang   基于eval框架开始调参
269
      es_exponent: 0.05
8c8b9d84   tangwang   ES 拉取 coarse_rank...
270
271
      text_bias: 0.1
      text_exponent: 0.35
881d338b   tangwang   评估框架
272
273
      # base_query_trans_* 相对 base_query 的权重(见 search/rerank_client 中文本 dismax 融合)
      # 因为es的打分已经给了trans进行了折扣,所以这里不再继续折扣
de98daa3   tangwang   多模态召回优化
274
      text_translation_weight: 1.0
8c8b9d84   tangwang   ES 拉取 coarse_rank...
275
      knn_text_weight: 1.0
4d000c94   tangwang   融合公式调参
276
277
      knn_image_weight: 2.0
      knn_tie_breaker: 0.3
dba57642   tangwang   bayes调参计划
278
      knn_bias: 0.2
47452e1d   tangwang   feat(search): 支持可...
279
      knn_exponent: 5.6
dba57642   tangwang   bayes调参计划
280
      knn_text_bias: 0.2
47452e1d   tangwang   feat(search): 支持可...
281
      knn_text_exponent: 0.0
dba57642   tangwang   bayes调参计划
282
      knn_image_bias: 0.2
47452e1d   tangwang   feat(search): 支持可...
283
      knn_image_exponent: 0.0
8c8b9d84   tangwang   ES 拉取 coarse_rank...
284
  fine_rank:
47452e1d   tangwang   feat(search): 支持可...
285
    enabled: false # false 时保序透传
418b6a4a   tangwang   调参
286
    input_window: 160
8c8b9d84   tangwang   ES 拉取 coarse_rank...
287
288
    output_window: 80
    timeout_sec: 10.0
432d1c88   tangwang   评估框架
289
290
291
    rerank_query_template: '{query}'
    rerank_doc_template: '{title}'
    service_profile: fine
4d824a77   tangwang   所有租户共用一套统一配置.tena...
292
  rerank:
47452e1d   tangwang   feat(search): 支持可...
293
    enabled: false # false 时保序透传
418b6a4a   tangwang   调参
294
    rerank_window: 160
317c5d2c   tangwang   feat(search): 引入 ...
295
296
    exact_knn_rescore_enabled: true
    exact_knn_rescore_window: 160
42e3aea6   tangwang   tidy
297
    timeout_sec: 15.0
506c39b7   tangwang   feat(search): 统一重...
298
299
    weight_es: 0.4
    weight_ai: 0.6
432d1c88   tangwang   评估框架
300
301
302
    rerank_query_template: '{query}'
    rerank_doc_template: '{title}'
    service_profile: default
9df421ed   tangwang   基于eval框架开始调参
303
    # 乘法融合:fused = Π (max(score,0) + bias) ** exponent(es / rerank / fine / text / knn)
881d338b   tangwang   评估框架
304
305
306
    # 其中 knn_score 先做一层 dis_max:
    #   max(knn_text_weight * text_knn, knn_image_weight * image_knn)
    #   + knn_tie_breaker * 另一侧较弱信号
814e352b   tangwang   乘法公式配置化
307
    fusion:
4d000c94   tangwang   融合公式调参
308
      es_bias: 10.0
9df421ed   tangwang   基于eval框架开始调参
309
      es_exponent: 0.05
4d000c94   tangwang   融合公式调参
310
      rerank_bias: 0.1
432d1c88   tangwang   评估框架
311
      rerank_exponent: 1.15
4d000c94   tangwang   融合公式调参
312
      fine_bias: 0.1
8c8b9d84   tangwang   ES 拉取 coarse_rank...
313
      fine_exponent: 1.0
814e352b   tangwang   乘法公式配置化
314
      text_bias: 0.1
881d338b   tangwang   评估框架
315
      # base_query_trans_* 相对 base_query 的权重(见 search/rerank_client 中文本 dismax 融合)
47452e1d   tangwang   feat(search): 支持可...
316
      text_exponent: 0.25
432d1c88   tangwang   评估框架
317
      text_translation_weight: 0.8
24edc208   tangwang   修改_extract_combin...
318
      knn_text_weight: 1.0
4d000c94   tangwang   融合公式调参
319
320
      knn_image_weight: 2.0
      knn_tie_breaker: 0.3
47452e1d   tangwang   feat(search): 支持可...
321
322
      knn_bias: 0.0
      knn_exponent: 5.6
881d338b   tangwang   评估框架
323
  
42e3aea6   tangwang   tidy
324
325
  services:
    translation:
432d1c88   tangwang   评估框架
326
      service_url: http://127.0.0.1:6006
432d1c88   tangwang   评估框架
327
328
      default_model: nllb-200-distilled-600m
      default_scene: general
42e3aea6   tangwang   tidy
329
      timeout_sec: 10.0
d4cadc13   tangwang   翻译重构
330
      cache:
d4cadc13   tangwang   翻译重构
331
332
        ttl_seconds: 62208000
        sliding_expiration: true
47452e1d   tangwang   feat(search): 支持可...
333
        # When false, cache keys are exact-match per request model only (ignores model_quality_tiers for lookups)
881d338b   tangwang   评估框架
334
335
        # Higher tier = better quality. Multiple models may share one tier (同级).
        # A request may reuse Redis keys from models with tier > A or tier == A (not from lower tiers).
47452e1d   tangwang   feat(search): 支持可...
336
        enable_model_quality_tier_cache: true
8140e942   tangwang   translator model ...
337
338
339
340
341
342
343
        model_quality_tiers:
          deepl: 30
          qwen-mt: 30
          llm: 30
          nllb-200-distilled-600m: 20
          opus-mt-zh-en: 10
          opus-mt-en-zh: 10
5e4dc8e4   tangwang   翻译架构按“一个翻译服务 +
344
      capabilities:
d4cadc13   tangwang   翻译重构
345
        qwen-mt:
5e4dc8e4   tangwang   翻译架构按“一个翻译服务 +
346
          enabled: true
432d1c88   tangwang   评估框架
347
348
349
          backend: qwen_mt
          model: qwen-mt-flash
          base_url: https://dashscope-us.aliyuncs.com/compatible-mode/v1
42e3aea6   tangwang   tidy
350
          timeout_sec: 10.0
5e4dc8e4   tangwang   翻译架构按“一个翻译服务 +
351
          use_cache: true
a0a173ae   tangwang   last
352
        llm:
5e4dc8e4   tangwang   翻译架构按“一个翻译服务 +
353
          enabled: true
432d1c88   tangwang   评估框架
354
355
356
          backend: llm
          model: qwen-flash
          base_url: https://dashscope-us.aliyuncs.com/compatible-mode/v1
a0a173ae   tangwang   last
357
          timeout_sec: 30.0
cd4ce66d   tangwang   trans logs
358
          use_cache: true
d4cadc13   tangwang   翻译重构
359
        deepl:
cd4ce66d   tangwang   trans logs
360
          enabled: true
432d1c88   tangwang   评估框架
361
362
          backend: deepl
          api_url: https://api.deepl.com/v2/translate
d4cadc13   tangwang   翻译重构
363
          timeout_sec: 10.0
432d1c88   tangwang   评估框架
364
          glossary_id: ''
cd4ce66d   tangwang   trans logs
365
          use_cache: true
0fd2f875   tangwang   translate
366
        nllb-200-distilled-600m:
93be98cb   tangwang   清理过时的文档
367
          enabled: true
432d1c88   tangwang   评估框架
368
369
370
371
372
373
          backend: local_nllb
          model_id: facebook/nllb-200-distilled-600M
          model_dir: ./models/translation/facebook/nllb-200-distilled-600M
          ct2_model_dir: ./models/translation/facebook/nllb-200-distilled-600M/ctranslate2-float16
          ct2_compute_type: float16
          ct2_conversion_quantization: float16
ea293660   tangwang   CTranslate2
374
          ct2_auto_convert: true
46ce858d   tangwang   在NLLB模型的 /data/sa...
375
          ct2_inter_threads: 4
ea293660   tangwang   CTranslate2
376
          ct2_intra_threads: 0
46ce858d   tangwang   在NLLB模型的 /data/sa...
377
          ct2_max_queued_batches: 32
432d1c88   tangwang   评估框架
378
379
          ct2_batch_type: examples
          ct2_decoding_length_mode: source
d6c29734   tangwang   translation optim...
380
          ct2_decoding_length_extra: 16
46ce858d   tangwang   在NLLB模型的 /data/sa...
381
          ct2_decoding_length_min: 32
432d1c88   tangwang   评估框架
382
383
          device: cuda
          torch_dtype: float16
4747e2f4   tangwang   embedding perform...
384
          batch_size: 64
0fd2f875   tangwang   translate
385
          max_input_length: 256
d6c29734   tangwang   translation optim...
386
387
          max_new_tokens: 96
          num_beams: 4
cd4ce66d   tangwang   trans logs
388
          use_cache: true
0fd2f875   tangwang   translate
389
        opus-mt-zh-en:
f86c5fee   tangwang   reranker性能参数脚本放在:...
390
          enabled: false
432d1c88   tangwang   评估框架
391
392
393
394
395
396
          backend: local_marian
          model_id: Helsinki-NLP/opus-mt-zh-en
          model_dir: ./models/translation/Helsinki-NLP/opus-mt-zh-en
          ct2_model_dir: ./models/translation/Helsinki-NLP/opus-mt-zh-en/ctranslate2-float16
          ct2_compute_type: float16
          ct2_conversion_quantization: float16
ea293660   tangwang   CTranslate2
397
398
399
400
          ct2_auto_convert: true
          ct2_inter_threads: 1
          ct2_intra_threads: 0
          ct2_max_queued_batches: 0
432d1c88   tangwang   评估框架
401
402
403
          ct2_batch_type: examples
          device: cuda
          torch_dtype: float16
0fd2f875   tangwang   translate
404
405
406
407
          batch_size: 16
          max_input_length: 256
          max_new_tokens: 256
          num_beams: 1
cd4ce66d   tangwang   trans logs
408
          use_cache: true
0fd2f875   tangwang   translate
409
        opus-mt-en-zh:
f86c5fee   tangwang   reranker性能参数脚本放在:...
410
          enabled: false
432d1c88   tangwang   评估框架
411
412
413
414
415
416
          backend: local_marian
          model_id: Helsinki-NLP/opus-mt-en-zh
          model_dir: ./models/translation/Helsinki-NLP/opus-mt-en-zh
          ct2_model_dir: ./models/translation/Helsinki-NLP/opus-mt-en-zh/ctranslate2-float16
          ct2_compute_type: float16
          ct2_conversion_quantization: float16
ea293660   tangwang   CTranslate2
417
418
419
420
          ct2_auto_convert: true
          ct2_inter_threads: 1
          ct2_intra_threads: 0
          ct2_max_queued_batches: 0
432d1c88   tangwang   评估框架
421
422
423
          ct2_batch_type: examples
          device: cuda
          torch_dtype: float16
0fd2f875   tangwang   translate
424
425
426
427
          batch_size: 16
          max_input_length: 256
          max_new_tokens: 256
          num_beams: 1
cd4ce66d   tangwang   trans logs
428
          use_cache: true
42e3aea6   tangwang   tidy
429
    embedding:
47452e1d   tangwang   feat(search): 支持可...
430
      provider: http
42e3aea6   tangwang   tidy
431
432
      providers:
        http:
432d1c88   tangwang   评估框架
433
434
          text_base_url: http://127.0.0.1:6005
          image_base_url: http://127.0.0.1:6008
47452e1d   tangwang   feat(search): 支持可...
435
      backend: tei
07cf5a93   tangwang   START_EMBEDDING=...
436
437
      backends:
        tei:
432d1c88   tangwang   评估框架
438
          base_url: http://127.0.0.1:8080
efd435cf   tangwang   tei性能调优:
439
          timeout_sec: 20
432d1c88   tangwang   评估框架
440
          model_id: Qwen/Qwen3-Embedding-0.6B
07cf5a93   tangwang   START_EMBEDDING=...
441
        local_st:
432d1c88   tangwang   评估框架
442
443
          model_id: Qwen/Qwen3-Embedding-0.6B
          device: cuda
07cf5a93   tangwang   START_EMBEDDING=...
444
445
          batch_size: 32
          normalize_embeddings: true
881d338b   tangwang   评估框架
446
447
448
449
      # 服务内图片后端(embedding 进程启动时读取;cnclip gRPC 与 6008 须同一 model_name)
      # Chinese-CLIP:ViT-H-14 → 1024 维,ViT-L-14 → 768 维。须与 mappings/search_products.json 中
      # image_embedding.vector.dims 一致(当前索引为 1024 → 默认 ViT-H-14)。
      image_backend: clip_as_service  # clip_as_service | local_cnclip
86d8358b   tangwang   config optimize
450
451
      image_backends:
        clip_as_service:
432d1c88   tangwang   评估框架
452
453
          server: grpc://127.0.0.1:51000
          model_name: CN-CLIP/ViT-L-14
86d8358b   tangwang   config optimize
454
455
456
          batch_size: 8
          normalize_embeddings: true
        local_cnclip:
432d1c88   tangwang   评估框架
457
          model_name: ViT-L-14
86d8358b   tangwang   config optimize
458
459
460
          device: null
          batch_size: 8
          normalize_embeddings: true
42e3aea6   tangwang   tidy
461
    rerank:
432d1c88   tangwang   评估框架
462
      provider: http
42e3aea6   tangwang   tidy
463
464
      providers:
        http:
daa2690b   tangwang   漏斗参数调优&呈现优化
465
466
          instances:
            default:
432d1c88   tangwang   评估框架
467
468
              base_url: http://127.0.0.1:6007
              service_url: http://127.0.0.1:6007/rerank
daa2690b   tangwang   漏斗参数调优&呈现优化
469
            fine:
432d1c88   tangwang   评估框架
470
471
              base_url: http://127.0.0.1:6009
              service_url: http://127.0.0.1:6009/rerank
86d8358b   tangwang   config optimize
472
473
474
      request:
        max_docs: 1000
        normalize: true
881d338b   tangwang   评估框架
475
      # 命名实例:同一套 reranker 代码按实例名读取不同端口 / 后端 / runtime 目录。
47452e1d   tangwang   feat(search): 支持可...
476
      default_instance: default
daa2690b   tangwang   漏斗参数调优&呈现优化
477
478
      instances:
        default:
432d1c88   tangwang   评估框架
479
          host: 0.0.0.0
daa2690b   tangwang   漏斗参数调优&呈现优化
480
          port: 6007
0ba0e0fc   tangwang   1. rerank漏斗配置优化
481
          backend: bge
432d1c88   tangwang   评估框架
482
          runtime_dir: ./.runtime/reranker/default
daa2690b   tangwang   漏斗参数调优&呈现优化
483
        fine:
432d1c88   tangwang   评估框架
484
          host: 0.0.0.0
daa2690b   tangwang   漏斗参数调优&呈现优化
485
          port: 6009
432d1c88   tangwang   评估框架
486
487
          backend: bge
          runtime_dir: ./.runtime/reranker/fine
701ae503   tangwang   docs
488
489
      backends:
        bge:
432d1c88   tangwang   评估框架
490
          model_name: BAAI/bge-reranker-v2-m3
701ae503   tangwang   docs
491
492
          device: null
          use_fp16: true
418b6a4a   tangwang   调参
493
          batch_size: 80
00c8ddb9   tangwang   suggest rank opti...
494
          max_length: 160
432d1c88   tangwang   评估框架
495
          cache_dir: ./model_cache
701ae503   tangwang   docs
496
          enable_warmup: true
971a0851   tangwang   补充reranker-jina,探...
497
        jina_reranker_v3:
432d1c88   tangwang   评估框架
498
          model_name: jinaai/jina-reranker-v3
971a0851   tangwang   补充reranker-jina,探...
499
          device: null
432d1c88   tangwang   评估框架
500
          dtype: float16
971a0851   tangwang   补充reranker-jina,探...
501
          batch_size: 64
74116f05   tangwang   jina-reranker-v3性...
502
503
504
          max_doc_length: 160
          max_query_length: 64
          sort_by_doc_length: true
432d1c88   tangwang   评估框架
505
          cache_dir: ./model_cache
971a0851   tangwang   补充reranker-jina,探...
506
          trust_remote_code: true
701ae503   tangwang   docs
507
        qwen3_vllm:
432d1c88   tangwang   评估框架
508
509
          model_name: Qwen/Qwen3-Reranker-0.6B
          engine: vllm
b0972ff9   tangwang   qwen3_vllm_score ...
510
          max_model_len: 256
701ae503   tangwang   docs
511
          tensor_parallel_size: 1
432d1c88   tangwang   评估框架
512
513
          gpu_memory_utilization: 0.2
          dtype: float16
bc089b43   tangwang   refactor(reranker...
514
515
          enable_prefix_caching: true
          enforce_eager: false
00c8ddb9   tangwang   suggest rank opti...
516
          infer_batch_size: 100
9f5994b4   tangwang   reranker
517
          sort_by_doc_length: true
47452e1d   tangwang   feat(search): 支持可...
518
  
881d338b   tangwang   评估框架
519
520
521
522
523
524
525
526
527
528
529
530
          # standard=_format_instruction__standard(固定 yes/no system);compact=_format_instruction(instruction 作 system 且 user 内重复 Instruct)
          instruction_format: standard  # compact standard
          # instruction: "Given a query, score the product for relevance"
          # "rank products by given query" 比 “Given a query, score the product for relevance” 更好点
          # instruction: "rank products by given query, category match first"
          # instruction: "Rank products by query relevance, prioritizing category match"
          # instruction: "Rank products by query relevance, prioritizing category and style match"
          # instruction: "Rank by query relevance, prioritize category & style"
          # instruction: "Relevance ranking: category & style match first"
          # instruction: "Score product relevance by query with category & style match prioritized"
          # instruction: "Rank products by query with category & style match prioritized"
          # instruction: "Given a fashion shopping query, retrieve relevant products that answer the query"
432d1c88   tangwang   评估框架
531
          instruction: rank products by given query
47452e1d   tangwang   feat(search): 支持可...
532
  
881d338b   tangwang   评估框架
533
534
        # vLLM LLM.score()(跨编码打分)。独立高性能环境 .venv-reranker-score(vllm 0.18 固定版):./scripts/setup_reranker_venv.sh qwen3_vllm_score
        # 与 qwen3_vllm 可共用同一 model_name / HF 缓存;venv 分离以便升级 vLLM 而不影响 generate 后端。
9de5ef49   tangwang   qwen3_vllm_score ...
535
        qwen3_vllm_score:
432d1c88   tangwang   评估框架
536
          model_name: Qwen/Qwen3-Reranker-0.6B
881d338b   tangwang   评估框架
537
          # 官方 Hub 原版需 true;若改用已转换的 seq-cls 权重(如 tomaarsen/...-seq-cls)则设为 false
9de5ef49   tangwang   qwen3_vllm_score ...
538
          use_original_qwen3_hf_overrides: true
881d338b   tangwang   评估框架
539
540
541
542
          # vllm_runner: "auto"
          # vllm_convert: "auto"
          # 可选:在 use_original_qwen3_hf_overrides 为 true 时与内置 overrides 合并
          # hf_overrides: {}
432d1c88   tangwang   评估框架
543
          engine: vllm
f86c5fee   tangwang   reranker性能参数脚本放在:...
544
          max_model_len: 172
9de5ef49   tangwang   qwen3_vllm_score ...
545
          tensor_parallel_size: 1
c3425429   tangwang   在以下文件中完成精排/融合清理工作...
546
          gpu_memory_utilization: 0.15
432d1c88   tangwang   评估框架
547
          dtype: float16
9de5ef49   tangwang   qwen3_vllm_score ...
548
549
          enable_prefix_caching: true
          enforce_eager: false
3b35f139   tangwang   search evalution
550
          infer_batch_size: 80
9de5ef49   tangwang   qwen3_vllm_score ...
551
          sort_by_doc_length: true
881d338b   tangwang   评估框架
552
553
554
555
          # 默认 standard 与 vLLM 官方 Qwen3 reranker 前缀一致
          instruction_format: standard  # compact standard
          # instruction: "Rank products by query with category & style match prioritized"
          # instruction: "Given a shopping query, rank products by relevance"
432d1c88   tangwang   评估框架
556
          instruction: Rank products by query with category & style match prioritized
d31c7f65   tangwang   补充云服务reranker
557
        qwen3_transformers:
432d1c88   tangwang   评估框架
558
559
          model_name: Qwen/Qwen3-Reranker-0.6B
          instruction: rank products by given query
d31c7f65   tangwang   补充云服务reranker
560
561
562
          max_length: 8192
          batch_size: 64
          use_fp16: true
432d1c88   tangwang   评估框架
563
          attn_implementation: sdpa
4823f463   tangwang   qwen3_vllm_score ...
564
        qwen3_transformers_packed:
432d1c88   tangwang   评估框架
565
566
          model_name: Qwen/Qwen3-Reranker-0.6B
          instruction: Rank products by query with category & style match prioritized
b0972ff9   tangwang   qwen3_vllm_score ...
567
          max_model_len: 256
4823f463   tangwang   qwen3_vllm_score ...
568
569
570
571
          max_doc_len: 160
          max_docs_per_pack: 0
          use_fp16: true
          sort_by_doc_length: true
432d1c88   tangwang   评估框架
572
          attn_implementation: eager
3d508beb   tangwang   reranker-4b-gguf
573
        qwen3_gguf:
432d1c88   tangwang   评估框架
574
575
576
577
578
          repo_id: DevQuasar/Qwen.Qwen3-Reranker-4B-GGUF
          filename: '*Q8_0.gguf'
          cache_dir: ./model_cache
          local_dir: ./models/reranker/qwen3-reranker-4b-gguf
          instruction: Rank products by query with category & style match prioritized
5c21a485   tangwang   qwen3-reranker-0....
579
580
581
582
          n_ctx: 512
          n_batch: 512
          n_ubatch: 512
          n_gpu_layers: 999
3d508beb   tangwang   reranker-4b-gguf
583
584
585
586
587
588
589
590
591
          main_gpu: 0
          n_threads: 2
          n_threads_batch: 4
          flash_attn: true
          offload_kqv: true
          use_mmap: true
          use_mlock: false
          infer_batch_size: 8
          sort_by_doc_length: true
432d1c88   tangwang   评估框架
592
          length_sort_mode: char
3d508beb   tangwang   reranker-4b-gguf
593
594
          enable_warmup: true
          verbose: false
5c21a485   tangwang   qwen3-reranker-0....
595
        qwen3_gguf_06b:
432d1c88   tangwang   评估框架
596
597
598
599
600
          repo_id: ggml-org/Qwen3-Reranker-0.6B-Q8_0-GGUF
          filename: qwen3-reranker-0.6b-q8_0.gguf
          cache_dir: ./model_cache
          local_dir: ./models/reranker/qwen3-reranker-0.6b-q8_0-gguf
          instruction: Rank products by query with category & style match prioritized
5c21a485   tangwang   qwen3-reranker-0....
601
602
603
604
605
606
607
608
609
610
611
612
613
          n_ctx: 256
          n_batch: 256
          n_ubatch: 256
          n_gpu_layers: 999
          main_gpu: 0
          n_threads: 2
          n_threads_batch: 4
          flash_attn: true
          offload_kqv: true
          use_mmap: true
          use_mlock: false
          infer_batch_size: 32
          sort_by_doc_length: true
432d1c88   tangwang   评估框架
614
          length_sort_mode: char
5c21a485   tangwang   qwen3-reranker-0....
615
616
617
          reuse_query_state: false
          enable_warmup: true
          verbose: false
d31c7f65   tangwang   补充云服务reranker
618
        dashscope_rerank:
432d1c88   tangwang   评估框架
619
          model_name: qwen3-rerank
432d1c88   tangwang   评估框架
620
621
622
          endpoint: https://dashscope.aliyuncs.com/compatible-api/v1/reranks
          api_key_env: RERANK_DASHSCOPE_API_KEY_CN
          timeout_sec: 10.0
47452e1d   tangwang   feat(search): 支持可...
623
624
          top_n_cap: 0 # 0 表示 top_n=当前请求文档数
          batchsize: 64 # 0 关闭;>0 启用并发小包调度(top_n/top_n_cap 仍生效,分包后全局截断)
432d1c88   tangwang   评估框架
625
          instruct: Given a shopping query, rank product titles by relevance
d31c7f65   tangwang   补充云服务reranker
626
627
          max_retries: 2
          retry_backoff_sec: 0.2
881d338b   tangwang   评估框架
628
  
4d824a77   tangwang   所有租户共用一套统一配置.tena...
629
630
  spu_config:
    enabled: true
432d1c88   tangwang   评估框架
631
    spu_field: spu_id
4d824a77   tangwang   所有租户共用一套统一配置.tena...
632
    inner_hits_size: 10
881d338b   tangwang   评估框架
633
634
    # 配置哪些option维度参与检索(进索引、以及在线搜索)
    # 格式为list,选择option1/option2/option3中的一个或多个
432d1c88   tangwang   评估框架
635
636
637
638
    searchable_option_dimensions:
    - option1
    - option2
    - option3
881d338b   tangwang   评估框架
639
  
881d338b   tangwang   评估框架
640
641
  # 每个租户可配置主语言 primary_language 与索引语言 index_languages(主市场语言,商家可勾选)
  # 默认 index_languages: [en, zh],可配置为任意 SOURCE_LANG_CODE_MAP.keys() 的子集
0064e946   tangwang   feat: 增量索引服务、租户配置...
642
  tenant_config:
0064e946   tangwang   feat: 增量索引服务、租户配置...
643
    default:
432d1c88   tangwang   评估框架
644
645
646
647
      primary_language: en
      index_languages:
      - en
      - zh
0064e946   tangwang   feat: 增量索引服务、租户配置...
648
    tenants:
432d1c88   tangwang   评估框架
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
      '1':
        primary_language: zh
        index_languages:
        - zh
        - en
      '2':
        primary_language: en
        index_languages:
        - en
        - zh
      '3':
        primary_language: zh
        index_languages:
        - zh
        - en
      '162':
        primary_language: zh
        index_languages:
        - zh
        - en
      '170':
        primary_language: en
        index_languages:
        - en
2059d959   tangwang   feat(eval): 多评估集统...
673
        - zh