You need to enable JavaScript to run this app.
全域AI搜索

全域AI搜索

复制全文
常见问题排查手册
个性化推荐场景
复制全文
个性化推荐场景

个性化推荐场景问题解答

说明

本文档是一篇关于推荐系统的故障排查指南,旨在帮助用户在遇到推荐结果为空、个性化效果不佳等常见问题时,能够快速定位原因并解决问题。通过本文,您可以了解常见问题的排查思路和具体操作步骤,从而提升推荐系统的效果和稳定性。

推荐返空

详见帮助文档:为什么推荐没有返回物品?
也可按照如下流程排查

排查模块

排查逻辑与建议

行为数据质量

  1. 物品id:能在物品表里找到
  2. 行为时间:7天以内的(7天以外的也可以传,但必须有7天以内的)
  3. 行为类型:曝光+非曝光的正向行为(比如点击、收藏、购买等)都要有
  4. 行为条数:尽可能多,至少1000条

操作流程

操作流程:首先,在控制台的“应用管理”页面,为您的应用关联至少一个物品数据集并点击“生效”。然后,在同一页面关联用户行为数据集并点击“生效”。最后,在页面顶部点击“生效配置”按钮以应用所有更改。
请注意,行为数据集的关联和生效,必须在图文数据集生效后进行。请务必遵循此顺序,因为用户行为数据(如点击)需要关联到具体的物品上,如果物品数据集尚未生效,系统将无法解析行为数据中的物品信息,导致关联失败。

筛选推荐物品

Image
核心是 没有满足上面所有条件的物品,拆开看 可能的原因:

  • 「或」逻辑配置误配置为「且」
  • 物品表里 字段传输有问题,实际值 不是 定义的格式
  • 仅仅因为没有物品满足全部条件

去除重复推荐

都被曝光去重、下发去重过滤掉了
Image

兜底策略配置

兜底策略是否合理
Image

物品数据质量

  1. 物品的标签字段要有值。这个设置为标签的字段是火山侧模型推断的,客户侧若有更合适的字段,可以联系火山侧变更

Image

推荐耗时长

推荐耗时长,有可能是因为召回请求物品属性信息时 属性信息值非常大,获取超时导致的。
可以检查物品表中是否有值很大的字段,类似下面这些字段:

排查项

排查逻辑与建议

召回结果重排

召回结果重排数量是否太大。建议配置为20个
Image

用于文搜的是否有大字段

Image

推荐场景用户画像为空

相似问题:个性化测试用户兴趣标签为空

用户画像标签的计算逻辑是:
统计用户最近7天内正向行为的物品id,根据物品id去物品表里查询对应的兴趣标签字段。
兴趣标签字段,是火山大模型在分析物品数据集后智能选择的某个字段。

建议:
先检查该用户最近7天内有没有正向行为
如果有,再看正向行为的物品是否在物品表里找得到
如果也能找得到,就联系火山技术支持,查一下智能选择的物品字段 是否合适,不合适的话,手动调整。

推荐结果不够个性化

问题描述:
业务侧预期的推荐效果是:用户如果点击了或者播放了某个类型的物品,后续就应该给该用户推荐相同类型的物品。
在推荐内容不符合该预期时,可能是数据配置上有些问题。

当前有3路召回是返回用户个性化物品的,如下表,若想要有较强的个性化推荐效果,需根据每一路召回逻辑优化数据质量。尤其优化用户兴趣召回、大模型召回

召回通道

召回逻辑

客户侧确认优化

用户兴趣召回

  1. 根据全量行为数据计算每个标签下的高热物品
  2. 获取用户最近7天正向行为过的物品的标签列表,逐个对列表里的标签去获取高热物品

注:这里的标签是平台大模型分析物品表字段后自动选择的某个字段,客户可以看下面展示的标签值推断来自哪个字段
Image

  1. 行为数据
    1. 数据量大
    2. 包括曝光和正向行为(比如点击、购买、播放等
    3. 物品要能在物品数据里找到
  2. 物品数据
    1. 分析火山自动选择的兴趣维度字段是否合适,判断标准
      1. 该字段值符合业务侧对用户兴趣维度的权衡,比如一般选择字段有:商品类目、资讯标签
      2. 该字段值的覆盖率高,即大部分物品的这个字段都是有值的
      3. 该字段的枚举值具有区分度(应避免大部分甚至全部内容都有某个标签值),不要太稀疏(禁忌枚举值非常多,大部分枚举值对应的内容数都很少)
    2. 如果有更合适的标签字段,请联系火山技术支持调整

大模型召回

  1. 对每个物品都做embedding,依赖选择的用于文搜的字段信息
  2. 获取用户最近7天正向行为过的物品列表,做embedding后去向量检索相似的物品
  1. 物品数据用于文搜的字段
    1. 要勾选有核心信息的字段,比如标题、类目等
    2. 不要勾选非核心信息,防止有太多庞杂信息 稀释了核心信息浓度,检索出不相关的物品

itemcf召回

  1. 根据全量行为数据计算物品和物品的相似性
  2. 获取用户最近7天正向行为过的物品列表,逐个对列表里的物品去获取相似性高的其他物品
  1. 行为数据
    1. 数据量大
    2. 包括曝光和正向行为(比如点击、购买、播放等)

详情页场景未推出父物品相似物品

排查项

排查逻辑

API传参

检查:传参格式是否正确。正确传参如下:
Image

父物品

检查:父物品id必须在物品数据集内

推荐返回的物品重复

排查模块

排查逻辑

去除重复推荐

如果去重配置太小,则每次新推荐时,只过滤掉最近很少推出过的物品,就可能会推出之前已经推荐过的物品。
(当前曝光去重可设置的最大时间窗口为7天)
Image

行为数据实时性

检查曝光的行为数据 有没有实时的同步到火山平台?
如果延迟较高,【已曝光物品去重】获取不到曝光的物品,导致消重失败(建议:提高行为数据实时性+增加【已下发的物品去重】

打散未生效

排查项

排查逻辑 与 建议

确认是否真的没有生效

  1. 把打散字段也放在output_fields里,通过接口返回的信息 验证是否没有打散
  2. 在产品界面上看,可能会出现实际上生效,但看着没打散的情况,主要是跨刷逻辑导致的,详细逻辑如下:
    1. 当前打散生效范围是每一刷内,比如一刷返回5个,配置的打散逻辑是

Image

  1. 则每一刷内部是可以满足4个最多出1个同类,但 可能第一刷的最后一个和第二刷的第一个就是一个维度的,就出现了实际浏览应用时出现的集中出现的情况,这种情况在功能逻辑上是符合预期的。

Image

打散程度是否过高

如果把内容打的非常散,比如连续非常多个 都不允许出现同样维度,就可能因为 召回的物品根本没有这么多种类,导致最后打散失败。
并且从个性化推荐的实践来说,每个用户在某些维度上是有特定偏好的,比如某用户最近就是想买某种款式的羽绒服,某用户就是喜欢某一个作者的作品,那在推荐上就是会多给用户返回这类物品。
最后,因为打散只在一刷内生效,如果一刷返回10个物品,打散若配置 连续20个最多展示n个,则也很可能会出现不符合预期的结果。
所以建议:
Image

打散字段是否合适

  1. 嵌套字段不能用来打散
  2. 字段若为空值或者没有打散字段,作为同一个维度处理,所以若打散字段里有较多空值,会增加打散失败概率

推荐-过滤没有生效

一条动态过滤需要平台配置且API传参过来才能生效,缺失一个 都会不生效,会在接口返回的omitted_params里标识。

可按下表依次排查可能的原因:

原因分类

排查逻辑 与 建议

API里传了,但是筛选策略里没有配置

Image
Image

筛选策略里配置动态筛选,但是API传参里没有传

Image

动态过滤传参不合法

Image
Image

逻辑条件检查

筛选过滤表达式逻辑 「不属于」后若是列表,是都匹配上才符合,而不是存在交集即可
如果希望是匹配上一个就过滤,则可以用多个表达式来表示

其他
逻辑条件选错

检查配置的是否是「或」的逻辑
Image

说明

了解更多 Viking AI 搜索产品能力,请参见:Viking AI 搜索引擎,企业搜推问一体化智能引擎

最近更新时间:2026.03.02 11:04:36
这个页面对您有帮助吗?
有用
有用
无用
无用