找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

2810

积分

0

好友

367

主题
发表于 18 小时前 | 查看: 0| 回复: 0

X开源For You Feed推荐系统架构概念图

每天对着点击率、留存率手动调参,你的头发还好吗?传统的推荐系统严重依赖人工特征工程,维护成本高昂,却常常跟不上用户兴趣的快速变化。

就在昨天,X官方开源了其“For You”信息流算法的核心代码,标志着推荐系统范式的又一次重大革新。这个基于 Grok Transformer 的下一代推荐系统,其最硬核之处在于:彻底抛弃了所有手工特征。系统完全依靠深度模型从用户的历史互动(点赞、回复、转发等)中自主学习,精准判断内容价值。这不仅是一次架构升级,更是一次“暴力美学”式的技术破局。如果你想深入了解现代推荐系统的架构范本,可以在我们云栈社区的人工智能板块找到更多前沿的讨论。

系统架构与核心组件

整个系统由三个核心模块紧密协作构成:Home Mixer(编排层)、Thunder(站内内容存储)和 Phoenix(ML排序与检索模型)。

先通过下面的完整架构图,直观感受一下数据从请求到最终呈现的完整流程:

┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│                                    FOR YOU FEED REQUEST                                     │
└─────────────────────────────────────────────────────────────────────────────────────────────┘
                                           │
                                               ▼
┌─────────────────────────────────────────────────────────────────────────────────────────────┐
│                                         HOME MIXER                                          │
│                                    (Orchestration Layer)                                    │
├─────────────────────────────────────────────────────────────────────────────────────────────┤
│                                                                                             │
│   ┌─────────────────────────────────────────────────────────────────────────────────────┐   │
│   │                                   QUERY HYDRATION                                   │   │
│   │  ┌──────────────────────────┐    ┌──────────────────────────────────────────────┐   │   │
│   │  │ User Action Sequence     │    │ User Features                                │   │   │
│   │  │ (engagement history)     │    │ (following list, preferences, etc.)          │   │   │
│   │  └──────────────────────────┘    └──────────────────────────────────────────────┘   │   │
│   └─────────────────────────────────────────────────────────────────────────────────────┘   │
│                                              │                                              │
│                                              ▼                                              │
│   ┌─────────────────────────────────────────────────────────────────────────────────────┐   │
│   │                                  CANDIDATE SOURCES                                  │   │
│   │         ┌─────────────────────────────┐    ┌────────────────────────────────┐       │   │
│   │         │        THUNDER              │    │     PHOENIX RETRIEVAL          │       │   │
│   │         │    (In-Network Posts)       │    │   (Out-of-Network Posts)       │       │   │
│   │         │                             │    │                                │       │   │
│   │         │  Posts from accounts        │    │  ML-based similarity search    │       │   │
│   │         │  you follow                 │    │  across global corpus          │       │   │
│   │         └─────────────────────────────┘    └────────────────────────────────┘       │   │
│   └─────────────────────────────────────────────────────────────────────────────────────┘   │
│                                              │                                              │
│                                              ▼                                              │
│   ┌─────────────────────────────────────────────────────────────────────────────────────┐   │
│   │                                      HYDRATION                                      │   │
│   │  Fetch additional data: core post metadata, author info, media entities, etc.       │
│   └─────────────────────────────────────────────────────────────────────────────────────┘   │
│                                              │                                              │
│                                              ▼                                              │
│   ┌─────────────────────────────────────────────────────────────────────────────────────┐   │
│   │                                      FILTERING                                      │   │
│   │  Remove: duplicates, old posts, self-posts, blocked authors, muted keywords, etc.   │   │
│   └─────────────────────────────────────────────────────────────────────────────────────┘   │
│                                              │                                              │
│                                              ▼                                              │
│   ┌─────────────────────────────────────────────────────────────────────────────────────┐   │
│   │                                       SCORING                                       │   │
│   │  ┌──────────────────────────┐                                                       │   │
│   │  │  Phoenix Scorer          │    Grok-based Transformer predicts:                   │   │
│   │  │  (ML Predictions)        │    P(like), P(reply), P(repost), P(click)...          │   │
│   │  └──────────────────────────┘                                                       │   │
│   │               │                                                                     │   │
│   │               ▼                                                                     │   │
│   │  ┌──────────────────────────┐                                                       │   │
│   │  │  Weighted Scorer         │    Weighted Score = Σ (weight × P(action))            │   │
│   │  │  (Combine predictions)   │                                                       │   │
│   │  └──────────────────────────┘                                                       │   │
│   │               │                                                                     │   │
│   │               ▼                                                                     │   │
│   │  ┌──────────────────────────┐                                                       │   │
│   │  │  Author Diversity        │    Attenuate repeated author scores                   │   │
│   │  │  Scorer                  │    to ensure feed diversity                           │   │
│   │  └──────────────────────────┘                                                       │   │
│   └─────────────────────────────────────────────────────────────────────────────────────┘   │
│                                              │                                              │
│                                              ▼                                              │
│   ┌─────────────────────────────────────────────────────────────────────────────────────┐   │
│   │                                      SELECTION                                      │   │
│   │                    Sort by final score, select top K candidates                     │   │
│   └─────────────────────────────────────────────────────────────────────────────────────┘   │
│                                              │                                              │
│                                              ▼                                              │
│   ┌─────────────────────────────────────────────────────────────────────────────────────┐   │
│   │                              FILTERING (Post-Selection)                             │   │
│   │                 Visibility filtering (deleted/spam/violence/gore etc)               │   │
│   └─────────────────────────────────────────────────────────────────────────────────────┘   │
│                                                                                             │
└─────────────────────────────────────────────────────────────────────────────────────────────┘

1. 混合编排层 (Home Mixer)

Home Mixer 是整个推荐流程的“总指挥”。它将候选内容的处理过程定义为一系列职责明确的阶段(Stage):

Stage 描述
Query Hydrators 获取用户上下文(互动历史、关注列表等)
Sources 从 Thunder 和 Phoenix 检索候选项
Hydrators 用额外数据(如作者信息、媒体实体)丰富候选项
Filters 移除不合格的候选项(如重复、旧内容)
Scorers 预测用户互动概率并计算最终得分
Selector 按最终得分排序并选择 Top K 个候选项
Post-Selection Filters 进行最终的可见性检查和去重(如删除、垃圾内容)
Side Effects 缓存请求信息以供后续使用

2. 双塔检索与排序模型 (Phoenix)

为了解决“信息茧房”问题,系统设计了精巧的检索与排序机制。

  • 双塔检索 (Phoenix Retrieval):用于从海量内容中寻找用户可能感兴趣的站外推文。

    • 用户塔 (User Tower):将用户特征和互动历史编码为向量(Embedding)。
    • 候选塔 (Candidate Tower):将所有推文内容编码为向量。
    • 相似性搜索 (Similarity Search):通过计算点积相似度,快速检索出与用户最相关的Top-K条推文。这体现了现代推荐系统中高效向量检索的典型设计,你可以从智能 & 数据 & 云板块了解更多关于大规模向量检索与计算的实践。
  • 排序模型 (Transformer with Candidate Isolation):核心排序任务由基于 GrokTransformer 模型完成。它会对每个候选内容预测多种用户互动行为的概率。模型采用了一种特殊的注意力掩码机制,确保在推理时,不同候选内容之间不会相互干扰(Candidate Isolation),从而保证了评分结果的一致性。这正是大模型时代,Transformer 架构在推荐、搜索等核心业务场景中落地的一个绝佳范例,其设计思想值得在 人工智能 领域深入探讨。

算法核心:评分逻辑与过滤机制

虽然项目没有提供传统的CLI安装方式,但理解其算法配置与评分逻辑,就等于掌握了这套系统的“灵魂”。

核心评分公式

系统摒弃了简单的规则加权,转向基于多目标概率预测的智能评分。其核心逻辑可概括为:

Final Score = Σ (weight_i × P(action_i))

多维行为预测

模型会同时预测多达15种用户行为的概率,实现对用户意图的全方位评估:

Predictions:
├── P(favorite)
├── P(reply)
├── P(repost)
├── P(quote)
├── P(click)
├── P(profile_click)
├── P(video_view)
├── P(photo_expand)
├── P(share)
├── P(dwell)
├── P(follow_author)
├── P(not_interested)
├── P(block_author)
├── P(mute_author)
└── P(report)

设计精妙之处:正向行为(如点赞、转发)被赋予正权重,而负向行为(如拉黑、举报)则被赋予负权重。这意味着系统不仅能精准推荐你喜欢的,更能主动“屏蔽”你讨厌的内容,实现双向优化。

严格的预评分过滤机制

在进入计算密集的模型评分之前,系统设置了一层严格的过滤器,以高效剔除大量不合格内容:

过滤器 目的
DropDuplicatesFilter 移除重复的推文ID
CoreDataHydrationFilter 移除未能加载核心元数据(如文本、作者)的推文
AgeFilter 移除超过设定时间阈值的旧推文
SelfpostFilter 移除用户自己发布的推文
RepostDeduplicationFilter 对转发的同一原始内容进行去重
IneligibleSubscriptionFilter 移除用户未订阅的付费内容
PreviouslySeenPostsFilter 移除用户历史已读过的推文
PreviouslyServedPostsFilter 移除当前会话中已展示过的推文
MutedKeywordFilter 移除包含用户屏蔽关键词的推文
AuthorSocialgraphFilter 移除来自已被用户拉黑或静音的作者的内容

实践启示与总结

关键注意事项

  1. 切勿手动注入特征:该系统的基石设计就是“无手工特征”。强行加入人工规则可能会破坏 Transformer 模型对用户隐式兴趣的自适应学习能力。
  2. 严格遵守候选隔离:在Transformer推理阶段,必须确保不同候选内容之间没有注意力交互。破坏这一原则将导致评分不一致,进而影响缓存等优化策略的效果。
  3. 关注哈希碰撞问题:在向量检索等环节,系统依赖多个哈希函数进行快速查找。自行实现时需注意哈希函数的选择与组合,以减少碰撞带来的精度损失。

总结

X 此次开源的项目,不仅全方位展示了一个工业级、高并发推荐系统的架构蓝图,更用实际代码验证了“以模型取代规则”这一技术路径的可行性。它用强大的 Grok Transformer 模型替代了复杂的特征工程与规则系统,实现了真正的端到端学习。对于正在寻找高性能推荐架构范式的工程师,或希望深入探索 LLM/Transformer 在推荐排序中应用的研究者而言,这个项目无疑是一部值得精读的“活教材”。其完整的开源代码,为社区提供了极其宝贵的参考实现。

GitHub 开源地址:https://github.com/xai-org/x-algorithm




上一篇:C++实战:使用Desktop Duplication API实现高性能游戏截图与桌面捕获
下一篇:AI搜索时代12个核心GEO策略:提升品牌在LLM中的可见性与权威性
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-2-2 22:03 , Processed in 0.432418 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表