見せるか、見せないか
ランキングとは別の仕組み。可視性フィルタはRustで書き直され、答えは4種類になった。
この章で分かること
- 可視性の答えの種類と、点数との関係が分かる
- フォロワーには見えるがフォロー外には出ない構造が分かる
- 公開コードで分かることと分からないことを区別できる
ここまでは全部「順番」の話でした。この章は「そもそも見せていいか」の話です。今回の更新で、可視性フィルタはRustの新しい実装に移行しました。
答えは4種類
| 結果 | 意味 |
|---|---|
| ALLOW | 普通に表示する |
| NOTICE | 投稿に注記を付けて表示する(今回READMEに追加) |
| INTERSTITIAL | 警告を挟んで表示する(タップで見られる) |
| DROP | 表示しない |
二段構えのルールセット
Home向けのルールは2段です。テストで、推薦向けの一覧はフォロー中向けの一覧から始まることが固定されています。levels.rs:482-488
- TimelineHome(39本) ── フォロー中の投稿に適用
- TimelineHomeRecommendations(66本) ── フォロー外の投稿に適用。上の39本に、27本を追加
だから、同じラベルが付いていても、こうなります。levels.rs:296-357
| ラベルや条件 | フォロー中の投稿 | For Youのフォロー外 |
|---|---|---|
スパム疑い(SPAM_HIGH_RECALL) | 表示される | 落とす |
悪質URL(MALICIOUS_URL) | 表示される | 落とす |
| NSFWの投稿ラベル(高精度) | 警告つき | 落とす |
| NSFWのアイコン・バナー | 表示される | 落とす |
侮辱(FOSNR_ABUSE_INSULTS) | 表示される | 落とす |
| 地域制限メディア | 表示される | 落とす |
選挙関連(BRAZIL_ELECTION_LEGAL) | 表示される | ブラジルからのときだけ落とす |
フォロー中の投稿でも落ちるのは、SPAM / PDNA / BOUNCE / 緊急用ラベルと、FOSNR 系の4種(ヘイト行為・暴力的発言・嫌がらせ・市民的誠実性)です。法的な取り下げなどもあります。FOSNR 系は、Under the Hood の文言では「発見可能性が作者のプロフィールに限定される」と説明されています。
どういう場合にラベルが付くか
| 条件(公開ルールから) | 結果 |
|---|---|
| NSFW判定0.95以上の画像 | 投稿にラベル IsHighPrecisionNsfwNewModelLogic.df:3-4 |
| NSFW画像を1日に3件超 | アカウントにラベルが付く経路 ApplyNsfwUserLabel.df:30-37 |
| 直近5投稿のうち3件がNSFW高精度判定 | 同上(7日間)postToUserLabelRules.strato:396-409 |
| Grokがスパム判定した返信(0.97以上) | 投稿にラベル(14日)GroxTweetProcessor.bot:8 |
llm_slop_post の判定 | 投稿に RiskyHighVizReply(30日)enforcement_post.yaml:39-44 |
gibberish_post の判定 | 投稿に SpamHighRecall(30日)enforcement_post.yaml:46-51 |
fast_reply_spam_post の判定 | 投稿に SpamHighRecall(30日)enforcement_post.yaml:53-58 |
llm_slop_user の判定 | アカウントに SpamHighRecall(7日)enforcement_user.yaml:118-123 |
| 協調キャンペーンの判定 | 投稿・アカウントへのラベル、または凍結(一般は perm: false、CSEは perm: true)enforcement_user.yaml:36-45 |
スパム分類の名前
Grokの分類には、スパムの細分類が11種類あります。今回 SpamManipulatedMedia が増えました。state.py:37-47
SpamEngagementFarming── エンゲージメント稼ぎSpamEngagementBaiting── エンゲージメント誘導SpamEngagementTrading── 反応の取引SpamHashTagAbuse── ハッシュタグ乱用SpamMentionAbuse── メンション乱用SpamBotProduced── ボット生成SpamPlatformManipulation── プラットフォーム操作SpamManipulatedMedia── 改変メディア(今回追加)SpamScamLinks/SpamFinancialScam/SpamCardManipulation
保護の条件もある
| 条件 | 効果 |
|---|---|
| 信用スコアが54以上(botmaker) | IsHighPageRankUser が真になり、一部の自動ラベルの扱いが変わる HighPageRankThreshold.df:2 |
| スコアが取れない場合、フォロワー25,000人超 | 同上 IsHighPageRankUser.df:11-18 |
| 自動執行サービスの信用チェック | 基準を超えるとスキップ。公開ファイルの閾値は本番と違う仮の値です enforcement_user.yaml:26-33 |
この「信用スコア」は、フォローの繋がりをたどるPageRank系の計算で作られます。READMEは「フォローグラフとエンゲージメントのエッジ」と説明しています。README.md:318 同じ投稿をしてもアカウントによって扱いが違う理由の1つです。
年齢と地域
- ログアウト状態の閲覧者には表示しないルールがあります
- 18歳未満には表示しないルールがあります
- 年齢未申告 かつ 既定リストの16カ国のいずれかの閲覧者にも表示しないルールがあります(アルゼンチン、オーストラリア、ブラジル、カナダ、ドイツ、スペイン、フランス、イギリス、インドネシア、イタリア、韓国、メキシコ、オランダ、フィリピン、ポルトガル、タイ)params.rs:83-86
閲覧者が「センシティブなメディアを表示する」設定にしていれば、Home向けの多くの警告(ぼかし)は出ません。tweet_rules.rs:456-465 ただし、推薦から外れるルールはこの設定とは別です。
自分のラベルを確認する、異議を申し立てる
Xは「Under the Hood」という開示ツールを試験的に公開しています。条件はアカウント作成から1年以上、前月に10投稿以上、月末から10日後に反映です。underTheHoodReport.User.strato:18-22 READMEにリンクがありますが、機能スイッチの既定はオフなので、対象の方でもまだ見られない場合があります。README.md:470 params.strato:15-16