Описание: X раскрыла формулы алгоритма рекомендаций. Изучаем реальные коэффициенты ранжирования, бонусы для новых авторов и механизмы видимости контента.
Алгоритм ленты X перестал быть закрытым. Социальная сеть опубликовала на GitHub исходный код системы рекомендаций, включая модель Phoenix, коэффициенты ранжирования, фильтры видимости и правила отбора публикаций для показа незнакомым пользователям. Последний релиз содержит значительно больше информации, чем предыдущие версии, раскрывая многие загадки алгоритма X.
В августе 2026 года компания добавила рабочие коэффициенты сигналов, код фильтрации контента, системы определения спама и полную версию модели Phoenix. Предыдущие публикации содержали только демонстрационные версии. Теперь в репозитории находится production-код, используемый для обучения и обслуживания Phoenix, включая модели на JAX, обучающий код и серверную часть на Rust. Разработчики добавили синтетические данные и уменьшенные конфигурации для экспериментов без внутренней инфраструктуры X. Код распространяется под лицензией Apache 2.0.
Персональная лента перестраивается при каждом обновлении. Система Thunder находит свежий контент от подписок. Phoenix и SimClusters ищут публикации вне круга подписок, сначала сокращая миллионы кандидатов до небольшой выборки. Затем модель прогнозирует реакцию пользователя на каждую публикацию: вероятность лайка, комментария, репоста, цитирования, переходов, открытий медиа, подписки на автора, отправки в сообщения, копирования ссылки и других действий.
После расчётов вероятностей X преобразует их в общий рейтинг через систему коэффициентов. Базовый коэффициент лайка равен 0,5, репоста — 1, обычного шаринга — 2, комментария — 5, цитирования — 5, отправки в сообщения — 5, подписки на автора — 4. Самый высокий коэффициент получила отправка публикации через скопированную ссылку — 20. Переход по публикации оценивается в 0,4, переход по внешней ссылке — в 0,2, открытие медиа — в 0,05. Получается, вероятность копирования ссылки влияет на алгоритм в 40 раз сильнее, чем лайк.
Отрицательные сигналы имеют намного большие коэффициенты. «Не интересно» — это −43,2, блокировка автора — −31,2, скрытие публикаций автора — −58,8, жалоба — −234. Разработчики уточнили, что коэффициенты умножаются не на реальное количество лайков или жалоб, а на вероятность этих действий. Вероятность жалобы в тысячу раз ниже вероятности лайка, поэтому система использует большой отрицательный коэффициент. Массовые жалобы не работают как кнопка для удаления контента, влияя в первую очередь на рекомендации людям с похожим поведением.
После основного расчёта X дополнительно корректирует позиции. Публикации одного автора постепенно получают понижающий коэффициент, чтобы лента не была заполнена одним аккаунтом. Каждое следующее появление того же автора получает множитель 0,5, но не ниже 0,25. Материалы незнакомых авторов получают коэффициент 0,75. Отдельная система переставляет публикации для разнообразия ленты, немного жертвуя математическим рейтингом.
В коде присутствует механизм поддержки молодых авторов. New-Author Boost поднимает публикации с малым числом показов к целевой позиции. Текущие параметры включают порог в 1000 показов, лимит в 1000 подписчиков, максимальный возраст публикации 24 часа и целевую область около 15-16 позиции. Логика сложнее простого дарования охвата новичкам, так как часть параметров зависит от экспериментов, но механизм продвижения малоизвестных авторов теперь виден в исходном коде.
До ранжирования система удаляет дубликаты, старые публикации, повторные показы, материалы от заблокированных аккаунтов, контент с заглушёнными словами и закрытый для незнакомцев материал. Система Visibility Filtering работает с метками безопасности: спам, вредоносные ссылки, NSFW-контент и другие категории остаются доступными подписчикам, но не показываются незнакомцам в рекомендациях. Это объясняет ситуации, когда автор видит свою публикацию, но приток новых просмотров внезапно прекращается.
X различает множество категорий контента: спам, вредоносные ссылки, сексуальный контент, жестокие изображения, оскорбления, разжигание ненависти, насилие, нарушения гражданской добросовестности, скомпрометированные аккаунты и подражание. В коде даже сохранилась метка FOR_EMERGENCY_USE_ONLY для чрезвычайных ситуаций. Публикации с такой меткой показываются с предупреждением и не попадают в ленту.
X запустила экспериментальный инструмент Under the Hood, позволяющий участникам выгрузить статистику по меткам, применённым к аккаунту за последний месяц. Пилот охватывает случайные группы аккаунтов возрастом не менее года с минимум десятью публикациями в месяц. Инструмент показывает, накладывала ли система ограничения, но не отображает полную историю каждой публикации.
Августовская публикация раскрыла и другие источники данных. Конфигурация включает контекстные признаки, геолокацию, информацию об установленных приложениях и предполагаемый пол пользователя. Используются явные и неявные сигналы вовлечённости. Наличие этих параметров показывает возможности системы, но не доказывает их прямое влияние на каждый рейтинг.
Система не стала полностью открытой. X не публикует промты Grok и некоторые правила Botmaker, чтобы спамеры не смогли подстраиваться. Закрыта и внутренняя инфраструктура: production-потоки данных, оркестрация и телеметрия. Некоторые системы определения нарушений остались закрытыми. Поэтому репозиторий позволяет понять путь публикации через рекомендации, но не воспроизводит весь X.
Значения в GitHub нельзя считать вечными правилами. X проводит постоянные эксперименты, а часть параметров приходит из внутренней системы. Компания хочет отражать заметные эксперименты (примерно от 10% трафика) в открытом репозитории, периодически синхронизируя значения. Файл с коэффициентами содержит отметку синхронизации 12 августа 2026 года. Поэтому выводы о вечных правилах быстро становятся псевдонаукой. X может менять коэффициенты без изменения архитектуры.
История публикации алгоритма оказалась менее регулярной, чем обещал Илон Маск. В январе он говорил об ежемесячных обновлениях с подробными заметками разработчиков. История репозитория показывает коммиты 20 января, 15 мая и затем 13-14 августа. Ежемесячного ритма не получилось, но августовский выпуск содержит в 10-15 раз больше информации, чем предыдущие версии.
Главный практический вывод из кода прост: X прогнозирует не количество реакций, а ценность публикации для конкретного человека. Лайк — сравнительно слабый сигнал. Комментарии, цитаты, личные отправки, новые подписки и копирование ссылки система ценит намного выше. Желание скрыть автора или пожаловаться резко снижает прогнозируемую ценность. Охват зависит не только от рейтинга. Отдельный слой правил может оставить публикацию видимой для подписчиков, но перекрыть рекомендации незнакомцам. Это разделение ранжирования и видимости превращает код из красивой схемы в подробную инструкцию по определению судьбы каждого поста.
