True ML Talks #9: plataforma de aprendizaje automático en DoorDash

Diseñado para la velocidad: ~ 10 ms de latencia, incluso bajo carga
¡Una forma increíblemente rápida de crear, rastrear e implementar sus modelos!
- Gestiona más de 350 RPS en solo 1 vCPU, sin necesidad de ajustes
- Listo para la producción con soporte empresarial completo
Volvemos con otro episodio de True ML Talks. En esto, nos sumergimos profundamente Por Dash's ML Platform, y estamos hablando con Hien Luu.
Hien Luu es la directora sénior de ingeniería de DoorDash y ha creado la plataforma ML de DoorDash. Como todo el mundo sabe, DoorDash es una de las mayores empresas de comida a domicilio de EE. UU., con más de 25 000 millones de dólares.
📌
Nuestras conversaciones con Hien Luu cubrirán los siguientes aspectos:
- Casos de uso de ML en DoorDash
- Diseño de una capa de servicio de modelos escalable
- Modelos de seguimiento: aceleración de las pruebas y el despliegue
- Estandarización mediante gRPC
- Optimización de la ingeniería de funciones y los formatos de datos
- La importancia de la validación del modelo y el reentrenamiento automatizado
- Desafíos y oportunidades para las operaciones de aprendizaje automático en el apoyo a la IA generativa y los LLM
Mira el episodio completo a continuación:
Casos de uso de ML @ DoorDash
- Asignación y entrega eficientes de pedidos: Los algoritmos de aprendizaje automático desempeñan un papel fundamental a la hora de predecir el tiempo de preparación de los pedidos, estimar el tiempo de entrega y enrutar los Dashers para lograr una eficiencia óptima. Al aprovechar los datos históricos, como los tiempos de cocción de los restaurantes, los patrones de tráfico y las condiciones climáticas, DoorDash asigna dinámicamente los pedidos a los Dashers, lo que garantiza entregas más rápidas y una experiencia de cliente perfecta.
- Recomendaciones de búsqueda personalizadas: Las recomendaciones de búsqueda basadas en ML se han convertido en una función estándar para las plataformas en línea, incluida DoorDash. Al analizar las preferencias de los clientes, el historial de pedidos y los datos contextuales, DoorDash emplea algoritmos de aprendizaje automático para sugerir a los usuarios restaurantes, cocinas y platos relevantes. Este enfoque personalizado mejora la experiencia del usuario, fomenta la exploración y aumenta la satisfacción del cliente.
- Anuncios y promociones segmentados: DoorDash aprovecha el aprendizaje automático para ofrecer anuncios y promociones específicos que se alinean con las preferencias del usuario. Al analizar el comportamiento de los usuarios, el historial de transacciones y los datos demográficos, DoorDash adapta sus campañas de marketing a segmentos de clientes específicos. Este enfoque específico aumenta la eficacia de las promociones, fomenta la lealtad de los clientes e impulsa la participación.
- Detección proactiva de fraudes: Para combatir el fraude, DoorDash utiliza algoritmos de aprendizaje automático para detectar y mitigar las actividades fraudulentas, incluidos los pedidos falsos, el secuestro de cuentas y el fraude de pagos. Al analizar los patrones, las anomalías y los datos históricos, DoorDash identifica de forma proactiva el comportamiento fraudulento, salvaguardando a los clientes y manteniendo la integridad de la plataforma.
- Clasificación de los elementos del menú: La incorporación de un gran número de comerciantes con menús diversos representa un desafío único para DoorDash. Los algoritmos de aprendizaje automático se emplean para detectar y clasificar automáticamente los elementos del menú con precisión. Al procesar imágenes, descripciones de texto y comentarios de los clientes, DoorDash integra a la perfección los menús de los comerciantes en su plataforma, proporcionando a los clientes una experiencia de navegación rica y uniforme.
Diseño de una capa de servicio de modelos escalable
El equipo de mLOps de DoorDash es escalable modelo de servicio layer es un componente crucial de su infraestructura de aprendizaje automático que admite miles de millones de predicciones todos los días. A continuación se presentan algunas ideas sobre la arquitectura y las decisiones clave que permitieron el crecimiento de su capa de servicio de modelos.
- Soporte bibliotecario centrado: La capa de servicio de modelos de DoorDash se diseñó para admitir dos bibliotecas clave: GBM y PyTorch. Esta decisión permitió al equipo de MLOps crear soluciones optimizadas para estas bibliotecas, garantizando un servicio de modelos eficiente y efectivo.
- Soporte de predicción por lotes: Para reducir la sobrecarga de las llamadas de red, la capa de servicio del modelo se diseñó para admitir la predicción por lotes. Esto es particularmente beneficioso para casos de uso como los sistemas de recomendación, que generan miles de clasificaciones para un solo usuario. Al procesar las predicciones en lotes, el sistema logra un mejor rendimiento y escalabilidad.
- Sombreado de modelos para pruebas: La plataforma de servicio de modelos incorpora una función denominada seguimiento de modelos, que permite a los científicos de datos probar sus modelos en producción sin afectar al tráfico de usuarios en tiempo real. Este modo virtual les ayuda a confiar en el rendimiento y el comportamiento del modelo antes de pasar a la fase de producción completa, lo que garantiza un proceso de implementación fluido y sin errores.
- Arquitectura de microservicios: La plataforma de servicio modelo de DoorDash sigue una arquitectura de microservicios. Aprovechando Kubernetes, la plataforma organiza los modelos en módulos aislados, lo que permite un escalado independiente en función de las necesidades individuales. Este enfoque arquitectónico promueve la modularidad, la escalabilidad y la asignación eficiente de recursos, alineándose con las mejores prácticas del sector para la creación de microservicios.
Modelos de seguimiento: aceleración de las pruebas y la implementación
La implementación de una capa de sombra en la infraestructura de servicio de modelos de DoorDash ha revolucionado la velocidad a la que se prueban e implementan los modelos. Esta sección profundiza en los aspectos únicos de la capa de sombreado, su distinción con respecto a las pruebas de Canarias y su profundo impacto a la hora de facilitar la eficiencia de las pruebas de modelos para los científicos de datos.
Proceso de seguimiento simplificado
La capa de sombreado de DoorDash simplifica el proceso y garantiza que los científicos de datos puedan realizar pruebas de modelos sin esfuerzo. La implementación es a la vez sencilla y potente. Los científicos de datos utilizan configuraciones y una herramienta intuitiva para especificar un modelo principal y modelos alternativos. Con solo unos pocos clics, pueden asignar el porcentaje deseado del tráfico entrante (por ejemplo, el 1% o el 2%) para que se dirija a los modelos alternativos. La plataforma se encarga del resto, lo que incluye cargar el modelo designado en los módulos correspondientes, dirigir sin problemas el tráfico especificado y registrar las predicciones para los modelos alternativos.
Acelerar la velocidad y empoderar a los científicos de datos
La simplicidad y la facilidad de uso de la capa de sombra de DoorDash han acelerado drásticamente el ritmo de las pruebas y el despliegue para los científicos de datos. Al eliminar las complejidades innecesarias y minimizar la dependencia del soporte de ingeniería, los científicos de datos disfrutan de total autonomía durante el proceso de seguimiento. Esta nueva agilidad les permite repetir sus modelos con mayor frecuencia, lo que se traduce en un ciclo de desarrollo acelerado y en el fomento de la innovación rápida.
Sin embargo, a medida que aumenta la cantidad de modelos y el volumen de tráfico, es fundamental abordar consideraciones como la escalabilidad del sistema de registro y la administración de costos. Lograr un equilibrio entre la eficiencia de las operaciones y el alcance cada vez mayor de las pruebas de modelos sigue siendo crucial para mantener los beneficios de la capa oculta.
Distinguir el Shadowing de las pruebas canarias
- Sombreado: El seguimiento de modelos en ML Ops se refiere a la práctica de probar y evaluar modelos en un entorno de producción sin afectar al tráfico de usuarios en vivo. Proporciona un espacio seguro para que los científicos de datos confíen en el rendimiento y el comportamiento de sus modelos antes de implementarlos por completo. Al dirigir una parte de las solicitudes entrantes a modelos alternativos, los científicos de datos pueden evaluar su eficacia y tomar decisiones informadas.
- Canarias: Las pruebas en Canarias, por otro lado, implican el despliegue gradual de nuevos modelos para un subconjunto de usuarios para evaluar su rendimiento y estabilidad en comparación con el modelo existente. Ayuda a identificar cualquier problema o discrepancia antes de implementar el nuevo modelo en toda la base de usuarios. Las pruebas con Canary permiten una evaluación controlada del impacto del nuevo modelo en las experiencias de los usuarios, lo que permite tomar decisiones basadas en datos con respecto a su adopción.
📌
Estandarizado en gRPC
DoorDash adoptó el gRPC como protocolo estándar en toda la empresa. Esta elección se debió a la necesidad de estabilidad y eficiencia a escala. El protocolo binario de gRPC, junto con su capacidad de eficacia comprobada, hizo que DoorDash se centrara en la optimización de todos los aspectos de su infraestructura de aprendizaje automático. La decisión de utilizar el gRPC para la comunicación entre servicios garantizó interacciones fiables y eficientes entre los componentes de la capa de servicio del modelo.
Todos creemos que cuando haces cosas a gran escala, cada detalle importa y creo que el protocolo binario es bueno para eso cuando empiezas a ofrecer una báscula y gRPC ha sido probado en muchísimas empresas.
Optimización de la ingeniería de funciones y los formatos de datos
Para facilitar la ingeniería de funciones y la formación de modelos, DoorDash se centró en optimizar su infraestructura y sus formatos de datos. Inicialmente, la empresa utilizó Snowflake como almacén de datos, lo que permitía un almacenamiento y una gestión de datos eficientes. Sin embargo, a medida que ampliaron sus operaciones de entrenamiento de modelos, la recuperación de datos de Snowflake resultó ineficaz. Reconociendo la necesidad de un lago de datos, Hien Luu abogó por su implementación, basándose en su experiencia en LinkedIn, donde un lago de datos había demostrado ser un activo valioso para numerosos casos de uso. La creación de un lago de datos llevó tiempo y esfuerzo, pero una vez establecido, DoorDash pudo aprovecharlo para crear su marco de ingeniería de funciones.
El marco de ingeniería de características sirvió como una capa de abstracción, lo que permitió a los científicos de datos expresar cómo querían que se calcularan las características. Luego, la infraestructura de DoorDash se encargó de la computación, la programación de los procesos y la administración de los recursos en nombre de los científicos de datos. En colaboración con el equipo del lago de datos, se determinaron los formatos óptimos para almacenar las funciones computadas.
Además de la tienda de funciones fuera de línea, DoorDash también empleó una tienda de funciones en línea. La mayoría de los casos de uso involucraban predicciones en línea integradas en los sistemas de producción, por lo que era necesaria la presencia de una tienda de artículos en línea. Se mantuvieron las tiendas de artículos online y offline, lo que solucionó las discrepancias entre la formación y el servicio que suelen darse en el sector. Para sincronizar los conjuntos de funciones entre las dos tiendas, las funciones generadas se almacenaban en la tienda de funciones fuera de línea y, posteriormente, se cargaban a la tienda de funciones en línea. Al utilizar la misma lógica para los escenarios offline y online, el marco de ingeniería de funciones simplificó el proceso. Los científicos de datos podían especificar las funciones que deseaban para ambas tiendas y confiar en la infraestructura para gestionar los mecanismos subyacentes, como la programación de las subidas.
La importancia de la validación de modelos y el reentrenamiento automatizado en los MLOP
Validación del rendimiento del modelo
Garantizar la precisión y confiabilidad de los modelos de aprendizaje automático es un aspecto fundamental del proceso de MLOps. La validación del modelo implica probar el rendimiento de un modelo utilizando datos del mundo real para verificar su eficacia. Al automatizar este proceso de validación con herramientas como MLFlow, los científicos de datos pueden realizar un seguimiento de los experimentos, comparar los resultados y evaluar diferentes modelos en función de sus métricas de rendimiento. La validación del modelo brinda confianza en la capacidad del modelo para hacer predicciones precisas e informa la toma de decisiones durante el proceso de implementación.
Reentrenamiento automatizado para un rendimiento óptimo
El reentrenamiento automatizado lleva la validación de modelos un paso más allá al permitir que los modelos se vuelvan a entrenar automáticamente en función de criterios o umbrales predefinidos. Este enfoque proactivo garantiza que los modelos se mantengan actualizados y sigan funcionando de manera óptima a lo largo del tiempo. Al minimizar la intervención manual, los equipos de MLOps pueden reducir el riesgo de errores humanos y agilizar el proceso de reentrenamiento.
La implementación del reentrenamiento automatizado requiere una consideración cuidadosa de las necesidades específicas y las posibles consecuencias de cada modelo. Los equipos de MLOps deben diseñar e implementar salvaguardas y procesos flexibles para garantizar que los modelos se vuelvan a capacitar de manera adecuada. Esto implica planificar y probar para determinar la frecuencia óptima de readiestramiento, los criterios para el readiestramiento y las estrategias para promover los modelos readiestrados y llevarlos a la fase de producción.
Los beneficios del readiestramiento automatizado son sustanciales. Al actualizar los modelos de forma continua, las organizaciones pueden mantener su precisión y confiabilidad, adaptarse a la evolución de los patrones de datos y abordar la posible degradación del rendimiento. El reentrenamiento automatizado también reduce el riesgo de errores y tiempos de inactividad en los entornos de producción, ya que los modelos se mejoran y actualizan de forma proactiva.
La incorporación de la validación de modelos y el reentrenamiento automatizado en la infraestructura de mLOps es crucial para crear sistemas de aprendizaje automático sólidos y confiables. Al aprovechar las herramientas de automatización e implementar procesos bien diseñados, las organizaciones pueden garantizar que sus modelos ofrezcan predicciones precisas de manera consistente y se adapten a las condiciones cambiantes de manera efectiva.
Desafíos y oportunidades para las operaciones de aprendizaje automático en el apoyo a la IA generativa y los LLM
La IA generativa y los modelos lingüísticos (LM) tienen el potencial de revolucionar muchas industrias, incluida la entrega de alimentos. Sin embargo, el aprovechamiento efectivo de estas tecnologías requiere que los equipos de operaciones de aprendizaje automático aborden varios desafíos y oportunidades.
- Espacio en rápida evolución: Mantenerse al día con los rápidos avances en la IA generativa y los modelos lingüísticos (LM) plantea un desafío para los científicos de datos y los equipos de operaciones de aprendizaje automático.
- Céntrese en apoyar a los científicos de datos: El enfoque debe centrarse en determinar la infraestructura y las herramientas necesarias para ayudar a los científicos de datos a utilizar eficazmente los LLM para sus casos de uso específicos.
- Ingeniería rápida: Los equipos de infraestructura pueden desempeñar un papel crucial a la hora de ayudar a los científicos de datos a realizar una ingeniería rápida, ayudándoles a optimizar y ajustar las indicaciones para obtener los resultados deseados.
- Alojamiento interno para privacidad y latencia: Algunos casos de uso pueden requerir el alojamiento interno de los LM para abordar los problemas de privacidad, reducir la latencia o controlar los costos. Es fundamental comprender cómo configurar el alojamiento interno y trabajar con las configuraciones de la GPU.
- Invertir en infraestructura: Al reconocer el potencial de las LLM y la IA generativa, empresas como DoorDash están invirtiendo en la infraestructura necesaria para respaldar diversos casos de uso y capacitar a los científicos de datos.
- Aprovechar la IA abierta y los modelos internos: Los diferentes casos de uso pueden requerir diferentes enfoques de alojamiento. Algunos pueden aprovechar los modelos de IA abiertos, mientras que otros pueden necesitar modelos alojados internamente en función de factores como la latencia, el conjunto de datos, la escala y el costo.
- Administración de recursos y escalabilidad: Administrar los recursos de manera efectiva y abordar el desafío de la cuantificación del modelo son consideraciones clave para hospedar los LLM de manera escalable.
Aquí hay otro blog interesante escrito por el equipo de DoorDash sobre la IA generativa:
Lea nuestros blogs anteriores de la serie True ML Talks:
Sigue viendo el TrueML serie youtube y leyendo el TrueML serie de blogs.
True Foundry es un PaaS de implementación de aprendizaje automático sobre Kubernetes para acelerar los flujos de trabajo de los desarrolladores y, al mismo tiempo, permitirles una flexibilidad total a la hora de probar e implementar modelos, al tiempo que garantiza una seguridad y un control totales para el equipo de Infra. A través de nuestra plataforma, permitimos a los equipos de aprendizaje automático implementar y supervisar modela en 15 minutos con un 100% de confiabilidad, escalabilidad y la capacidad de revertirse en segundos, lo que les permite ahorrar costos y lanzar los modelos a la producción más rápido, lo que permite obtener un verdadero valor empresarial.
TrueFoundry AI Gateway ofrece una latencia de entre 3 y 4 ms, gestiona más de 350 RPS en una vCPU, se escala horizontalmente con facilidad y está listo para la producción, mientras que LitellM presenta una latencia alta, tiene dificultades para superar un RPS moderado, carece de escalado integrado y es ideal para cargas de trabajo ligeras o de prototipos.
La forma más rápida de crear, gobernar y escalar su IA

















.png)


.webp)




.webp)







