获取个性化的浏览结果

浏览是一种没有查询的导航搜索。浏览功能使用导航方法来显示与最终用户所选类别或过滤条件相符的搜索结果。与用户互动功能搭配使用时,您可以为用户提供个性化浏览体验。个性化浏览功能可根据用户互动历史记录和内容特征,提供实时、用户专属的 Feed。该策略旨在根据定义的 KPI 优化搜索结果,同时遵守您的策略控制设置。例如,房地产网站可以为英国伦敦和澳大利亚悉尼的用户提供不同的首页;购物网站可以根据用户个人资料量身定制搜索结果。

本页介绍了如何获取自定义搜索数据存储区的浏览结果,以及设置搜索应用的一些最佳实践。

个性化浏览简介

Vertex AI Search 个性化浏览功能使用神经网络根据预测的用户互动度和转化情况对文档进行排名。例如,借助个性化浏览,您可以根据预测的点击或咨询可能性,在酒店目录或网站文章中提供排名靠前的条目,并将其返回给用户。

从根本上讲,个性化浏览是一种复杂的模型,可学习用户浏览模式、文档内容和功能以及用户转化事件之间的复杂关系。一些重要功能如下:

  • 排名:模型会根据预测的效果(以您定义的目标为准)对商品进行排名,但会受到已配置的搜索参数(例如过滤条件、自定义排名和服务控件 [例如加推、推广或同义词])的限制。

  • 训练和优化:在初始训练之后,系统会使用实时用户事件流不断优化模型。模型会随着时间的推移不断调整和改进。

  • 多样性:模型会记录来自非互动的负信号(例如被忽略的链接、网页停留时间和跳出率),从而隐式学习多样性。

下表列出了搜索和浏览之间的区别。

功能 搜索 浏览
用途 查找特定信息 探索和发现内容
示例 在 Google 搜索中搜索“温哥华最好的韩国餐厅” 根据餐厅可能所属的类别(例如“餐厅 > 韩式 > 温哥华 > 4 星级及以上”)浏览餐厅
用户意图 通常以目标为导向 探索性
起点 通常位于搜索栏中的查询或关键字 通常使用菜单、面包屑、链接或其他导航方法(例如分面)的特定网站或平台
方法 输入关键字或短语,并应用搜索和投放配置 使用空查询进行搜索,应用搜索和服务配置
结果 相关结果列表 数据存储区中与过滤条件匹配的所有文档

工作流程和最佳实践

个性化浏览是一项由 Google 代管式服务,Google 会处理底层深度学习模型和数据流水线。为了充分利用此服务,在开发搜索应用时,您的主要技术职责包括以下方面:

  • 数据提供:收集并提供包含文档和用户事件的全面数据存储区。
  • 目标定义:指定用于优化的 KPI,例如点击率 (CTR)、高价值操作和每次会话收入(使用提供的用户事件)。确保您收集的用户事件类型支持相应目标。
  • 搜索参数:在搜索请求中定义和配置搜索参数以及投放控制。例如,用于过滤允许的商品详情或文章的日期范围,或者用于根据博客的评分重新排序博客的提升控件。

在 AI 应用搜索应用中,浏览是指不使用查询或使用空查询进行搜索。如需获取浏览结果,您可以在自定义搜索数据存储区中调用 search 方法,并将查询留空。

一般来说,以下是获得最佳个性化浏览体验的步骤:

  1. 拥有正确且一致的数据

  2. 准备并注入文档

  3. 准备和注入用户事件

    • 准备至少 30 天的用户事件,用于初始模型训练。 您可以使用历史用户事件实时用户事件中的一种或同时使用这两种数据。 实时事件可带来更出色的个性化效果。
    • 记录并分享 search 事件(用于捕获浏览数据)、view-item 事件和 conversion 事件。
    • 所有用户事件都必须包含以下内容:
      • eventType,例如用于搜索和浏览的 searchview-itemconversion
      • userPseudoId,即一致的假名化用户标识符。
      • eventTime,即记录相应事件时的 ISO 8601 时间戳 (UTC)。
      • documents.id 按与文档 ID 匹配的顺序向用户显示。
      • searchInfo.searchQuery 来注册用户的搜索查询。
      • pageInfo.pageCategory,用于添加上下文,例如“首页轮播”“房源 > VIC > Richmond”。
      • 用于描述生成展示列表所用过滤逻辑的 filter。这通常通过 pageCategory 字段或系统理解来捕获。

    如需了解详情,请参阅 userEvents

  4. 启用模型训练和模型流水线

    准备好数据并收集用户事件后,请与您的 Google 客户工程师 (CE) 联系。CE 可以查看您的数据,并为您的应用启用个性化模型。

  5. 获取个性化的浏览结果

    向搜索请求添加更多字段,例如过滤条件和排名调整(例如提升或自定义排名)。

  6. 维护数据并确保数据始终是最新的

    随着时间的推移,请确保数据存储区中的文档始终是最新的,并不断上传新的用户事件。这样可确保模型能够访问最新的文档和用户互动,从而提供个性化的结果。

获取包含网站数据的应用的浏览结果

如需使用该 API 获取包含网站数据的应用的浏览结果,请执行以下操作:

  1. 查找应用 ID。如果您已拥有应用 ID,请跳到下一步。

    1. 在 Google Cloud 控制台中,前往 AI Applications 页面。

      前往“应用”

    2. 应用页面上,找到应用的名称,并从 ID 列获取应用的 ID。

  2. 使用空查询或不使用查询来调用 engines.servingConfigs.search 方法,如下所示:

    REST

    curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \
    -d '{
    "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search",
    "orderBy": "ORDER_BY",
    "params": {
         "searchType": "0"
     },
    "filter": "FILTER",
    "boostSpec": "BOOST_SPEC",
    }'
    

    替换以下内容:

    • PROJECT_ID:您的 Google Cloud 项目的 ID。
    • APP_ID:要查询的 Vertex AI Search 应用的 ID。
    • ORDER_BY:可选。结果的排列顺序。要排序的属性必须具有数值解释,例如 date。如需了解详情,请参阅对网页搜索结果进行排序
    • FILTER:可选,但建议填写。一个文本字段,用于使用过滤表达式过滤搜索结果。默认值为空字符串。如需详细了解如何使用 filter 字段,请参阅过滤结构化或非结构化数据的通用搜索过滤网站搜索
    • BOOST_SPEC:可选。用于提升或隐藏文档的规范。值:
      • BOOST:[-1,1] 范围内的浮点数。如果该值为负值,则结果会被降级(显示在结果中更靠下的位置)。如果值为正,则结果会获得提升(显示在结果中更靠上的位置)。
      • CONDITION:用于选择应用加权的文档的文本过滤表达式。过滤条件的计算结果必须为布尔值。 如需了解如何提升结构化搜索的效果,请参阅提升搜索结果

    您应该会收到类似以下截断的 JSON 响应。 响应包含按搜索请求中设置的字段确定的顺序列出的分项搜索结果。