本页提供推荐系统核心术语的简明说明。需要了解实现细节时,请点击对应行的“详见”链接。全站译名以本页为准。
推荐流程类
| 术语 | 释义 | 详见 |
|---|---|---|
| 召回(retrieval) | 第一阶段粗筛:系统从全网帖子中快速找出一批候选,优先保障速度与覆盖面。Phoenix 召回、SimClusters、热门帖子源等都属于召回来源。 | Phoenix 召回:双塔检索架构 |
| 排序(ranking) | 第二阶段精选:排序模型为召回给出的候选帖子预测行为概率,再按最终分排序。 | Phoenix 排序模型 |
| 候选(candidate) | 系统拟展示给用户的单条帖子。候选帖子必须通过过滤、打分与可见性检查才可能进入最终信息流。 | home-mixer 编排层 |
| 站内 / 站外 | 站内(in-network)指当前用户已关注作者发布的帖子;站外(out-of-network,OON)指当前用户未关注作者发布的帖子。 | Thunder 站内帖子内存库 |
| 两阶段架构 | 推荐系统采用的“先召回、后排序”分阶段设计。召回阶段缩减计算范围,排序阶段对候选精细打分。 | 系统架构总览 |
| 候选源(source) | 向流水线提供候选帖子的组件。内层流水线装配 9 个候选源,其中 TweetMixer、Phoenix MoE 召回、SID 召回 3 个开源默认关闭(home-mixer/candidate_pipeline/phoenix_candidate_pipeline.rs:380-390)。 |
home-mixer 编排层 |
| SimClusters | 站外候选源。它按“谁关注谁、谁点赞什么”把账号和帖子聚成社区,再用你最近互动过的帖子找相似帖子。只保留余弦分大于 0.5 的结果,最多 800 条(home-mixer/sources/simclusters_source.rs:25-36)。开源默认开启。 |
SimClusters 站外候选源 |
| 热门帖子源 | 站外候选源 PopularPostsSource。它提供一份全站共享、不按用户个性化的热门列表:按粉丝数从高到低选作者,人数为近 7 天活跃发帖人数的 0.005%,每人最多 5 条、共 500 条(home-mixer/util/popular_posts.rs:39-40)。 |
home-mixer 编排层 |
| 水合(hydration) | 实体元数据填充流程。系统根据候选帖子 ID 从缓存或存储中补齐正文、作者资料、媒体信息与互动数。 | home-mixer 编排层 |
| 过滤器(filter) | 候选剔除机制。打分前有 21 个预打分过滤器,按规则(如拉黑静音、已读历史、发布超过 48 小时)丢弃不合格的候选。 | 过滤流水线 |
| 流水线(pipeline) | 标准推荐处理流程。编排框架按顺序串联候选召回、水合、过滤、打分、选择与选后检查各环节。 | candidate-pipeline 框架与七个组件 trait |
打分类
| 术语 | 释义 | 详见 |
|---|---|---|
| 打分器(scorer) | 给候选算分的组件。内层流水线按序运行 5 个打分器:PhoenixScorer → ImmersiveVideoScorer → VMRanker → PageDecodeRerankScorer → PageRlExplorationScorer,后两个开源默认关闭(home-mixer/candidate_pipeline/phoenix_candidate_pipeline.rs:475-481)。旧版的 RankingScorer 已删除。 |
打分与排序 |
| 多行为预测 | 排序模型同时预测用户在单条帖子上点赞、回复、转发、停留、举报等多种行为的概率。home-mixer 取用 29 个预测字段。 | Phoenix 排序模型 |
| 加权打分 | 系统把各行为的预测概率乘以权重再求和,共 30 项(xai-value-model/scoring.rs:79-218)。权重乘的是预测概率,不是帖子收到的互动次数。 |
打分与排序 |
| 价值模型(value model) | 加权打分及其后处理的统称。价值模型分 = 加权求和 + 作者探索奖励 + 新作者扶持 + 作者多样性 × 站外降权(vm-ranker/scoring/value_model.rs:159-219)。 |
VM Ranker 重排服务 |
| vm-ranker | 计算最终分的独立服务。VMRanker 打分器把候选和 Phoenix 预测发给它;它算价值模型分,再做 DPP。调用失败时,home-mixer 用本地加权分加新作者扶持兜底。 |
VM Ranker 重排服务 |
| DPP | 行列式点过程(determinantal point process)。vm-ranker 用帖子嵌入的相似度,从前 150 条里挑出最多 50 条“分高且彼此不相似”的帖子;入选者保留原分,其余分数置 0(vm-ranker/scoring/dpp_model.rs:196-206)。启动参数 --dpp-enabled 代码默认值为 false。 |
VM Ranker 重排服务 |
| 负反馈 | 降低排名的行为预测,包括不感兴趣、拉黑作者、静音作者、举报帖子和未停留。它们的权重为负。 | 打分与排序 |
| 作者多样性 | 同一作者每多出现一条,分数乘一个递减系数:第 k+1 条乘 (1-0.25)·0.5^k + 0.25(vm-ranker 代码默认值),防止单作者刷屏。 |
打分与排序 |
| 站外降权(OON) | 站外帖在加权打分后乘以 0.75(vm-ranker 代码默认值)。关注者发的回复和转发默认也乘 0.75,只有关注者的原创帖不降权(vm-ranker/params.rs:193-222)。 |
打分与排序 |
| 新作者扶持 | 每次请求最多选一条低曝光的新作者原创帖,抬到第 16 名的分数。条件包括作者粉丝不超过 50000、帖龄不超过 7200 秒、首页曝光少于 200(home-mixer/params/param.rs:608-681)。 |
打分与排序 |
| 双向关注加成 | 作者与你互相关注、且帖子是原创时,回复权重加 15.0,从 5.0 变为 20.0(home-mixer/params/param.rs:411-416)。停留加成默认 0.0。 |
打分与排序 |
| 候选隔离 | 排序模型通过注意力掩码阻断候选帖子之间的注意力,使单条候选的分数只取决于该帖子与用户自身特征,支持独立打分与缓存。 | 候选隔离注意力掩码 |
模型与 AI 类
| 术语 | 释义 | 详见 |
|---|---|---|
| Grok | xAI 开发的大语言模型。早期开源版的 Phoenix 附带从 Grok-1 移植的示例 transformer;当前仓库发布的是 Phoenix 生产实现本身(phoenix/README.md:9-21)。Grox 的分类器按任务调用 Grok 型号或 Gemma 系列。 |
Grok Transformer 骨架 |
| transformer | 基于自注意力机制的深度学习架构。Phoenix 的排序与召回模型共用一个 transformer 骨架,编码用户历史互动序列。 | Grok Transformer 骨架 |
| 双塔模型 | 召回阶段采用的模型结构。用户塔把用户映射为向量,候选塔把帖子映射为向量,系统通过向量相似度检索候选。生产配置的候选塔用语义 ID 加作者哈希表示帖子。 | Phoenix 召回:双塔检索架构 |
| 嵌入(embedding) | 稠密向量表示。系统将用户、帖子或词映射为固定维度的浮点数向量,用于比对相似度。 | 哈希嵌入 |
| 哈希嵌入 | 实体容量压缩技术。实体编号规模过大时,系统通过哈希映射到固定大小的嵌入表槽位。生产召回已不查帖子 ID 嵌入;排序仍保留帖子与用户哈希嵌入。 | 哈希嵌入 |
| 语义 ID(SID) | 由帖子多模态嵌入量化出的离散编码,6 层、每层 256 个码(phoenix/README.md:110-115)。同主题帖子共享 SID 前缀,新帖不需要积累互动就能得到可用的向量。 |
Phoenix 召回:双塔检索架构 |
| 互动序列 | 用户在系统内的有序行为记录(点赞、回复、转发、停留等),是模型判断用户兴趣的核心输入。 | Phoenix 排序模型 |
| 注意力 / attention | transformer 的核心计算机制。模型通过动态权重分配,在处理当前内容时聚焦用户历史中的关键交互。 | Grok Transformer 骨架 |
| MoE | Mixture-of-Experts(混合专家模型)。Phoenix 的 transformer 骨架使用普通前馈层,没有 MoE。home-mixer 另有一个名为“Phoenix MoE 召回”的候选源,开源默认关闭(home-mixer/params/param.rs:181-186)。 |
Grok Transformer 骨架 |
内容理解与广告类
| 术语 | 释义 | 详见 |
|---|---|---|
| Grox 分类器 | Grox 在帖子发布后运行的内容分类器。它们不再统一用视觉语言模型(VLM):按任务调用 Grok 型号或 Gemma 系列(grox/config/config.py:79-94);PTOS 类别检测在开源默认配置下优先调用 Gemma(grox/flows/ptos/classifier.py:122、:172),成人图片另有非大模型分类器 safemodel 参与仲裁。 |
Grox 内容分类器 |
| VLM | 视觉语言模型(Vision-Language Model),能够联合解析图像与文本。旧版 Grox 用 VLM_PRIMARY 等别名指代模型;这些别名已删除,改写具体模型型号。 |
Grox 内容分类器 |
| PTOS | 平台服务条款合规策略(Platform Terms of Service)。Grox 先判违规类别,再判具体策略类型,结果直接映射成帖子安全标签。 | Grox 内容分类器 |
| banger | 旧版 Grox 输出的质量分,已删除。分类器不再输出质量分,写入统一帖子注解时 qualityScore 固定为 1.0(grox/flows/upa/task_write.py:177)。 |
Grox 内容分类器 |
| 多模态嵌入 | 帖子多模态联合表征。Grox 把帖子的文本、图像信息统一映射到同一向量空间;v8 系列的输入还包含作者画像。 | 多模态帖子嵌入器 |
| 品牌安全 | 帖子与广告并列展示的适宜性裁定,共五档:未指定、安全、低风险、中风险、高风险(home-mixer/models/brand_safety.rs:7-14)。中风险与高风险帖子不能紧挨广告。 |
广告混排 |
| 广告混排 | 广告插入机制。系统把广告插入已排序的自然帖子流,开源默认策略为 multi_risk,共六种策略可选。 |
广告混排 |
可见性与标签类
| 术语 | 释义 | 详见 |
|---|---|---|
| 可见性过滤(visibility filtering,VF) | 决定一条帖子能不能展示给某位用户的服务。它读取标签和关系,不读模型预测分。home-mixer 在选出帖子后查询它(home-mixer/candidate_pipeline/phoenix_candidate_pipeline.rs:485-487)。 |
可见性过滤(Visibility Filtering) |
| 安全级别(safety level) | 可见性过滤的规则清单名。For You 用两个:站内候选用 TimelineHome,站外候选、祖先帖、被引用帖用更严格的 TimelineHomeRecommendations(home-mixer/candidate_hydrators/vf_candidate_hydrator.rs:70-106)。 |
可见性过滤(Visibility Filtering) |
| ALLOW / NOTICE / INTERSTITIAL / DROP | 可见性过滤的四种裁定:正常展示;展示并附提示;展示但加一层遮罩,用户点开才能看;不展示。内部对应 Verdict 的三个分支(visibility-filtering/models/verdict.rs:20-29)。home-mixer 只去掉 Drop 一类,带遮罩的帖子保留(home-mixer/filters/vf_filter.rs:22-27)。 |
可见性过滤(Visibility Filtering) |
| 账号标签 / 帖子标签 | 标签路径写下的安全标签。部分账号标签只在站外推荐中生效,例如 SpamHighRecall、DoNotAmplify:带这些标签的账号,帖子仍会给关注者看,但不推给非关注者(visibility-filtering/rules/levels.rs:65-72)。 |
可见性过滤(Visibility Filtering) |
| 标签路径 | 与请求路径并行、在后台持续运行的路径。内容理解模型和打标签规则给帖子和账号打标签,标签写入存储,供可见性过滤读取。 | 系统架构总览 |
| 申诉保护期 | 处置被申诉推翻后的一段保护时间。abuse-ledger-service 回答账号是否处在保护期;处置服务查询保护期的这道检查开源默认关闭(abuse-enforcement-service/service-lib/src/overturn_hold.rs:150-162)。 |
处置与标签聚合 |
| user-cred(user-cred-v2 分数) | 在关注图上跑 PageRank 得到的 0–100 账号分(user-cred-v2/UserCredV2.scala:10-19)。分数不低于 54 视为高 PageRank 账号,多数自动打标签规则豁免这类账号。 |
账号级信号(agatha、bdsm、user-cred-v2) |
| Under the Hood | 按月生成的标签透明度报告。账号注册满 365 天、且报告月内至少发 10 条帖子才有资格(under-the-hood/strato/columns/underTheHoodReport.User.strato:18-19)。报告只展示白名单内的 19 种帖子标签和 12 种账号标签。 |
Under the Hood 透明度报告 |
工程基础设施类
| 术语 | 释义 | 详见 |
|---|---|---|
| gRPC | 基于 HTTP/2 和 Protocol Buffers 的高性能 RPC 框架。home-mixer、Thunder 与 vm-ranker 服务均通过 gRPC 暴露接口。 |
home-mixer 编排层 |
| Kafka | 分布式流式事件总线。新发布帖子与用户互动事件实时写入 Kafka,Thunder 与 Grox 消费下游数据流。 |
Thunder Kafka 摄入 |
| 保留期(retention) | 内存数据生存周期。Thunder 只在内存中保留最近 172800 秒(2 天)内的帖子,过期数据自动淘汰(thunder/args.rs:48-49)。 |
Thunder Kafka 摄入 |
| side effect | 流水线非阻塞附加操作。系统在后台异步执行写入缓存、上报日志等任务,不阻塞推荐结果交付。 | candidate-pipeline 框架与七个组件 trait |
出处
本表术语提炼自系统各技术文档,不引入未经源码支持的定义。每个“详见”链接的技术文档均标注了 文件:行号 源码锚点。术语的精确语义以技术文档和源码实现为准。
| 术语 | 主要源码 |
|---|---|
| 打分器 | home-mixer/candidate_pipeline/phoenix_candidate_pipeline.rs:475-481 |
| 加权打分 | xai-value-model/scoring.rs:79-218 |
| 价值模型 | vm-ranker/scoring/value_model.rs:159-219 |
| DPP | vm-ranker/scoring/dpp_model.rs:196-206、vm-ranker/params.rs:253-259 |
| 站外降权 | vm-ranker/params.rs:193-222 |
| 新作者扶持 | home-mixer/params/param.rs:608-681 |
| 双向关注加成 | home-mixer/params/param.rs:411-416 |
| 语义 ID | phoenix/README.md:110-115 |
| banger 已删除 | grox/flows/upa/task_write.py:177 |
| 安全级别 | home-mixer/candidate_hydrators/vf_candidate_hydrator.rs:70-106 |
| 四种裁定 | visibility-filtering/models/verdict.rs:20-29 |
| 申诉保护期 | abuse-enforcement-service/service-lib/src/overturn_hold.rs:150-162 |
| user-cred | user-cred-v2/UserCredV2.scala:10-19 |
| Under the Hood | under-the-hood/strato/columns/underTheHoodReport.User.strato:18-19 |