Cyber News

X выложила ранжирование «Для вас» почти целиком: веса алгоритма в открытом коде и проверка теневого бана

M
Markabus
·
Тёмное рабочее место разработчика: крупный монитор с исходным кодом и цветной подсветкой синтаксиса, рядом панель с числовыми параметрами и второй экран с графиками

13 августа 2026 года X опубликовала крупное обновление репозитория xai-org/x-algorithm — того самого, где лежит код ленты «Для вас». По оценке TechCrunch, открытая кодовая база выросла примерно в 10–15 раз относительно предыдущих выкладок. Главное отличие от прошлых релизов: вместе с кодом наконец опубликованы числовые веса ранжирования — коэффициенты, которые превращают предсказания модели в итоговую позицию поста в ленте. Лицензия — Apache 2.0.

Параллельно в настройках приложения появился раздел «Under the hood» («под капотом»), из которого пользователь может выгрузить JSON с метками, применёнными к его аккаунту и постам за прошедший месяц. Проще говоря — инструмент, который отвечает на вопрос «меня что, шедоубанят?» не догадками, а данными платформы.

Что именно лежит в репозитории

Это не «алгоритм» одним файлом, а несколько взаимодействующих сервисов. По документации проекта лента собирается так:

  • Home Mixer — оркестратор. Он запускает конвейер: подтягивает контекст запроса, собирает кандидатов, обогащает их данными, прогоняет фильтры, считает оценки и выбирает финальный набор.
  • Thunder — in-memory хранилище (данные держатся в оперативной памяти ради скорости) свежих постов от аккаунтов, на которые вы подписаны. Это источник «in-network»-кандидатов.
  • Phoenix — поиск и ранжирование постов от тех, на кого вы не подписаны («out-of-network»), плюс сама модель-ранжировщик. Это трансформер; в документации предыдущих версий указывалось, что архитектура портирована из языковой модели Grok-1, а хендкрафтовые признаки и большая часть эвристик убраны в пользу обучаемого представления.
  • SimClusters — второй источник out-of-network-кандидатов, работающий на кластеризации сообществ.
  • Candidate Pipeline — каркас, на котором всё это собрано.

Отдельно от ранжирования работает система меток (labeling): она непрерывно анализирует аккаунты и контент и навешивает ярлыки, которые затем используются на этапе visibility-фильтрации. Важная деталь архитектуры: ранжирование и фильтрация видимости — разные вещи. Сначала пост может получить высокий скор, а потом быть срезан фильтром — или наоборот, спокойно пройти фильтры, но проиграть по скору.

Веса: сколько «стоит» каждое действие

Итоговая оценка поста считается по простой формуле, которую репозиторий приводит явно:

Final Score = Σ (weight_i × P(action_i))

Модель предсказывает вероятность каждого действия (лайк, ответ, репост, цитата, клик, дочитывание, а также негативные реакции), эти вероятности умножаются на коэффициенты и складываются. Сами коэффициенты лежат в файле home-mixer/params/param.rs. Вот ключевые из них.

Позитивные сигналы

  • Шеринг через «копировать ссылку» — 20,0
  • Ответ — 5,0; если автор и читатель подписаны друг на друга, к ответу добавляется бонус +15,0 (итого те же 20)
  • Цитата — 5,0; отправка в личные сообщения — 5,0
  • Подписка на автора после просмотра поста — 4,0
  • Обычный шеринг — 2,0
  • Репост — 1,0
  • Лайк — 0,5
  • Клик по посту — 0,4; переход по внешней ссылке — 0,2
  • Раскрытие фото или запуск видео — 0,05
  • Клик по профилю и время «залипания» (dwell) — 0,0, то есть в текущей конфигурации не влияют

Негативные сигналы

  • Жалоба (report) — −234,0
  • Мьют автора — −58,8
  • «Не интересно» — −43,2
  • Блокировка автора — −31,2

Первое, что бросается в глаза: лайк — самый дешёвый из «настоящих» сигналов, а платформа явно поощряет то, что стоит человеку усилий и репутации — развёрнутый ответ, цитату, отправку поста знакомому в личку. Второе: негативные веса на два порядка больше позитивных. Это не случайность, а сознательная асимметрия — модерационный сигнал должен перебивать шум вовлечённости.

Почему «один репорт = 468 лайков» — неверное прочтение

Как только веса разошлись по сети, появилась эффектная арифметика: −234 делим на 0,5 — получаем, что одна жалоба стирает 468 лайков. Разработчики X специально добавили в документацию августовского обновления оговорку: веса умножаются на предсказанные вероятности, а не на количество событий. Модель не считает, сколько лайков собрал пост, — она оценивает, с какой вероятностью конкретный читатель совершит каждое действие. Поэтому «−234» не вычитается из накопленных лайков; он умножается на вероятность жалобы, которая для нормального поста близка к нулю и заметной становится только для контента, который модель и так считает проблемным.

Практический вывод из этого спокойнее, чем вирусная формула: одна жалоба от случайного читателя не «убивает» пост. Но если модель видит, что для вашей аудитории вероятность жалоб, мьютов и «не интересно» устойчиво повышена, отрицательный вклад начинает доминировать — и вытащить это лайками действительно почти невозможно.

Помимо самой суммы, к оценке применяются три корректировки: затухание для автора, который часто попадается в одной ленте (author diversity decay), понижающий множитель для постов не из подписок и, наоборот, бустинг показов для новых авторов.

«Under the hood»: как проверить метки своего аккаунта

Вторая часть релиза — инструмент прозрачности в самом приложении. В настройках появился раздел «Under the hood», где можно выгрузить JSON-файл с агрегированной статистикой: какие метки применялись к аккаунту и его постам за прошлый календарный месяц. Условия на момент запуска:

  • нужно не менее 10 постов за последний месяц;
  • пилот раскатывают на аккаунты, зарегистрированные не менее года назад, полный доступ обещают позже.

Файл — машинный, читать его вручную неудобно. X прямо предлагает нетехническим пользователям скормить JSON языковой модели вместе с ссылкой на репозиторий и попросить объяснить. Вице-президент по продукту Кит Коулман сформулировал цель так: пользователь должен получить ответ на вопросы «меня шедоубанят?» и «почему я вижу этот пост?». По его словам, «люди будут довольно шокированы тем, что мы это выкладываем».

Что осталось закрытым

Полной прозрачности не случилось, и компания этого не скрывает. Не опубликованы:

  • промпты, по которым Grok классифицирует контент и предсказывает нарушения правил — их придержали, чтобы модерацию не обходили;
  • часть правил botmaker;
  • обученные веса самой модели и обучающие данные — в репозитории есть код обучения и генератор синтетических данных для proof-of-concept, но не боевая модель.

Стоит помнить и историю вопроса: первый выпуск кода состоялся в январе 2026 года, но тогда числовых коэффициентов в нём не было — именно их отсутствие критиковали исследователи. Промежуточное обновление вышло в мае. Августовский релиз закрывает главную претензию, хотя вопрос интеграции рекламы в ранжирование по-прежнему документирован слабо.

Почему это важно

Для разработчика рекомендательных систем это редкий случай, когда продакшен-конвейер крупной платформы можно читать целиком, а не по научным статьям: видно, как устроен candidate sourcing, где стоят фильтры, как разнесены ранжирование и visibility, как выглядит конфигурация весов в реальном сервисе. Репозиторий уже собрал около 27,5 тыс. звёзд и 4,7 тыс. форков, а внешние исследователи, по данным TechCrunch, сумели самостоятельно запустить скоринг Phoenix.

Для тех, кто ведёт аккаунты компании или проекта, ценность практическая. Веса дают приоритеты, которые раньше приходилось угадывать: ответы и пересылки в личку весят кратно больше лайка, внешняя ссылка приносит совсем немного, а любой контент, провоцирующий жалобы и мьюты, обходится дороже, чем кажется. А инструмент выгрузки меток впервые превращает разговор о теневом бане из области ощущений в проверяемый факт.

Не менее важен и прецедент. Публикация коэффициентов — это добровольная сдача части «коммерческой тайны» ради проверяемости: теперь заявления платформы о нейтральности ленты можно сверять с кодом. В августовское обновление, к слову, попал и код фильтрации, связанный с соблюдением требований к выборам в Бразилии — то есть регуляторная логика тоже стала видимой. Насколько за этим последуют другие площадки — вопрос открытый, но планка прозрачности поднялась.

Частые вопросы

Q.Где посмотреть сами веса ранжирования?

В открытом репозитории xai-org/x-algorithm на GitHub, файл home-mixer/params/param.rs. Там лежат константы вроде FavoriteWeight (0,5), ReplyWeight (5,0), ShareViaCopyLinkWeight (20,0) и негативные — ReportWeight (−234,0), MuteAuthorWeight (−58,8), NotInterestedWeight (−43,2), BlockAuthorWeight (−31,2). Код опубликован под лицензией Apache 2.0.

Q.Правда ли, что одна жалоба перекрывает 468 лайков?

Нет, это неверное прочтение. Веса умножаются на предсказанную моделью вероятность действия, а не на число реальных событий. Разработчики добавили эту оговорку прямо в документацию августовского обновления. Отрицательный вес становится значимым, только когда модель считает вероятность жалоб и мьютов для конкретного показа реально высокой.

Q.Как проверить, есть ли на моём аккаунте метки?

В настройках приложения появился раздел «Under the hood», откуда можно выгрузить JSON с метками, применёнными к аккаунту и постам за прошлый календарный месяц. Нужно минимум 10 постов за месяц; на старте функцию раскатывают на аккаунты старше года. Файл можно разобрать самостоятельно или передать языковой модели вместе со ссылкой на репозиторий.

Q.Что осталось закрытым?

Промпты, по которым Grok классифицирует контент и предсказывает нарушения правил, часть правил botmaker, а также обученные веса модели и обучающие данные. В репозитории есть код обучения и генерация синтетических данных, но не боевая модель. Интеграция рекламы в ранжирование по-прежнему задокументирована слабо.

Источники

←
Предыдущая
Tensor G6 в Pixel 11 оказался 3-нанометровым: Google не стала первой на 2 нм, но прибавила 50% к ИИ-ускорителю
Следующая
Firefox для iOS получил встроенный блокировщик рекламы — но рекламу в поиске он не трогает
→

Читайте также

Макет промышленного кампуса на столе архитектора и медная труба, обрезанная и заглушенная, не доходя до зданий, — иллюстрация к новости о задержках Project Jupiter. Иллюстрация, изображение сгенерировано ИИCyber News
25 сентября 2026 г.

Oracle заявила форс-мажор по дата-центру Stargate в Нью-Мексико: ИИ-кампусу на 2,45 ГВт не хватает газа

Oracle направила застройщику Project Jupiter уведомление о форс-мажоре: кампус Stargate для OpenAI на 2,45 ГВт ждёт газопровод и экологическое разрешение. Разбираем, что случилось и почему энергия стала главным ограничителем ИИ.

Читать →
Фотореалистичный кадр технического помещения: ряд из пяти одинаковых серых металлических шкафчиков, на четырёх висят латунные навесные замки, а у ближнего проушина пустая и дверца приоткрыта, внутри видны папки с бумагами, на полу лежит латунный ключ — иллюстрация к новости о критической уязвимости CVE-2026-87902 в ядре WordPress.Cyber News
24 сентября 2026 г.

Критическая дыра в ядре WordPress: CVE-2026-87902 позволяет подключить чужой PHP-файл без авторизации

WordPress выпустил внеплановый релиз 7.1.2 и бэкпорты до 4.7.37: ошибка в get_page_template() десять лет позволяла неавторизованному посетителю подключить произвольный PHP-файл вне темы, а при двух совпавших условиях — выполнить код на сервере.

Читать →
Фотореалистичный кадр вечернего рабочего стола сбоку: в центре деревянные шахматные часы с поднятым флажком, по краям стола лицом друг к другу два одинаковых ноутбука с терминалами, в которых работают ИИ-агенты, перед часами бумажная лента калькулятора с цифрами, часть строк перечёркнута красной ручкой — иллюстрация к новости о выходе Claude Opus 5.5 и GPT-6 Sol и Luna в один день.Cyber News
23 сентября 2026 г.

Anthropic и OpenAI выпустили флагманы в один день: Opus 5.5 против GPT-6 Sol и Luna

22 сентября 2026 года Anthropic и OpenAI с разницей примерно в полтора часа выпустили новые модели — Claude Opus 5.5 и пару GPT-6 Sol / Luna. Обе компании сделали ставку не на интеллект, а на цену: минус 20% и минус 50% к тарифам. Разбираем цифры, бенчмарки и четыре ломающих изменения в Claude API.

Читать →