这是仅与 Recommendations AI 相关的文档。如需在受限 GA 阶段试用 Retail Search 和统一 Retail 控制台,请与 Cloud 销售人员联系如果您不打算使用 Retail Search,请保留在 Recommendations 控制台上,直到收到进一步的通知。

如果您使用的是 v1beta 版 Recommendations AI,请迁移到 Retail API 版本

管理目录信息

本页面介绍如何在将目录导入 Recommendations AI 后管理商品信息。您可以读取、写入和删除目录中的商品。

要使目录随商品信息变化而保持最新状态,请按照首次导入的方式导入目录。如需导入目录方面的帮助,请参阅导入目录信息

上传产品

curl

使用 products.create REST 方法创建单个产品项。

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
      "title": "product-title",
      "categories": "Shoes & Accessories > Shoes"
    }' \
    "https://retail.googleapis.com/v2/projects/[PROJECT_NUMBER]/locations/global/catalogs/default_catalog/branches/0/products?productID=[PRODUCT_ID]"

如果请求成功,则会返回商品对象,如以下示例所示。

{
  "name": "projects/[PROJECT_NUMBER]/locations/global/catalogs/default_catalog/branches/0/products/[PRODUCT_ID]",
  "id": "[PRODUCT_ID]",
  "primaryProductId": "[PRODUCT_ID]",
  "type": "PRIMARY",
  "categories": [
    "Shoes & Accessories \u003e Shoes"
  ],
  "title": "product title",
  "availability": "IN_STOCK"
}

更新产品信息

当您的产品目录发生变化时,您可以通过实时上传产品变化情况(例如新产品、价格和库存状态)来刷新目录。您只能上传已添加或更改的产品;无需重新加载整个目录。

curl

使用 products.patch 方法更新商品信息。

以下示例更新特定产品的标题:

curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    --data "{
       "title": "new-title-value",
       "categories": "Shoes & Accessories > Shoes"
    }" \
    "https://retail.googleapis.com/v2/projects/[PROJECT_NUMBER]/locations/global/catalogs/default_catalog/branches/0/products/product-id?updateMask=title"

如果请求成功,则会返回商品对象,如以下示例所示。

{
  "name": "projects/[PROJECT_NUMBER]/locations/global/catalogs/default_catalog/branches/0/products/[PRODUCT_ID]",
  "id": "[PRODUCT_ID]",
  "primaryProductId": "[PRODUCT_ID]",
  "type": "PRIMARY",
  "categories": [
    "Shoes & Accessories \u003e Shoes"
  ],
  "title": "new product title",
  "availability": "IN_STOCK"
}

删除产品信息

虽然 Recommendations AI 提供了一种从目录中删除商品的方法,但请注意,如果您记录与已删除的商品项相关的用户事件,Recommendations AI 无法正确处理用户事件并且可能会删除用户事件。此外,添加历史目录数据可以提高模型的质量,对于预测性能至关重要。

您应该将过时商品的 availability 设置为 OUT_OF_STOCK,而不是将其删除。

curl

使用 delete 方法删除产品,注意将 [PRODUCT_ID] 替换为您要删除的商品的 ID。

curl -X DELETE \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    "https://retail.googleapis.com/v2/projects/[PROJECT_NUMBER]/locations/global/catalogs/default_catalog/branches/0/products/[PRODUCT_ID]"

检索产品项

curl

products 端点发出 GET 请求来检索产品项,注意将 [PRODUCT_ID] 替换为您要检索的产品的 ID:

curl -X GET \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)"  \
    "https://retail.googleapis.com/v2/projects/[PROJECT_NUMBER]/locations/global/catalogs/default_catalog/branches/0/products/[PRODUCT_ID]"

您将看到如下所示的输出:

{
    "name": "projects/[PROJECT_NUMBER]/locations/global/catalogs/default_catalog/branches/0/products/[PRODUCT_ID]"
    "id": "[PRODUCT_ID]",
    "primaryProductId": "[PRODUCT_ID]",
    "type": "PRIMARY",
    "categories": [
      "Shoes & Accessories \u003e Shoes"
    ],
    "title": "product title",
    "availability": "IN_STOCK"
}

查看目录的汇总信息

您可以在“Recommendations AI 数据”页面的“目录”标签页中查看有关您的目录的汇总信息并预览上传的产品项。

Recommendations AI 目录导入数据

重新联接目录事件

userEvents:rejoin 端点发出 POST 请求即可重新联接目录事件。

您必须具有 Retail AI Admin IAM 角色。

curl

根据您要重新联接的事件类型,设置 userEventRejoinScope

  • USER_EVENT_REJOIN_SCOPE_UNSPECIFIED:默认值。触发已联接和未联接事件的重新联接。
  • JOINED_EVENTS:仅触发已联接事件的重新联接。
  • UNJOINED_EVENTS:仅触发未联接事件的重新联接。

以下示例仅触发未联接事件的重新联接:

curl -X POST \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    --data "{
     'userEventRejoinScope': 'UNJOINED_EVENTS'
     }" \
    "https://retail.googleapis.com/v2/projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/userEvents:rejoin"

您应该会收到类似如下所示的响应对象:

{
  "name": "projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/operations/[OPERATION_ID]"
}

您可以检查重新联接的状态。将 OPERATION_ID 替换为重新联接方法返回的操作 ID:

curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
"https://retail.googleapis.com/v2/projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/operations/OPERATION_ID"

操作完成后,操作状态将以 done 的形式返回:

{
  "name": "projects/[PROJECT_ID]/locations/global/catalogs/default_catalog/operations/[OPERATION_ID]",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.retail.v2main.RejoinUserEventsResponse",
    "rejoinedUserEventsCount": "1"
  }
}

更改商品级别配置

导入目录时,您必须指定目录项是主项还是变体。如果这些商品级别发生了更改或未正确指定,请按照以下步骤更正其配置。您必须具有 Recommendations AI Admin IAM 角色。

  1. 确保在重新配置目录级别时没有执行任何导入操作。这样可确保数据不会在错误的级别上传。

  2. 如果您打算更改事件目录项级别,请使用完全清除方法完全清除所有用户事件。

  3. 删除所有产品项。请参阅删除产品项。 目录必须完全为空,才能继续下一步。

  4. 更改商品级别配置。

    此过程取决于您的导入方式。按照导入目录信息中的适当步骤将目录级别设置为其新配置。

  5. 按照您在导入目录信息中选择的步骤,使用修改后的级别配置导入新目录。

  6. 调整所有现有模型。

    如需调整模型,请转到“模型”页面,点击模型名称以查看其详情页面,然后点击按钮栏中的手动调整

    转到 Recommendations AI 模型页面

    如需了解调整费用详情,请参阅价格