创建服务配置

本页面介绍如何创建服务配置。投放配置是一种模型实体,它关联模型或一组用于生成搜索或建议结果的控件。

准备工作

建议和搜索服务配置具有不同的要求和选项:

  • 推荐服务配置需要模型。如果您打算将现有模型附加到新的服务配置,请获取您计划使用的模型的 ID(使用 ServingConfig.create 方法时需要)。

    如果使用控制台创建服务配置,您可以在创建过程中创建新模型,而不是附加现有模型。

    您可以稍后切换模型,只要模型类型相同即可。

  • 搜索可以使用服务控件,但这并非强制要求。如果您打算将现有控件附加到新的服务配置,请获取您计划使用的控件的 ID。

    如果使用控制台创建服务配置,您还可以在创建过程中创建新的控件。

    创建服务配置后,您可以在服务配置中切换或添加服务控件。

创建服务配置

您可以使用以下工具创建服务配置:

每个目录最多可以包含 100 项服务配置。

如果您已有展示位置,或者创建了新的展示位置,系统会自动创建与每个展示位置相关联的服务配置。创建服务配置不会创建相应的展示位置。删除服务配置会删除其相应的展示位置,而删除展示位置则会删除其相应的服务配置。

在控制台中创建服务配置

在 Search for Retail 控制台的“服务配置”页面上添加新的服务配置。

要创建新的服务配置,请执行以下操作:

  1. 转到 Search for Retail 控制台中的服务配置页面。

    转到“服务配置”页面

  2. 点击 创建投放配置

    建议

    1. 选择建议作为服务配置将用于的产品。

    2. 为服务配置提供名称。

      名称不得超过 1024 个字符,并且只能包含字母数字字符、下划线、连字符、空格。

    3. 可选:如果需要,请更新此 ID。

      该 ID 通过您提供的名称生成,并且在项目中必须是唯一的。名称不能超过 50 个字符,并且不能包含空格。

    4. 选择或创建您希望此服务配置为其提供建议的模型。

      详细了解如何创建新模型。

    5. 选择价格重排序对推荐结果的影响程度(如果适用于您选择的模型)。

      启用这项功能后,推荐概率相近的推荐产品会按价格进行排序,价格最高的商品列在第一位。相关性仍会用于订购商品,因此启用价格重排序与按价格排序不同。

    6. 选择使用基于规则的多样化营销还是数据驱动的多样化:

      • 基于规则:基于规则的多样化会影响单个预测请求返回的结果是否来自您商品清单的不同类别。

      • 数据驱动:数据驱动的多样化使用机器学习来平衡预测结果中的类别多样性和相关性。

      如需了解详情,请参阅多样化

    7. 选择建议结果的多样化程度。

    8. 如果您为此服务配置选择了类似商品模型,请选择是否启用类别匹配。

      启用类别匹配后,系统仅返回与上下文商品共用至少一个类别的商品结果。类别匹配可以与其他过滤选项(例如价格、库存状况和过滤条件标签)结合使用。

    1. 创建服务配置页面上,选择搜索作为服务配置将用于的产品。
    2. 为服务配置提供名称。

      此名称不得超过 1024 个字符,并且只能包含字母数字字符、下划线、连字符和空格。
    3. 可选:如果需要,请更新该 ID。

      此 ID 根据您提供的名称生成,在项目中必须是唯一的。名称不得超过 50 个字符,且不得包含空格。
    4. 点击继续
    5. 选择是否为此服务配置启用动态分面。
    6. 选择或创建服务控件,以优化搜索。

      如需详细了解控件,请参阅创建和管理控件
  3. 点击创建,以新建配置文件。

    新配置会显示在“投放配置”页面中。

    配置可能需要几分钟才能用于搜索请求。它可以立即用于推荐。

  4. 可选:在“服务配置”页面上,点击服务配置名称,然后转到其评估标签页,以预览将针对此配置返回的产品。

    评估预览可帮助您确认配置是否按预期运行。

使用 ServingConfig.create 创建服务配置

您可以使用 ServingConfig.create API 方法创建服务配置。如需查看此方法的 API 参考文档,请参阅 ServingConfig.create

使用哪些字段取决于您是为“推荐”还是“搜索”创建服务配置。

如需详细了解 ServingConfig 字段,请参阅 ServingConfigs API 参考文档

建议

使用服务配置 ID 和请求正文中包含的 ServingConfig 实例发出 ServingConfig.create 请求。

  • servingConfigId:必填。为您的 ServingConfig 创建 ID。此值应为 4-63 个字符。有效字符为 /[a-z][0-9]-_/
  • displayName:必填。Search for Retail 控制台中显示的直观易懂的 ServingConfig 名称。
  • modelID:必填。要在服务时使用的模型的 ID。
  • priceRerankingLevel:可选。设置价格重排序对推荐结果的影响程度。允许的值为 no-price-reranking(如果未设置,则为默认值)、low-price-rarankingmedium-price-rerankinghigh-price-reranking
  • diversityLevel:可选。设置在多大程度上使推荐结果多样化。允许的值为 no-diversity(默认)、low-diversitymedium-diversityhigh-diversityauto-diversity。如果未设置 diversityLevel,则会停用多样性。
  • diversityType:可选。设置为 RULE_BASED_DIVERSITY 可根据商品类别使推荐结果多样化。设置为 DATA_DRIVEN_DIVERSITY 可根据从产品元数据中学习到的知识提供多样化的推荐,从而平衡相关性和类别多样性。如果设置了 diversityLevel,但未设置 diversityType,则 diversityType 默认为基于规则。如需了解详情,请参阅多样化
  • enableCategoryFilterLevel:可选。设置是否在“类似商品”模型上添加其他类别过滤器。允许的值为 relaxed-category-match(如果未设置,则为默认值)和 no-category-match
  • solutionTypes:必填。对于推荐服务配置,设置为 SOLUTION_TYPE_RECOMMENDATION
curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": "DISPLAY_NAME",
              "modelId": "MODEL_ID",
              "priceRerankingLevel": "PRICE_RERANKING_LEVEL",
              "diversityType": "DIVERSITY_TYPE",
              "diversityLevel": "DIVERSITY_LEVEL",
              "enableCategoryFilterLevel": "CATEGORY_FILTER_LEVEL",
              "solutionTypes": [ "SOLUTION_TYPE_RECOMMENDATION" ]
            }' \
    "https://retail.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/servingConfigs?servingConfigId=SERVING_CONFIG_ID"
  

搜索

使用服务配置 ID 和请求正文中包含的 ServingConfig 实例发出 ServingConfig.create 请求。

  • servingConfigId:必填。为您的 ServingConfig 创建 ID。此值应为 4-63 个字符。有效字符为 /[a-z][0-9]-_/
  • displayName:必填。Search for Retail 控制台中显示的直观易懂的 ServingConfig 名称。
  • facetControlIds:可选。仅设置了 FacetSpec 的控件的 ID。
  • dynamicFacetSpec.mode:可选。DynamicFacet 功能的模式。 允许的值为 DISABLED(如果未设置,则为默认值)和 ENABLED
  • boostControlIds:可选。提升投放控件的 ID。
  • filterControlIds:可选。过滤器服务控件的 ID。
  • redirectControlIds:可选。重定向投放控件的 ID。
  • twowaySynonymsControlIds:可选。双向同义词传送控件的 ID。
  • onewaySynonymsControlIds:可选。单向同义词传送控件的 ID。
  • doNotAssociateControlIds:可选。未关联的服务控件的 ID。
  • replacementControlIds:可选。替换投放控件的 ID。
  • ignoreControlIds:可选。忽略投放控件的 ID。
  • solutionTypes:必填。对于搜索服务配置,应设置为 SOLUTION_TYPE_SEARCH
curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
              "displayName": DISPLAY_NAME,
              "facetControlIds": [
                "FACET_CONTROL_ID_1",
                "FACET_CONTROL_ID_2"
              ],
              "dynamicFacetSpec": {
                "mode": "DYNAMIC_FACET_MODE"
              },
              "boostControlIds": [
                "BOOST_CONTROL_ID_1",
                "BOOST_CONTROL_ID_2"
              ],
              "filterControlIds": [
                "FILTER_CONTROL_ID_1",
                "FILTER_CONTROL_ID_2"
              ],
              "redirectControlIds": [
                "REDIRECT_CONTROL_ID_1",
                "REDIRECT_CONTROL_ID_2"
              ],
              "twowaySynonymsControlIds": [
                "TWO_WAY_SYNONYM_CONTROL_ID_1",
                "TWO_WAY_SYNONYM_CONTROL_ID_2"
              ],
              "onewaySynonymsControlIds": [
                "ONE_WAY_SYNONYM_CONTROL_ID_1",
                "ONE_WAY_SYNONYM_CONTROL_ID_2"
              ],
              "doNotAssociateControlIds": [
                "DO_NOT_ASSOCIATE_CONTROL_ID_1",
                "DO_NOT_ASSOCIATE_CONTROL_ID_2"
              ],
              "replacementControlIds": [
                "REPLACEMENT_CONTROL_ID_1",
                "REPLACEMENT_CONTROL_ID_2"
              ],
              "ignoreControlIds": [
                "IGNORE_CONTROL_ID_1",
                "IGNORE_CONTROL_ID_2"
              ],
              "solutionTypes": [ "SOLUTION_TYPE_SEARCH" ]
    }' \
    "https://retail.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/servingConfigs?servingConfigId=SERVING_CONFIG_ID"
  

后续步骤