TGViewer
گاه‌نامه گاه‌نامه @mirage_notes · 374 subscribers
Post #349 2.72K
💳 الگوریتم پلتفرم X هم Open Source شد

در ادامه‌ی open-source شدن پروژه‌های xAI ایلان ماسک، الگوریتم خود توئیتر هم پابلیک شد. البته به‌خصوص ranking algorithmش خیلی دیده شده و این‌جا کوتاه درباره‌ش می‌نویسم.


ریپازیتوری رسمی xai-org/x-algorithm بخش اصلی کدی رو منتشر کرده که For You feed رو می‌سازه، candidateها رو میاره، فیلتر می‌کنه، score می‌ده و بعد دوباره با visibility filtering چک می‌کنه. ولی README خود repo می‌گه چند چیز هنوز داخل repo نیست، مثلا promptهای Grox و بعضی ruleهای botmaker.

حالا مسیر بخش For You تقریبا این شکلیه:

🔻 اول query hydration انجام می‌شه، یعنی سیستم از viewer اطلاعات جمع می‌کنه: تعامل‌های اخیر، لیست following، mute و block، muted keywords، پست‌هایی که قبلا دیده یا بهش serve شده، topicها و چند چیز دیگه.

🔺 بعد candidateها از چند منبع میان. سرویس Thunder پست‌های recent از آدم‌هایی که دنبال می‌کنید رو میاره. مدل‌های Phoenix و SimClusters هم برای out-of-network استفاده می‌شن، یعنی پست‌هایی از آدم‌هایی که دنبال نمی‌کنید. حالا تعداد هر کدوم از از نتایج این مدل‌ها چندتاست؟ در کد فعلی `ThunderMaxResults = 1200`هست، ولی `PhoenixMaxResults = 1000`هست، و SimClusters هم منبع جداست.

🔹 بعد pre-filterها میان. AgeFilter با MAX_POST_AGE = 48 * 60 * 60 پست‌های قدیمی‌تر از ۴۸ ساعت رو حذف می‌کنه. تازگی پست خیلی تو feed مهمه، برا همین مثلا بعیده که تو feed خودتون پست‌های قدیمی‌تر از ۲ روز اخیر ببینید.

🔺 بعد هم مدل Phoenix برای هر candidate احتمال چند action رو پیش‌بینی می‌کنه: like، reply، repost، quote، share، share via DM، copy link، کلیک، dwell، follow author و سیگنال‌های منفی مثل not interested، mute، block و report.

و خب این بخش رو خیلی دوست داشتم، در عکس‌های پست هم می‌تونید وزن‌های مربوط به هر کدوم ازین actionها رو ببینید.


این‌جا RankingScorer همه این probabilityها رو با وزن‌ها قاطی می‌کنه. فرمول پایه اینه

Final Score = sum(weight_i * P(action_i))


عددهای جالب توجه این موارد هستن:

Like Weight = 0.5
Reply Weight = 5.0
Quote Weight = 5.0
Share Weight = 2.0
ShareViaDm Weight = 5.0
ShareViaCopyLink Weight = 20.0
FollowAuthor Weight = 4.0


از نظر وزن خام، reply ده برابر like حساب می‌شه، و copy link چهل برابر like. اما این مورد هم مهمه که این وزن‌ها مستقیم روی احتمال action ضرب می‌شن. یعنی الگوریتم نمی‌گه هر بار کسی لینک رو کپی کرد دقیقا ۴۰ تا like گرفتید. می‌گه اگر مدل احتمال بده viewer این پست رو copy link می‌کنه، همون احتمال با وزن ۲۰ وارد score می‌شه.

سمت منفی ماجرا حتی تندتره:

NotInterested Weight = -43.2
BlockAuthor Weight = -31.2
MuteAuthor Weight = -58.8
Report Weight = -234.0


اگر فقط نسبت خام بگیریم، report نسبت به like حدود ۴۶۸ برابر وزن منفی داره. ولی باز هم نباید اینو خیلی عامیانه بخونیم. چون اینجا probability، normalization و offset score هم دخیلن. معنی فنی‌ترش اینه که مدل وقتی احتمال report یا mute رو جدی ببینه، score می‌تونه خیلی سریع ضربه بخوره.

❤ جذاب‌ترین بخش برای من bidirectional follow boost بود. کد در bidirectional_follow_hydrator.rs می‌بینه آیا من نویسنده پست رو follow دارم و آیا اون هم من رو follow داره یا نه. بعد ranking_scorer.rs فقط برای original postهایی که reply یا retweet نیستن، اگر mutual follow برقرار باشه، وزن reply رو boost می‌کنه.

🔗 https://en.rattibha.com/thread/2087981370685735418
🔗 https://github.com/xai-org/x-algorithm

✈️ @Mirage_Notes
  • 👌 4
More from @mirage_notes
  1. Oct 15, 2026⭐️ مهراد هیدن و اعتیاد سالم به ساختن این اپیزود طبقه ۱۶ با مهراد هیدن برای من بیشتر از این…
  2. Oct 14, 2026⭐️ کار عمیق با تصمیم شنبه‌ای ساخته نمی‌شه این ویدیوی Bplus درباره Deep Work کال نیوپورته و…
  3. Oct 13, 2026⭐️ مهندس انویدیا و وسواس اتومات کردن چیزهای تکراری این اپیزود طبقه ۱۶ با مهرزاد صمدی از او…
  4. Oct 12, 2026⭐️ حواس‌پرتی فقط تقصیر گوشی نیست این ویدیوی Bplus درباره حواس‌پرتیه و از کتاب Indistractab…
  5. Oct 11, 2026⭐️ مهراب قاسم‌خانی، کمدی و چیزی که به اسم رویاپردازی گم کردیم این دو قسمت BFE Talk با مهرا…
  6. Oct 10, 2026💬 Casino 📍 Las Vegas 💙 این ویدیو رو از لابی هتل‌مون تو وگاس گرفتم. وگاس پر از هتله، و ت…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →