# Customer1 Configuration # Test customer for cross-border e-commerce search customer_name: "Customer1 Test Instance" # MySQL Database Configuration mysql_config: host: "120.79.247.228" port: 3316 database: "saas" username: "saas" password: "P89cZHS5d7dFyc9R" # Table Configuration main_table: "shoplazza_product_sku" extension_table: "customer1_extension" # Elasticsearch Index es_index_name: "search_customer1" # ES Index Settings es_settings: number_of_shards: 1 number_of_replicas: 0 refresh_interval: "30s" # Field Definitions fields: # Primary Key - name: "skuId" type: "LONG" source_table: "main" source_column: "id" required: true index: true store: true # Text Fields - Multi-language - name: "name" type: "TEXT" source_table: "extension" source_column: "name" analyzer: "chinese_ecommerce" boost: 2.0 index: true store: true - name: "name_pinyin" type: "TEXT" source_table: "extension" source_column: "name_pinyin" analyzer: "standard" boost: 1.5 index: true store: false - name: "ruSkuName" type: "TEXT" source_table: "extension" source_column: "ruSkuName" analyzer: "russian" boost: 2.0 index: true store: true - name: "enSpuName" type: "TEXT" source_table: "extension" source_column: "enSpuName" analyzer: "english" boost: 2.0 index: true store: true # Category and Brand - name: "categoryName" type: "TEXT" source_table: "extension" source_column: "categoryName" analyzer: "chinese_ecommerce" boost: 1.5 index: true store: true - name: "brandName" type: "TEXT" source_table: "extension" source_column: "brandName" analyzer: "chinese_ecommerce" boost: 1.5 index: true store: true - name: "supplierName" type: "TEXT" source_table: "extension" source_column: "supplierName" analyzer: "chinese_ecommerce" boost: 1.0 index: true store: true # Keyword Fields - name: "categoryName_keyword" type: "KEYWORD" source_table: "extension" source_column: "categoryName" index: true store: false - name: "brandName_keyword" type: "KEYWORD" source_table: "extension" source_column: "brandName" index: true store: false # Text Embedding Fields - name: "name_embedding" type: "TEXT_EMBEDDING" source_table: "extension" source_column: "name" embedding_dims: 1024 embedding_similarity: "dot_product" index: true - name: "enSpuName_embedding" type: "TEXT_EMBEDDING" source_table: "extension" source_column: "enSpuName" embedding_dims: 1024 embedding_similarity: "dot_product" index: true # Image Fields - name: "imageUrl" type: "KEYWORD" source_table: "extension" source_column: "imageUrl" index: true store: true - name: "image_embedding" type: "IMAGE_EMBEDDING" source_table: "extension" source_column: "imageUrl" embedding_dims: 1024 embedding_similarity: "dot_product" nested: false index: true # Metadata Fields - name: "create_time" type: "DATE" source_table: "extension" source_column: "create_time" index: true store: true - name: "days_since_last_update" type: "INT" source_table: "extension" source_column: "days_since_last_update" index: true store: true # Index Structure (Query Domains) indexes: - name: "default" label: "默认索引" fields: - "name" - "enSpuName" - "ruSkuName" - "categoryName" - "brandName" analyzer: "chinese_ecommerce" boost: 1.0 example: 'query=default:"消防套"' language_field_mapping: zh: - "name" - "categoryName" - "brandName" en: - "enSpuName" ru: - "ruSkuName" - name: "title" label: "标题索引" fields: - "name" - "enSpuName" - "ruSkuName" analyzer: "chinese_ecommerce" boost: 2.0 example: 'query=title:"芭比娃娃"' language_field_mapping: zh: - "name" en: - "enSpuName" ru: - "ruSkuName" - name: "category" label: "类目索引" fields: - "categoryName" analyzer: "chinese_ecommerce" boost: 1.5 example: 'query=category:"玩具"' - name: "brand" label: "品牌索引" fields: - "brandName" analyzer: "chinese_ecommerce" boost: 1.5 example: 'query=brand:"ZHU LIN"' # Query Configuration query_config: supported_languages: - "zh" - "en" - "ru" default_language: "zh" enable_translation: true enable_text_embedding: true enable_query_rewrite: true # Query Rewrite Dictionary rewrite_dictionary: "芭比": "brand:芭比 OR name:芭比娃娃" "玩具": "category:玩具" "消防": "category:消防 OR name:消防" # Translation API (DeepL) translation_service: "deepl" translation_api_key: null # Set via environment variable # Ranking Configuration ranking: expression: "bm25() + 0.2*text_embedding_relevance()" description: "BM25 text relevance combined with semantic embedding similarity" # SPU Aggregation (disabled for customer1) spu_config: enabled: false spu_field: null inner_hits_size: 3