Come SmartNews trasforma le raccomandazioni pubblicitarie in tempo reale con Milvus

< 10ms
Latenza P99 per consentire il recupero dei dati in tempo reale
100+ milioni
Aggiornamenti giornalieri dei vettori senza degrado delle prestazioni
Aumentare le entrate
La distribuzione di annunci più pertinenti ha portato a un miglioramento del tasso di clic.
We've gained so much from the Milvus community that we decided to contribute features like "hot reload," which have also benefited our internal operations.
Dennis Zhao
Informazioni su SmartNews
SmartNews, con sede a Tokyo, in Giappone, è stata una forza dominante nel settore delle app di notizie fin dalla sua nascita nel 2012. Negli Stati Uniti è particolarmente nota per l'elevato coinvolgimento degli utenti. Dennis Zhao, AI Infrastructure Lead di SmartNews, spiega: "A luglio 2021, SmartNews aveva il più alto coinvolgimento medio mensile degli utenti tra tutte le app di notizie, superando persino le metriche combinate di AppleNews e Google News". Questo alto livello di coinvolgimento degli utenti ha naturalmente portato a un aumento delle opportunità di inserimento degli annunci. Tuttavia, ha posto anche delle sfide per garantire che gli annunci raggiungessero gli utenti giusti al momento giusto.
Gli ostacoli tecnici degli algoritmi di raccomandazione pubblicitaria
Grazie alla sua posizione di leadership nel coinvolgimento degli utenti, SmartNews ha dovuto affrontare una sfida unica: ottimizzare le raccomandazioni pubblicitarie per una base di utenti altamente coinvolta. Shu, un ingegnere dell'infrastruttura AI di SmartNews, descrive nei dettagli queste sfide: "Stavamo lottando con caratteristiche sparse ad alta dimensione e con la necessità di recuperare rapidamente i dati non strutturati nei nostri sistemi di apprendimento automatico su larga scala".
Queste sfide non erano solo teoriche, ma avevano implicazioni reali. Le caratteristiche sparse e altamente dimensionali rendevano inefficienti le soluzioni di database tradizionali per l'archiviazione e l'interrogazione dei dati. I dati non strutturati rendevano difficile eseguire ricerche rapide e accurate, un requisito fondamentale per le raccomandazioni pubblicitarie in tempo reale.
Prima di rivolgersi a Milvus, il team utilizzava Faiss, una libreria per la ricerca di similarità e il clustering di vettori densi. Tuttavia, Faiss presentava una serie di limitazioni. "Era complicato da mantenere e non era scalabile con le nostre applicazioni di apprendimento automatico in crescita", aggiunge Shu. Queste limitazioni hanno spinto il team a esplorare altre soluzioni in grado di offrire sia la scalabilità che le prestazioni necessarie, portandolo infine a Milvus.
Soluzioni tecniche: Dalla ricerca vettoriale ai contributi della comunità
Quando SmartNews si è resa conto dei limiti delle soluzioni esistenti, il team si è rivolto a Milvus per le sue capacità di gestire dati vettoriali su larga scala e la ricerca di similarità. "Dopo due mesi di ricerche rigorose, Milvus è emerso come il chiaro vincitore", afferma Shu. La capacità di Milvus di gestire query ad alta velocità e bassa latenza è stata una svolta. "Ha soddisfatto il nostro requisito rigoroso di latenza P99 < 10 ms, fondamentale per il nostro sistema di raccomandazione di annunci in tempo reale "**.
Le capacità di ricerca per similarità vettoriale di Milvus sono state inizialmente applicate per ottimizzare il richiamo dinamico dei vettori pubblicitari di SmartNews. "Milvus ci ha permesso di mappare tipi di dati incomparabili in vettori, consentendo così un'efficiente ricerca di similarità per collegare gli utenti con gli annunci più pertinenti", spiega Shu. Questa capacità di ricerca performante è stata importante per SmartNews, in quanto la piattaforma doveva passare al setaccio milioni di vettori per fornire raccomandazioni pubblicitarie in tempo reale.
Oltre alle raccomandazioni pubblicitarie, Milvus si è dimostrato abbastanza versatile per altre applicazioni di apprendimento automatico. "Abbiamo esteso il suo utilizzo agli aggiornamenti in tempo reale dei dati e degli indici, il che è stato fondamentale per mantenere aggiornati i nostri modelli di raccomandazione", aggiunge Shu.
SmartNews ha anche riconosciuto il valore dello sviluppo guidato dalla comunità. Abbiamo guadagnato così tanto dalla comunità di Milvus che abbiamo deciso di contribuire con funzioni come "hot reload", che si sono rivelate utili anche per le nostre operazioni interne", afferma Dennis Zhao, AI Infrastructure Lead di SmartNews. Questa funzione consente agli sviluppatori di modificare il codice al volo, accelerando notevolmente il ciclo di sviluppo.
Risultati aziendali: Raggiungere la scalabilità e prepararsi al futuro
L'adozione di Milvus non è stata solo un aggiornamento tecnico, ma ha avuto importanti implicazioni commerciali. Yusup, un altro ingegnere di SmartNews, racconta una delle sfide iniziali: "Il meccanismo originale di aggiornamento dei vettori era macchinoso e richiedeva molto tempo. Tuttavia, la funzione di 'aliasing delle collezioni' di Milvus ci ha permesso di effettuare transizioni più fluide tra i vecchi e i nuovi set di dati, snellendo il processo di aggiornamento".
Questo miglioramento tecnico si è tradotto in risultati commerciali. Il sistema di raccomandazione degli annunci ottimizzato ha portato alla pubblicazione di annunci più pertinenti, aumentando i tassi di clic e, in ultima analisi, incrementando le entrate pubblicitarie. Inoltre, gli aggiornamenti in tempo reale dei dati e degli indici hanno permesso a SmartNews di adattarsi rapidamente ai cambiamenti del comportamento degli utenti, mantenendo le raccomandazioni della piattaforma sempre pertinenti.
SmartNews si sta preparando per la prossima fase della sua evoluzione tecnologica. "Con l'imminente rilascio di Milvus 2.0, stiamo pianificando una migrazione", afferma Dennis Zhao. "La nuova versione promette prestazioni e scalabilità ancora migliori e siamo entusiasti di poter sfruttare queste caratteristiche per costruire sistemi ancora più affidabili e in tempo reale".