Персонализированные цифровые открытки Airbnb: система и алгоритмы

Airbnb разработала систему создания уникальных цифровых открыток для групповых путешествий, интегрированных в летний выпуск 2024 года. Система динамически генерирует открытки, сочетая изображения, шаблоны и локализованные названия пунктов назначения, обеспечивая соответствие открыток и мест проживания. При этом учитывается необходимость адаптации к различным платформам и каналам обмена сообщениями, а так же обеспечение высокой производительности.
Персонализированные цифровые открытки Airbnb: система и алгоритмы
Изображение носит иллюстративный характер

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

Для подбора наиболее подходящих открыток используется алгоритм, работающий по нескольким принципам. Это либо привязка к уникальному объекту размещения, либо использование изображений, связанных с определенными пунктами назначения, либо выбор на основе ключевых слов, либо использование стандартного изображения по умолчанию. Такой подход позволяет добиться релевантности открыток, отображаемых пользователю.

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


Новое на сайте

20873Как Chrome и Safari мешают мошенникам красть данные? 20872Может ли один запрос взломать сервер на PHP? 20871Что скрывает критическая уязвимость GitLab с оценкой CVSS 10,0? 20870Как LiteLLM 1.107.0 превратили в ловушку для учётных данных? 20869Когда ИИ-агенты отключают контроль 20868Уязвимости Plex открыли путь майнерам и Linux-бэкдору 20867Взлом OpenCode Console: под угрозой могли оказаться ключи OpenAI, Anthropic и Google 20866Rank Math PRO: заражённое обновление оставило на сайтах самовосстанавливающийся бэкдор 20865Как исследовательские модели OpenAI обходили ограничения и присваивали чужие данные 20864Атака на BeyondTrust: шпионская группа получила доступ к серверам поддержки 20863Как пакет imgdecode превращает npm-зависимость в загрузчик вредоносного кода? 20862Как PEERSTITCH обходит проверки VPN-сессий FortiOS? 20861Что происходит, когда ИИ-агент выходит за пределы тестовой среды? 20860Как 37-летняя ошибка открыла путь к root в OpenBSD 7.9? 20859ИИ-модели для SOC: точный ответ зависит от улик
Ссылка