Одна голова лучше и 2 и 15 Яндекс опубликовал на arXiv технический отчет Sona — новой генеративной модели для рекомендаций, обученной с нуля. Она объединяет подбор и ранжирование вариантов, позволяя заменить весь рекомендательный конвейер одной моделью и отказаться от ручных признаков. В недельном A/B-тесте на Моей волне в умных колонках с Алисой она заменила связку из больше чем 15 генераторов кандидатов, предранжирования и финального ранжировщика, работающего на сотнях признаков. Каскад стал стандартом, потому что одна модель не могла быстро и точно просеять миллионы треков. Платить за это приходится постоянно. Каждая ступень требует своей модели, своих данных, своего обучения и своих серверов. История пользователя обрабатывается заново на каждом этапе. Признаки, по которым ранжировщик оценивает треки, придумывают и поддерживают инженеры. Ступени учатся каждая под свою задачу, и финальный ранжировщик не поднимет трек, который генераторы не нашли. Любое улучшение означает доработку одной ступени и подгонку под нее остальных, а выигрыш измеряется долями процента. Sona устроена иначе Энкодер один раз читает историю пользователя, до 8192 прослушиваний, пропусков и лайков. Этот разбор используется и для поиска кандидатов, и для их сортировки. Декодер генерирует не сами треки, а их короткие коды, Semantic ID, примерно как языковая модель генерирует слова. Ручных признаков нет вообще: модель учится на сырых логах. Поиск и ранжирование обучаются вместе через общий энкодер, поэтому не тянут систему в разные стороны. Качество тяжелого ранжировщика Sona получает без его стоимости. Модель-учитель на 0,6B параметров, обученная на данных за год, во время обучения оценивает кандидатов, а Sona учится повторять эти оценки. В продакшен учитель не попадает. Длинную историю модель сжимает: глубокие слои работают только по последним 2048 событиям. Это примерно вдвое снижает стоимость инференса почти без потери качества. Дообучение идет автоматически на живом трафике: свежие веса уходят в продакшен каждые 10 минут, от действия пользователя до обновленной модели проходит около 45 минут. Kuaishou, которая перевела на похожую схему часть своей ленты, оценивает операционные расходы такой системы в 10,6% от классического конвейера. Тестировали и проверяли масштабирование энкодер-декодера на трех конфигурациях: 264M, 485M и 659M. Растить качество дальше тоже проще. По данным отчета, Sona стабильно улучшается с ростом размера модели и объема данных, и в проверенных диапазонах потолка не видно. Улучшать систему теперь можно с помощью роста компьюта, а не ручной докруткой отдельных ступеней. При этом модель показывает эффективную утилизацию ресурсов. В тесте активная аудитория выросла на 4,53%, время прослушивания на 6,30%, лайки на 11,42%, просьбы повторить трек на 17,99%. До Sona на этой поверхности сменились четыре поколения трансформерных моделей, и каждое добавляло к активной аудитории от 0,56% до 1,93%. Sona одним переходом дала больше, чем все четыре вместе. @anti_agi