先这样答
推荐系统和 LLM 可以从召回、精排两层结合。召回阶段,先让 LLM 理解并改写用户的 query,明确用户想找什么。再用 embedding 做语义召回,找出表达不同但含义相关的内容。还可以做知识增强协同过滤,把内容语义带入用户兴趣关系的判断。召回的任务是找到值得进一步判断的候选内容,不是直接决定最终顺序。
精排阶段,我会讲三个结合点。第一,用 LLM 参与用户兴趣建模,帮助判断用户关注什么。第二,用语义信息增强特征交叉,判断用户特征和内容特征之间的关联。第三,生成推荐理由,用它辅助打分。推荐理由提供判断依据,但不能直接代替精排。这样答要把每个结合点放回排序任务,而不是笼统地说用大模型做推荐。
落到短视频场景,重点是内容理解和个性化增强。内容理解要回答视频讲了什么,个性化增强要回答它与这个用户的兴趣有什么关系。召回先找语义相关的短视频,精排再判断候选内容与用户兴趣的匹配程度。面试时按这两层讲,能交代 LLM 分别参与了什么,也能说清召回和精排各自解决什么问题。
面试官会怎么追问
- 「召回已经有协同过滤了,为什么还要用 LLM?」 协同过滤关注用户兴趣关系。LLM 可以补充 query 理解、改写和内容语义。两者结合时,可以从用户关系和语义两个角度找候选内容。
- 「embedding 语义召回和精排里的语义增强,有什么区别?」 语义召回用语义信息找候选内容。精排里的语义增强则用于判断候选内容与用户特征的关联。前者解决找什么,后者参与判断排什么。
- 「生成推荐理由,为什么不直接拿来排序?」 推荐理由可以辅助打分,但理由本身不等于排序结果。我会把它放在精排环节,作为判断候选内容是否符合用户兴趣的信息。
回答的坑
- 只说“用 LLM 做推荐”,却没讲清召回和精排分别怎么用。
- 把生成推荐理由说成直接决定排序,混淆了辅助打分和最终判断。
同系列的题
这家公司的面经实录
—— 本题完 ——