ApplicationsAffaires et Marché 🇷🇺 12.08.2026 16:01

Comment construire un système de recommandation en TravelTech en 5 semaines : Kafka et MongoDB au lieu d'un Feature Store

TutuTutu
Un ingénieur MLOps de Tutu décrit comment un système de recommandation a été construit de zéro en cinq semaines en utilisant Kafka, MongoDB et ClickHouse, en évitant délibérément un Feature Store pour gagner du temps. Le système suggère des hôtels après l'achat d'un billet de transport, en utilisant les données de commande en temps réel de Kafka et les caractéristiques par lots nocturnes de ClickHouse, le tout stocké dans MongoDB pour une inférence rapide.
Christina, ingénieure MLOps chez Tutu, explique comment son équipe a lancé un système de recommandation (RecSys v1) en seulement cinq semaines pour respecter un délai de haute saison. Au lieu de construire un Feature Store complet, ce qui aurait pris des mois, ils ont utilisé MongoDB comme store en ligne temporaire, écrivant les commandes en temps réel depuis Kafka et les caractéristiques par lots nocturnes depuis ClickHouse dans un document unique par utilisateur. Le principal défi technique consistait à gérer le contexte d'un voyage spécifique — ville de destination, dates et nombre de voyageurs — que le filtrage collaboratif seul ne pouvait pas capturer. Ils ont conçu le contrat API pour accepter une commande cible de l'historique d'achat de l'utilisateur, en convertissant les dates UTC en heure locale de la ville d'arrivée afin de garantir des dates d'arrivée et de départ correctes. Pendant l'inférence, le service lit uniquement depuis MongoDB, avec un repli sur les hôtels les plus commandés si les vecteurs ALS sont manquants. Plus tard, ils ont été mis à niveau vers CatBoost pour le classement, en chargeant le modèle depuis le stockage d'objets au démarrage du service. Ils ont également rétrorempli les commandes historiques via les sujets Kafka de snapshots pour s'assurer que les utilisateurs du chemin chaud avaient un historique, et ils ont fusionné les commandes en double par order_id. Cette approche pragmatique leur a permis de valider l'hypothèse sur le trafic en direct sans architecture parfaite.
Source: Habr — хаб ML — original
Nos articles précédents sur ce sujet ↓
Infos fraîches