还有其他难题,或是您的问题未在下面列出?请报告 Bug 或提出功能请求,并在 Google 群组或 Stack Overflow 讨论。
常规
1. 您是否有适用于零售业的 Vertex AI Search 的客户端库,或有其他示例代码?
是。您可以在此处查看客户端库指南,以了解每个库的设置和参考信息。
您还可以使用 Google API Discovery Service 代替原始 REST 调用。
2. 是否所有推荐模型都个性化?
在为用户提供历史记录时,“为您推荐的模型”“您可能喜欢的其他模型”和“再次购买的模型”会提供个性化建议。“经常一起购买的商品”和“相似商品”模型不是个性化的模型。
请参阅推荐模型简介。
3. 我会立即收到个性化推荐,还是需要等待一段时间才能得到改善?
随着您收集更多用户历史记录,推荐功能会越来越好。“为您推荐的”模型会显示热门商品;“您可能喜欢的其他”模型则主要根据其他视图推荐类似商品。这两种模型都会立即考虑用户行为,因此发送实时事件非常重要。请参阅推荐模型简介。
用户事件需要实时或非常接近实时地发送,以保证其有效性。如果每天只提交一次用户事件,或者每天分批提交用户事件,那么个性化模型可能不会像实时事件那样发送。
4. 您的模型中使用了 Google 用户受众特征数据吗?
这些模型仅使用您提供的目录和用户事件数据。如果要包含人口统计数据,您可以添加其他可能用作自定义属性的文本或数字信息。模型重新调整后,便会开始使用这些数据。
请勿包含个人身份信息 (PII),例如电子邮件地址或用户名。我们建议您对受众特征数据进行匿名化处理,例如对值进行哈希处理或使用组 ID。
5. 我能否根据用户群组的事件历史记录(而不是单个用户的历史记录)提出建议?
目前,系统会根据单个访问者 ID 或用户 ID 生成建议。您需要发出单个请求,然后将结果组合以基于组历史记录提出建议。如果用户具有通用元数据特性,您可以使用组 ID 作为用户 ID 来提供组级别建议。
6. 我注意到您可以提交商品的图片网址。这些模型是否会考虑产品图片?
目前不可以。提供这些字段以便您可以检索此元数据以及返回的建议结果,以帮助渲染建议结果。在 Search for Retail 控制台中预览模型的预测结果时,预测预览还可使用图片网址来显示图片。
7. 我的公司不是零电子商务网站。我还可以继续使用推荐功能来预测 x、y、z 吗?
一些客户已将推荐功能用于内容推荐、视频串流和游戏以及其他用例。不过,我们的内容和体验是根据零售电子商务用例设计的,可能尚不适合其他用例。
8. 我可以将推荐模型用在网站的任一网页上吗?
可以,但每个模型都针对特定用例设计,并且可能仅在某些页面上才能实现最佳效果。请参阅推荐模型简介。
“经常一起购买的商品”和“您可能会喜欢的其他商品”需要使用项目 ID,因此建议通过商品 ID 或购物车中的商品对其进行推荐。“经常一起购买的商品”通常最适合添加到购物车或结账页面,而“其他可能感兴趣的商品”和“相似商品”则最适合商品详情页面。“为您推荐”可放置在任意网页上,因为它只需要访问者 ID 作为输入,但它多用于首页投放配置。“再次购买”按钮可放置在任何页面上。
9. 我可以在电子邮件简报中使用推荐功能吗?
是。可通过使用访问者 ID 或用户 ID 调用 API 并将结果整合到电子邮件模板中来完成。如果您希望在电子邮件读取时动态加载这些项目,则需要使用中间端点,例如Google Cloud Functions 函数,发送预测请求。该 API 仅提供经过排序的商品 ID 和元数据的列表,因此您还需要编写自己的代码来渲染图片结果。
10. 我可以将 Vertex AI Search for Retail 用于其他非 Web 用例(移动应用、自助服务终端)吗?
是。您可以设置端点(例如 Google Cloud Functions 函数)以获取应用的结果。您还需要类似的机制来发送实时事件。
11. 我没有超过 3 个月的活动数据。我还可以继续使用 Vertex AI Search for Retail 吗?以后是否可以添加更多数据?
“相似商品”模型不使用用户事件数据或模型调整。如果您没有任何事件数据,但只要有目录数据,则仍然可以创建和训练“类似商品”模型。
如果您可以为实时事件记录足够的流量,则近期数据可用于训练其他模型。如果您日后有额外的数据,可以在初始模型训练后上传。在每日重新训练期间,新回填的数据会合并到模型中。但是,如果数据与用于初始训练的事件明显不同,则可能需要调整模型。
大多数模型最适合至少 3 个月商品网页浏览量、首页视图和添加到购物车,效果最理想(对于“经常一起购买”这两个不同日期的交易记录内模型)。
一到两周的详情页面浏览量足以开始训练“您可能喜欢的其商品”和“为您推荐”的模型,而“经常一起购买”和“再次购买”模型通常需要更多浏览量,因为每天的购买量通常少于页面浏览量。使用更多数据可以有效地改进模型质量;最低金额可能不会产生最优结果。例如,一年的购买量可让模型更好地掌握季节性和流行趋势。
12. 我可以同时推荐商品和类别吗?
Recommendations 仅返回商品推荐,但您可以获得每个返回商品类别(作为搜索结果的一部分)。
13. 您是否集成了从 SQL 数据库或其他系统(如 BigQuery)上传数据的功能?
可以。对于事件,可以从 BigQuery 中读取示例代码。请参阅适用于 BigQuery 的 Google Analytics 示例数据集。
14. Vertex AI Search 零售解决方案是否使用 Cookie?
不会,它不使用 Cookie。但是,发送到 Vertex AI Search for Retail 的所有事件都必须指定访问者 ID,通常是来自 Cookie 的会话标识符。
15. 我需要专用的 Google Cloud 项目吗?
您可以创建新的专用项目,也可以在现有项目中启用 Vertex AI Search for Retail。
16. 为什么我的凭据在使用 Cloud Shell 时不起作用?
检查您是否已完成 Vertex AI Search for Retail 的身份验证设置步骤。您应该使用已在环境中可用的服务账号。否则,您可能会收到如下错误:“您的应用已使用不受支持的 Google Cloud SDK 或 Google Cloud Shell 中的最终用户凭据进行身份验证”。
如需详细了解服务账号,请参阅 Google Cloud 文档的身份验证部分。
17. 如何将 Vertex AI Search for Retail 与类似解决方案进行比较?
您可以执行 A/B 测试来比较 Vertex AI Search for Retail 与其他产品的结果。
18. 我认为功能 x、y、z 不错。您能否添加此信息?
我们希望倾听您的宝贵意见!您可以通过客户支持团队、Google 支持或问题跟踪器提交功能请求。
19. 我还可以使用旧版 API 获取推荐吗?
推荐功能已从 Recommendations Engine API 迁移到 Vertex AI Search for Retail。如果您使用的是 Recommendations Engine API(处于 Beta 版阶段),我们建议您将建议迁移到正式版 Vertex AI Search for Retail(服务端点 https://retail.googleapis.com
)。
先前的 API(服务端点 https://recommendationengine.googleapis.com
)及其文档仍然可用,但它们不再更新。
目录和商品
1. 推荐功能如何处理新商品的冷启动?
对于没有任何交易记录的商品,我们会根据类似商品进行推荐。在这些情况下,请务必在目录中定义恰当的商品标题、类别和说明。
对于冷启动用户(没有历史记录的访问者),模型会从最热门的常规商品开始,并随着接收到更多用户事件而实时提高个性化程度。
2. 我可以将 Merchant Center 目录用于推荐吗?
可以,您可以使用 Merchant Center Data Transfer Service 将 Merchant Center 目录导出到 BigQuery。然后,我们可以直接从 BigQuery 读取目录。请参阅从 Merchant Center 导入目录数据。
3. 还有哪些方法可以导入我的目录?
- Merchant Center:使用 Merchant Center 导入。如果您使用 Google 搜索,则可以使用控制台来关联 Merchant Center,以便其目录自动同步。
- BigQuery:直接从表或视图导入。
- Cloud Storage:使用文本文件(每行一个 JSON 目录项)导入。
- 内嵌导入:通过 API 调用导入(使用每行一个 JSON 目录项的文本文件)。
- 创建商品项:使用
Products
创建方法。
4. 如何及时更新目录?目录的更新频率是多少?
请参阅使目录保持最新。
我们建议您每天更新目录。您可以从 Cloud Storage 或 BigQuery 进行全面更新,也可以执行增量更新(即,仅新建和更改的项目)。
如果可能,请实时更新价格和库存状况。这会影响使用搜索功能搜索新商品的速度。
如果您有一种简单的方式来接收目录更改通知(例如通过 Pub/Sub、消息队列、事件等),则您可以使用导入或创建 API 方法。
例如,Cloud Scheduler 可用于进行每天 BigQuery 导入调用。
5. 目录大小上限和下限是多少?
没有最低大小要求,但非常小的产品目录大小(少于 100 个项目)可能会不利于推荐,因为推荐的商品数量非常少。
目录最多包含 4000 万项。
请参阅关于默认配额和限制以及如何请求更改配额的文档。
6. 我公司在多个国家/地区运营网站。我是否应该对所有数据使用一个目录?
通常情况下,最好只使用一个包含所有项的目录。所有事件都必须使用单一币种提交。您无法在同一项目中拥有多个目录,但如果您使用实体,则可以为特定国家/地区指定搜索、推荐和自动补全行为。
如果各个网站的目录差别很大,我们建议为每个网站创建一个单独的项目。此外,如果这些国家/地区使用不同的语言,我们建议您为每种语言创建一个单独的项目。
如果存在流量低于主网站的类似网站,且没有足够的事件为所有单个网站生成高质量的模型,那么最好使用单个目录。
如需使用单个目录,目录项 ID 应保持一致,也就是说,同一商品的所有网站上都应使用相同的商品 ID,这样同一个商品就不会重复展示产品。
对于仅限推荐的情况,使用实体的替代方案是使用过滤条件过滤到特定网站。不过,过滤条件最多可能需要 8 小时才能更新,因此,如果针对具体国家/地区的供应情况(缺货)的要求需要满足,那么这些规则通常要由一条在业务预测后过滤结果的业务规则进行处理。这适用于 v1 filter_tag
过滤和 v2 基于属性的过滤。
7. Vertex AI Search for Retail 是否支持每个目录使用多种货币?
不支持,每个目录仅支持一种货币类型。必须使用单一币种上传事件。
如果您打算使用 Search for Retail 控制台获取收入指标,请在上传事件之前,确保所有事件都使用一种货币,或者将所有事件都转换为相同货币。
8. 我有多个共享目录或类似项的网站。推荐功能可以提供跨网站推荐吗?
我们通常建议只在网站存在明显重叠时使用单个目录;他们应该共享很多或所有相同产品。然后,与多区域网站一样,您可以使用实体或过滤条件标记仅返回特定预测调用的网站特定项。
如果网站没有共享多个或任意目录项,则应使用多个目录。使用多个目录需要为每个目录使用单独的 Google Cloud 项目。
9. 添加更多元数据可改进模型吗?模型是否会考虑字段 x,y,z 吗?
如需了解必填字段,请参阅必需的目录项信息。
其他元数据字段为可选字段(例如图片和 itemAttributes)。它们可用于预测预览、结果分析、训练和调节。建议添加颜色、大小、材质等有用的属性。您可以通过指定 returnProduct:true
将这些字段作为预测结果的一部分返回,因此这些字段对呈现结果很有帮助。图片和商品属性用于 Search for Retail 控制台中的预测预览。
10. 目录项的哪些属性可用作模型训练的输入?
结合使用用户行为和商品属性。所使用的主要字段包括 ID、标题、类别层次结构、价格和网址。您可以添加在 Product.attributes[]
中可能有用的其他自定义键值对特性。
图片网址更便捷,您可以通过指定 returnProduct:true
来将此元数据作为预测结果的一部分返回,这样可以节省额外的调用以检索此信息。通过图片网址,当您在 Search for Retail 控制台中预览模型的预测结果时,预测预览也可以显示图片。
11. 我的产品支持哪些语言?
推荐功能:支持大多数语言。模型会自动检测文本语言。如需查看可自动检测的所有语言的列表,请参阅紧凑语言检测器 GitHub README。
搜索功能:支持这些世界语言。
您可以在上传目录时设置语言。目录应采用一种语言,查询也应采用同一语言。目录中包含多种语言会降低模型性能。例如,如果目录使用的是西班牙语,但搜索查询使用的是英语,系统不会将查询翻译成西班牙语。
12. 我的目录包含主项/变体或父项/子项 SKU。是否支持这些格式?
可以。这与 Merchant Center 中的 item_group_id
类似。您需要确定希望重新获得建议的方式(父级或子级),以及事件是父级还是子级级别的。
如需详细了解商品级别,请参阅商品级别。
在发送任何项或事件之前,先确定并设置了正确的商品级别。您可以更改商品级别,但需要重新加入项并重新调整模型。
13. 我可以在商品不再可用时从目录中删除它们吗?
如果商品不再是最新状态,我们建议您将其状态设置为 OUT_OF_STOCK
,而不是删除它,这样,引用该项目的先前用户事件就不会失效。
用户事件
1. 我需要收集哪些用户事件?
如需查看用户事件类型以及用户事件要求和最佳实践的列表,请参阅用户事件简介。
2. 如何在模型创建过程中排查数据质量问题?
在 Retail 专用搜索控制台中,前往数据质量页面,查看提取的目录和用户事件的数据质量指标。
3. 我可以与 Google Analytics 360 集成吗?
您可以使用 Google Analytics 360 (GA360) 中的历史数据。与 Merchant Center 数据类似,可以将 GA360 数据导出到 BigQuery,然后 Vertex AI Search for Retail 可以直接从 BigQuery 读取事件。
对于实时事件,我们建议将跟踪像素与 Google 跟踪代码管理器集成,因为事件会从 GA360 延迟。
4. 我想从 Google Analytics 360 导入用户事件。此操作是否提供所需的所有用户事件?
Google Analytics 360 原生支持 Vertex AI Search for Retail 使用的所有用户事件(搜索事件除外)。您仍然可以从 Google Analytics 360 导入搜索用户事件,但请注意,Vertex AI Search for Retail 会根据搜索查询和(如果存在)商品展示次数构建搜索用户事件。
5. 如何将事件发送至 Recommendations AI?
用户通常使用 Cloud Storage 或 API 导入功能导入历史事件,然后使用 JavaScript Pixel 或跟踪代码管理器代码中的实时事件或后端的写入方法流式传输实时事件。
6. 如果我无法发送模型所需的所有用户事件类型,该怎么办?每个模型需要的最低事件类型有哪些?
每个模型和优化目标的要求略有不同。请参阅用户事件数据要求。
通常每个目录项的事件数量越多,模型性能越好。对于流量较大并且目录较少的网站,您可以从少量的历史事件开始,但通常仍至少需要数周的历史数据和后续的实时事件。
7. 我的加入购物车和购买完成事件没有收入或数量值。我应该提交什么?
如果您没有数量值,可以传递不影响模型结果的默认值 1。商品应始终设置 displayPrice(可以是向用户显示的任何值,例如折扣价格)。originalPrice 和费用为可选项。
8. 我的数据仅涵盖有限的事件类型。我还可以继续使用 Vertex AI Search for Retail 吗?
如需了解每种模型类型的最低数据要求,请参阅用户事件数据要求。
搜索结果
1. 搜索结果是否是个性化?
是。Google 搜索可提供个性化结果。 搜索结果会根据访问者 ID 进行个性化。如需了解详情,请参阅个性化。
2. 如何在搜索请求中添加上下文(例如用户购物的商店)?
基于商店 ID 的可用性和履单选项是商品目录的特性。履单选项是“在线配送”、“在线购买”和“店内取货”等特性。
特性可以作为搜索请求中的参数发送。因此,对于此示例,搜索请求可以指定用户的商店 ID。可以根据请求中的商店 ID 进行过滤结果或让结果排名靠前。
3. 我可以在搜索结果中隐藏商品吗?
可以。filter
参数可以根据其标记过滤掉结果。
4. 可以按照多个条件(例如可用性和价格)进行排名吗?
是,[boostSpec
] 允许复杂的排名规则。
5. 可以通过对某些属性进行分组以便提供包含多个特性的结果吗?例如,对于原产地,将同一国家/地区中的城市分组。
商品特性不是分层的。但是,您可以使用多个自定义特性来实现此目的。在此示例中,您可以将自定义特性同时用于生产国家/地区和生产城市。
6. 建议功能的运作方式
建议是用户查询、重写的查询、产品名称等组合。为了生成高质量的自动补全建议,您应该提取足够的搜索事件以及目录。
预测结果
1. 我可以返回的预测结果数量有限制吗?
默认情况下,预测请求会在响应中返回 20 个项。您可以通过提交 pageSize 值来增加或减少此数值。
如果您需要返回 100 多个项,请与 Google 支持团队联系以提高限额。但请注意,返回 100 多个项可能会增加响应延迟时间。
2. 我能查看模型做出特定商品推荐的原因吗?
不需要
3. 我可以下载和缓存预测结果吗?
由于预测结果会实时响应您网站上的用户活动,因此我们不建议使用已缓存的预测。该模型每天都会重新训练模型,将更改纳入目录,并对可以改变结果的用户事件中的新趋势做出回应。
4. 我需要根据业务规则重新调整返回的建议。系统是否支持本功能?
可以。虽然您可以根据业务规则重新调整返回的建议的优先级,但请注意,重新排序建议或过滤推荐结果可能会降低模型的整体优化效果。
在返回的建议集中按照价格由高到低的顺序对订单进行排序,该排序还可以作为“您可能喜欢的其他商品”和“为您推荐的商品”模型的内置自定义项。
请参阅价格重排序。
5. 我可以创建和使用的过滤器标记数量是否有限制?
您可以创建或可使用的唯一标记数量没有硬性限制。不过,该系统并非旨在为每个项目处理多个过滤器标签。如果可能,我们建议为每个目录项最多保留 10 个过滤器标记。在整个目录中都可以使用超过 10 个值;这是针对每件商品的限制。总标记(所有项标签的数量总和)上限为 1 亿。
如需了解 Retail 的 配额和限制,请参阅 Vertex AI Search 文档。
6. 我可以将推荐多样化吗?
可以。多样化可以在投放配置中指定,也可以在预测请求参数中指定。由于多样性程度低,预测中可能包含属于同一类别的相似商品。多样化程度较高时,结果将包含其他类别的商品。
7. 我可以按价格确定推荐的优先级吗?
可以。价格重排序会导致推荐概率相近的推荐商品按价格进行排序,价格最高的商品列在第一位。相关性仍会用于订购商品,因此启用价格重排序与按价格排序不同。可以在投放配置或预测请求参数中指定价格重排序。
模型
1. 我已上传目录和事件,但当我调用预测 API 时仍然会收到此响应:“推荐模型尚未准备就绪。您可以在预测请求中将“dryRun”设置为 true 以进行集成,这会从目录中返回任意目录项(请勿用于生产流量)。”
这通常意味着您的模型尚未完成训练。如果您模型创建已超过 10 天,但仍收到此响应,请与支持团队联系。
2. 训练模型需要多长时间?
初始模型训练和调整需要 2-5 天才能完成,但对于大型数据集,可能需要更长时间。 此后,除非停用,否则每天会自动重新训练模型。请参阅暂停和恢复模型训练。
3. 我可以下载或导出模型吗?
不需要
4. 我可以在新项目中使用现有项目中创建的模型吗?
不可以。您需要在新项目中创建和重新训练模型。
5. 我想对我的分类网页使用模型。可以这样做吗?
是。“为您推荐”功能在类别页面上非常有用。类别页与首页相似,区别于前者只能显示属于该类别的商品。您可以使用推荐给您的带有过滤器标签的标准模型来实现此目的。例如,您可以向目录中的项添加自定义过滤器标记(对应于每个类别页面)。发送预测请求时,将用户事件对象设置为 category-page-view
,并在 filter
字段中指定特定类别页面的标记。仅返回与所请求的过滤条件标记匹配的建议结果。在此用例中应停用多样性,因为多样性可能会与基于类别的过滤标记冲突。
6. 我可以停用模型的个性化功能吗?
默认情况下,对于您可能喜欢的其他商品、为您推荐和再买一次推荐模型类型,会根据用户提供个性化的预测结果。
我们不建议停用个性化功能,因为这会对模型性能产生负面影响。
如果您需要显示与正在查看的商品相关的目录项,而非基于用户之前与您的网站的互动情况进行显示,则可以在预测请求中使用随机的唯一访问者 ID 以接收非个性化推荐内容。请确保只针对您不想个性化的投放配置中的请求执行此操作。
Search for Retail 控制台
1. 我已清除许多事件,但信息中心仍然会显示这些事件类型的计数。
这是正常现象,“面向零售业的搜索”信息中心会显示特定时间段内提取的事件数量;但不会显示当前的数量或事件数量。
通常情况下,在记录用户事件后,您应妥善保留。不建议完全清除事件。如果您计划完全重置用户事件,请考虑创建一个新项目。
如果您确实需要清除未正确记录的事件,请参阅移除用户事件的相关文档。事件完全清除操作最长可能需要几天才能完成。
2. 如何判断我的目录或用户事件是否有错误?
如果存在语法问题或者由于某种原因无法处理请求,则目录项更新或用户事件的大多数 API 调用都会返回错误。
“面向零售的搜索”信息中心会显示未联接事件所占百分比,这也是发现目录或事件问题所适用的指标。如果的目录中不包含指定项目 ID,则会发生未联接的事件(或未连接的预测调用)。这通常意味着目录过期,需要上传新的或已更改的目录项,但也可能由于传递了错误项目 ID。请检查您的请求,确保项目 ID 正确映射到相应的目录,然后检查您上传的目录以确保项存在。
Cloud Monitoring 和 Cloud Logging 可用于监控事件的状态。例如,如果在某个时间段内没有事件或者预测调用低于特定阈值,您将收到提醒。
3. 为什么我的推荐投放配置显示为无效?如何激活它们?
为了使用推荐投放配置,您需要先提交目录和用户事件数据来训练相应的模型。模型训练完成后,信息中心会指示模型已可供查询。
4. 购物搜索广告会以何种货币报告收入指标?
Search for Retail 会以上传的数据中使用的货币报告指标。Vertex AI Search for Retail 不支持每个目录使用多种货币,也不会转换货币。
如果您打算使用 Search for Retail 控制台获取收入指标,请确保所有事件都使用一种货币,或者将所有事件都转换为相同货币,然后再上传到 Vertex AI Search for Retail。