Method: projects.locations.collections.engines.servingConfigs.recommend
  
      
    
  
  
  
  
  
    
  
  
    
    
    
    
    
    
    
      
      
      
        
          HTTP 请求
          POST https://discoveryengine.googleapis.com/v1beta/{servingConfig=projects/*/locations/*/collections/*/engines/*/servingConfigs/*}:recommend
网址采用 gRPC 转码语法。
        
        
          路径参数
          
            
              
              
            
            
              
                | 参数 | 
              
            
            
              
                servingConfig | 
                
                   string 
                  必需。ServingConfig 的完整资源名称:projects/*/locations/global/collections/*/engines/*/servingConfigs/* 或 projects/*/locations/global/collections/*/dataStores/*/servingConfigs/* 在创建商品推荐引擎的同时,系统还会创建一个默认的服务配置。引擎 ID 用作默认投放配置的 ID。例如,对于引擎 projects/*/locations/global/collections/*/engines/my-engine,您可以针对 RecommendationService.Recommend 请求使用 projects/*/locations/global/collections/*/engines/my-engine/servingConfigs/my-engine。 
                 | 
              
            
          
        
        
          请求正文
          请求正文中包含结构如下的数据:
          
            
              
                
                  | JSON 表示法 | 
                
              
              
                
                  {
  "userEvent": {
    object (UserEvent)
  },
  "pageSize": integer,
  "filter": string,
  "validateOnly": boolean,
  "params": {
    string: value,
    ...
  },
  "userLabels": {
    string: string,
    ...
  }
} | 
                
              
            
          
          
            
              
                
                
              
              
                
                  | 字段 | 
                
              
              
                
                  userEvent | 
                  
                     object (UserEvent) 
                    必需。有关用户的背景信息、用户正在查看的内容以及用户触发 servingConfigs.recommend 请求所采取的操作。请注意,此用户事件详细信息不会被提取到 userEvent 日志中。因此,需要单独的 userEvent 写入请求才能记录事件。 请勿为不同的用户将 UserEvent.user_pseudo_id 或 UserEvent.user_info.user_id 设置为相同的固定 ID。如果您尝试接收非个性化推荐(不建议这样做;这会对模型性能产生负面影响),请将 UserEvent.user_pseudo_id 设置为随机唯一 ID,并使 UserEvent.user_info.user_id 保持未设置状态。 
                   | 
                
                
                  pageSize | 
                  
                     integer 
                    页面中结果的数量上限。将此属性设置为所需的推荐结果数量。如果为零,服务会选择合理的默认值。允许的最大值为 100。大于 100 的值设置为 100。 
                   | 
                
                
                  filter | 
                  
                     string 
                    用于限制建议结果的过滤条件,长度上限为 5,000 个字符。目前,仅支持针对 filterTags 属性的过滤表达式。 示例: 
                    
                      (filterTags: ANY("Red", "Blue") OR filterTags: ANY("Hot", "Cold")) 
                      (filterTags: ANY("Red", "Blue")) AND NOT (filterTags: ANY("Green")) 
                     如果 params 字段下的 attributeFilteringSyntax 设置为 true,则系统会预期出现基于属性的表达式,而不是上述基于标记的语法。示例: 
                    
                      - (language: ANY("en", "es")) AND NOT (categories: ANY("Movie"))
 
                      - (available: true) AND  (language: ANY("en", "es")) OR (categories: ANY("Movie"))
 
                     如果您的过滤条件屏蔽了所有结果,则 API 会返回常规(未过滤)的热门文档。如果您只希望获得与过滤条件完全匹配的结果,请在 RecommendRequest.params 中将 strictFiltering 设置为 true,这样系统会返回空结果。 请注意,无论过滤条件如何选择,API 都不会返回 storageStatus 为 EXPIRED 或 DELETED 的 Document。 
                   | 
                
                
                  validateOnly | 
                  
                     boolean 
                    针对此推荐查询使用仅验证模式。如果设置为 true,则使用返回任意文档 ID 的虚假模型。请注意,仅验证模式应仅用于测试 API,或在模型未准备就绪时使用。 
                   | 
                
                
                  params | 
                  
                     map (key: string, value: value (Value format)) 
                    建议的其他网域专用参数。 允许的值: 
                    
                      returnDocument:布尔值。如果设置为 true,则在 RecommendResponse.RecommendationResult.document 中返回关联的 Document 对象。 
                      returnScore:布尔值。如果设置为 true,则会在 RecommendResponse.RecommendationResult.metadata 中设置与每个返回的 Document 对应的推荐得分。给定的得分表示在给定用户情境和历史记录的情况下,文档转化的概率。 
                      strictFiltering:布尔值。默认值为 true。如果设置为 false,则当过滤条件屏蔽所有建议结果时,服务会返回通用的(未过滤的)热门文档,而不是返回空结果。 
                      diversityLevel:字符串。默认值为空。如果设置为非空,则必须是以下值之一:
                      
                        no-diversity 
                        low-diversity 
                        medium-diversity 
                        high-diversity 
                        auto-diversity  这可提供请求级控制,并根据文档类别调整推荐结果。 
                        
                      attributeFilteringSyntax:布尔值。默认值为 false。如果设置为 true,则根据新的基于属性的语法来解读 filter 字段。 
                     
                   | 
                
                
                  userLabels | 
                  
                     map (key: string, value: string) 
                    应用于资源的用户标签必须符合以下要求: 
                    
                      - 每项资源可以有多个标签,但不能超过 64 个。
 
                      - 每个标签都必须采用键值对形式。
 
                      - 键至少有 1 个字符,最多有 63 个字符,且不能为空。值可以为空,且最多包含 63 个字符。
 
                      - 键和值只能包含小写字母、数字字符、下划线和短划线。所有字符必须使用 UTF-8 编码,允许使用国际字符。
 
                      - 标签的键部分必须是唯一的。不过,您可以将同一个键用于多个资源。
 
                      - 键必须以小写字母或国际字符开头。
 
                     如需了解详情,请参阅标签的要求。 
                   | 
                
              
            
          
        
        
          响应正文
          如果成功,则响应正文包含一个 RecommendResponse 实例。
        
        
          授权范围
          需要以下 OAuth 范围之一:
          
            https://www.googleapis.com/auth/cloud-platform 
            https://www.googleapis.com/auth/discoveryengine.readwrite 
          
如需了解详情,请参阅 Authentication Overview。
        
        
          IAM 权限
          需要拥有 servingConfig 资源的以下 IAM 权限:
          
            discoveryengine.servingConfigs.recommend 
          
如需了解详情,请参阅 IAM 文档。
        
      
    
  
  
  
  
    
  
  
 
  
    
    
      
       
         
  
       
    
    
  
  
  如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
  最后更新时间 (UTC):2025-10-19。
  
  
    
    
    
      
  
    
  
  
    
      [[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-10-19。"],[],[]]