01 它是干嘛的
信息流是 Facebook 与 Instagram 的核心界面:你一打开就看到的这一屏,内容与顺序都不是固定的,而是由一套推荐系统实时算出来的。它要在一瞬间从海量候选里挑出你可能最感兴趣的一批,排好先后再送到你眼前,目标是让你愿意多停留、多互动。
02 为什么会有它
在信息流出现之前,你得挨个推开每个朋友的门
早期的社交网站没有「一进来就有内容」这回事。你想看朋友最近怎么样,得一个个点进他的个人主页去看,朋友多的人根本看不过来,很多动态就此被错过,用户之间反而越来越疏远。
2006 年前后 Facebook 推出信息流,把好友的新动态自动汇总到首页一屏里。刚上线时还引发了不小争议,很多用户觉得「我的一举一动怎么被自动播报出去了」,有人甚至抗议。但用过之后大家发现,这才是不用费劲就能知道朋友们在做什么的方式,于是这种形态被全世界效仿,成了所有社交应用的标配。
当好友和内容越来越多,新问题来了:一屏只有几十个位置,而候选内容有成千上万条,谁来排、按什么排?于是「推荐系统」登场,信息流从「按时间先后列出」逐渐变成「按你有多可能感兴趣来排」,这也正是后来一系列争议的源头。
03 它怎么工作
系统不可能把成千上万条候选都仔细算一遍,所以分两层:先用便宜的办法快速圈出一小批可能相关的(召回),再用贵的模型给这一小批逐个打分排序(排序),最后做多样性打散,避免整屏都是同一类内容。
这一屏内容是怎么被挑出来并排好顺序的:召回、排序、打散
- 1① 候选召回:先圈出一小批
从三个来源快速捞人:你关注的人发的内容、和你最近看过相似的内容、以及平台上的热门内容池。这一步只求快、只求覆盖,不求精。
- 2② 排序打分:预测你会不会互动
给召回来的每一条算一个分数,模型预测你对它点赞、评论、停留、转发的概率各有几何,再按这些概率综合出一个排序分。
- 3③ 按分数排队
分数高的排前面。这一步直接决定了你会先看到什么,也是各家平台算法最核心的机密。
- 4④ 多样性打散
如果前十条全是同一个人的动态或同一类内容,会让人看腻。系统会插入不同类型、不同来源的内容,把整屏的观感拉开。
- 5⑤ 返回并收集反馈
内容送到你眼前,你的每一次停留、点赞、划走都成为新数据,被记录回模型,影响下一次的排序,形成不断自我调整的循环。
04 谁在用它
普通用户打开应用看朋友、关注者的近况,系统按兴趣而非纯时间顺序排列。
图文、短视频作者依靠推荐把作品推给可能感兴趣的人,而不是只靠粉丝订阅。
信息流里插入的广告同样走这套排序逻辑,按你可能的反应决定插在哪、插什么。
短视频的上下滑形态是信息流的极端版本,几乎完全由推荐决定你接下来看什么。
05 怎么用
对普通用户来说只是打开就用;对开发者而言,需要通过官方接口取回主页动态等数据,且要经过权限审核。
- 01在开发者平台注册应用,明确你要读取的数据类型。
- 02申请所需权限,很多涉及用户数据的权限需要提交审核并说明用途。
- 03让用户用账号登录并授权,拿到访问令牌。
- 04调用接口取回动态、评论等数据,注意分页以免一次拉取过多。
- 05遵守平台的数据使用条款,处理好用户撤销授权后的数据删除。
# 通过 Graph API 读取某个主页的公开动态
curl -G "https://graph.facebook.com/v21.0/<PAGE_ID>/feed" \
-d "fields=message,created_time,likes.summary(true)" \
-d "access_token=<ACCESS_TOKEN>"避坑提示
- !接口权限收紧频繁,动手前先确认当前可用的权限范围与审核要求。
- !务必做分页与限流处理,一次性拉全量数据既慢又容易被限。
- !用户数据受严格保护,收集与存储都要合规,并支持用户撤回与删除。
06 关键概念
- 召回
- 用便宜快速的方法,从海量内容里先圈出一小批可能相关的候选,保证不漏掉大概率的兴趣点。
- 排序
- 对召回的一小批内容逐个精细打分,按预测的互动可能性决定谁排前面。
- 互动率优化
- 模型以「你会不会点赞评论停留」为目标来排内容,因此更容易推给你能激发情绪的东西。
- 信息茧房
- 长期只看被推荐的同类型内容,视野越缩越窄,只看到自己已经认同的观点。