Cómo SmartNews transforma las recomendaciones publicitarias en tiempo real con Milvus

< 10ms
Latencia P99 para permitir la recuperación de datos en tiempo real
Más de 100 millones
Actualizaciones diarias de vectores sin merma del rendimiento
Aumentar los ingresos
La publicación de anuncios más relevantes mejoró el porcentaje de clics.
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
Acerca de SmartNews
SmartNews, con sede en Tokio, Japón, ha sido una fuerza dominante en el sector de las aplicaciones de noticias desde su creación en 2012. En Estados Unidos, destaca sobre todo por la alta participación de sus usuarios. Dennis Zhao, AI Infrastructure Lead de SmartNews, explica: "En julio de 2021, SmartNews tenía la mayor participación media mensual de usuarios entre todas las aplicaciones de noticias, superando incluso las métricas combinadas de AppleNews y Google News." Este alto nivel de participación de los usuarios condujo naturalmente a un aumento de las oportunidades de inserción de anuncios. Sin embargo, también planteó retos a la hora de garantizar que los anuncios llegaran a los usuarios adecuados en el momento oportuno.
Los obstáculos técnicos de los algoritmos de recomendación de anuncios
Con su posición de liderazgo en participación de los usuarios, SmartNews se enfrentaba a un reto único: optimizar las recomendaciones de anuncios a una base de usuarios muy comprometida. Shu, ingeniero de infraestructuras de IA en SmartNews, detalla estos retos: "Luchábamos con características dispersas de alta dimensión y con la necesidad de una rápida recuperación de datos no estructurados en nuestros sistemas de aprendizaje automático a gran escala".
Estos retos no eran sólo teóricos, sino que tenían implicaciones en el mundo real. Las características dispersas de alta dimensión hacían que las soluciones tradicionales de bases de datos fueran ineficaces para almacenar y consultar los datos. Los datos no estructurados dificultaban la realización de búsquedas rápidas y precisas, un requisito fundamental para las recomendaciones publicitarias en tiempo real.
Antes de recurrir a Milvus, el equipo había estado utilizando Faiss, una biblioteca para la búsqueda de similitudes y la agrupación de vectores densos. Sin embargo, Faiss tenía sus propias limitaciones. "Era engorroso de mantener y no se adaptaba bien a nuestras crecientes aplicaciones de aprendizaje automático", añade Shu. Estas limitaciones llevaron al equipo a explorar otras soluciones que pudieran ofrecer tanto la escalabilidad como el rendimiento que necesitaban, lo que finalmente les condujo a Milvus.
Soluciones técnicas: De la búsqueda vectorial a las contribuciones comunitarias
Cuando SmartNews se dio cuenta de las limitaciones de sus soluciones existentes, el equipo recurrió a Milvus por sus capacidades en el manejo de datos vectoriales a gran escala y la búsqueda de similitudes. "Después de dos meses de investigación rigurosa, Milvus resultó ser el claro ganador", dice Shu. La capacidad de Milvus para gestionar consultas de alto rendimiento y baja latencia supuso un cambio radical. "Cumplía nuestro estricto requisito de latencia P99 < 10 ms, crucial para nuestro sistema de recomendación de anuncios en tiempo real.".
Las capacidades de búsqueda de similitud vectorial de Milvus se aplicaron inicialmente para optimizar la recuperación dinámica de vectores de anuncios de SmartNews. "Milvus nos permitió mapear tipos de datos incomparables en vectores, permitiendo así una búsqueda de similitud eficiente para vincular a los usuarios con los anuncios más relevantes", explica Shu. Esta capacidad de búsqueda de alto rendimiento era importante para SmartNews, ya que la plataforma necesitaba examinar millones de vectores para hacer recomendaciones de anuncios en tiempo real.
Más allá de las recomendaciones de anuncios, Milvus demostró ser lo bastante versátil para otras aplicaciones de aprendizaje automático. "Ampliamos su uso a la actualización de datos e índices en tiempo real, lo que era vital para mantener actualizados nuestros modelos de recomendación", añade Shu.
SmartNews también reconoció el valor del desarrollo impulsado por la comunidad. "Hemos aprendido tanto de la comunidad Milvus que decidimos contribuir con funciones como la recarga en caliente, que también ha sido beneficiosa para nuestras operaciones internas", afirma Dennis Zhao, responsable de la infraestructura de IA en SmartNews. Esta función permite a los desarrolladores cambiar el código sobre la marcha, lo que acelera considerablemente el ciclo de desarrollo.
Resultados empresariales: Lograr la escalabilidad y prepararse para el futuro
La adopción de Milvus no fue sólo una actualización técnica; tuvo importantes implicaciones empresariales. Yusup, otro ingeniero de SmartNews, comenta uno de los retos iniciales: "El mecanismo original de actualización de vectores era engorroso y requería mucho tiempo. Sin embargo, la función de 'aliasing de colección' de Milvus nos permitió realizar transiciones más suaves entre los conjuntos de datos antiguos y nuevos, agilizando el proceso de actualización."
Esta mejora técnica se tradujo en resultados empresariales. El sistema optimizado de recomendación de anuncios hizo que se publicaran anuncios más relevantes, lo que aumentó el porcentaje de clics y, en última instancia, los ingresos publicitarios. Además, las actualizaciones de datos e índices en tiempo real permitieron a SmartNews adaptarse rápidamente a los cambios de comportamiento de los usuarios, manteniendo la pertinencia de las recomendaciones de la plataforma.
SmartNews se prepara para la siguiente fase de su evolución tecnológica. "Con el próximo lanzamiento de Milvus 2.0, estamos planeando una migración", dice Dennis Zhao. "La nueva versión promete un rendimiento y una escalabilidad aún mejores, y nos entusiasma la idea de aprovechar estas características para construir sistemas aún más fiables y en tiempo real."