True ML Talks #9 - Machine Learning Platform @ DoorDash

Gebouwd voor snelheid: ~10ms latentie, zelfs onder belasting
De razendsnelle manier om je modellen te bouwen, volgen en implementeren!
- Verwerkt 350+ RPS op slechts 1 vCPU — geen tuning nodig
- Productieklaar met volledige enterprise-ondersteuning
We zijn terug met een nieuwe aflevering van True ML Talks. In deze aflevering duiken we diep in het ML Platform van DoorDash, en spreken we met Hien Luu.
Hien Luu is Senior Engineering Manager bij DoorDash en leidt de opbouw van het ML-platform van DoorDash. DoorDash is, zoals iedereen weet, een van de grootste maaltijdbezorgbedrijven in de VS, met een waarde van meer dan $ 25 miljard.
📌
Onze gesprekken met Hien Luu omvatten de volgende aspecten:
- ML Usecases bij DoorDash
- Het ontwerpen van een schaalbare Model Serving Layer
- Shadowing van modellen: Versnellen van testen en deployment
- Standaardisatie via gRPC
- Stroomlijnen van feature engineering en dataformaten
- Het belang van modelvalidatie en geautomatiseerde her-training
- Uitdagingen en kansen voor ML Ops bij de ondersteuning van Generatieve AI en LLMs
Bekijk de volledige aflevering hieronder:
Usecases van ML @ DoorDash
- Efficiënte ordertoewijzing en bezorging: ML-algoritmen spelen een cruciale rol bij het voorspellen van de bereidingstijd van bestellingen, het schatten van de bezorgtijd en het routeren van Dashers voor optimale efficiëntie. Door gebruik te maken van historische gegevens, zoals kooktijden van restaurants, verkeerspatronen en weersomstandigheden, wijst DoorDash dynamisch bestellingen toe aan Dashers, wat zorgt voor snellere leveringen en een naadloze klantervaring.
- Gepersonaliseerde zoekaanbevelingen: Op ML gebaseerde zoekaanbevelingen zijn een standaardfunctie geworden voor online platforms, waaronder DoorDash. Door klantvoorkeuren, bestelgeschiedenis en contextuele gegevens te analyseren, gebruikt DoorDash ML-algoritmen om relevante restaurants, keukens en gerechten aan gebruikers voor te stellen. Deze gepersonaliseerde aanpak verbetert de gebruikerservaring, stimuleert ontdekking en verhoogt de klanttevredenheid.
- Doelgerichte advertenties en promoties: DoorDash maakt gebruik van ML om doelgerichte advertenties en promoties te leveren die aansluiten bij de voorkeuren van de gebruiker. Door gebruikersgedrag, transactiegeschiedenis en demografische gegevens te analyseren, stemt DoorDash zijn marketingcampagnes af op specifieke klantsegmenten. Deze gerichte aanpak vergroot de effectiviteit van promoties, bevordert klantloyaliteit en stimuleert betrokkenheid.
- Proactieve fraudedetectie: Om fraude te bestrijden, gebruikt DoorDash ML-algoritmen om frauduleuze activiteiten, waaronder nepbestellingen, accountovernames en betalingsfraude, te detecteren en te beperken. Door patronen, anomalieën en historische gegevens te analyseren, identificeert DoorDash proactief frauduleus gedrag, waardoor klanten worden beschermd en de integriteit van het platform behouden blijft.
- Classificatie van menu-items: Het onboarden van een groot aantal verkopers met uiteenlopende menu's vormt een unieke uitdaging voor DoorDash. ML-algoritmen worden ingezet om menu-items automatisch en nauwkeurig te detecteren en te classificeren. Door afbeeldingen, tekstbeschrijvingen en feedback van klanten te verwerken, integreert DoorDash de menu's van verkopers naadloos in zijn platform, wat klanten een rijke en consistente surfervaring biedt.
Het ontwerpen van een schaalbare Model Serving Layer
De schaalbare model serving-laag van het MLOps-team van DoorDash is een cruciaal onderdeel van hun machine learning-infrastructuur die dagelijks miljarden voorspellingen ondersteunt. Hieronder volgen enkele inzichten in de architectuur en de belangrijkste beslissingen die de groei van hun model serving-laag mogelijk hebben gemaakt.
- Gefocuste library-ondersteuning: De model serving-laag van DoorDash is ontworpen om twee belangrijke libraries te ondersteunen: GBM en PyTorch. Deze beslissing stelde het MLOps-team in staat om geoptimaliseerde oplossingen te bouwen voor deze libraries, wat zorgt voor een efficiënte en effectieve model serving.
- Ondersteuning voor batch-voorspellingen: Om de overhead van netwerkoproepen te verminderen, is de model serving-laag ontworpen om batch-voorspellingen te ondersteunen. Dit is met name voordelig voor usecases zoals aanbevelingssystemen, die duizenden rankings genereren voor één enkele gebruiker. Door voorspellingen in batches te verwerken, behaalt het systeem betere prestaties en schaalbaarheid.
- Model shadowing voor testen: Het model serving-platform bevat een functie genaamd model shadowing, waarmee data scientists hun modellen in productie kunnen testen zonder dat dit invloed heeft op het live gebruikersverkeer. Deze shadow-modus helpt hen vertrouwen te krijgen in de prestaties en het gedrag van het model voordat het naar de volledige productie wordt overgebracht, wat zorgt voor een soepel en foutloos deploymentproces.
- Microservice-architectuur: Het model serving-platform bij DoorDash volgt een microservice-architectuur. Met behulp van Kubernetes organiseert het platform modellen in geïsoleerde pods, wat onafhankelijke schaling op basis van individuele behoeften mogelijk maakt. Deze architecturale aanpak bevordert modulariteit, schaalbaarheid en efficiënte brontoewijzing, wat overeenkomt met de beste praktijken in de sector voor het bouwen van microservices.
Shadowing van modellen: Versnellen van testen en deployment
Het implementeren van een shadowing-laag binnen de model serving-infrastructuur van DoorDash heeft de snelheid waarmee modellen worden getest en gedeployed revolutionair veranderd. In dit gedeelte duiken we in de unieke aspecten van de shadowing-laag, het verschil met Canary-testen en de grote impact ervan op het faciliteren van efficiënt testen van modellen voor data scientists.
Gestroomlijnd shadowing-proces
De shadowing-laag van DoorDash vereenvoudigt het proces, waardoor data scientists moeiteloos modeltesten kunnen uitvoeren. De implementatie is zowel eenvoudig als krachtig. Data scientists gebruiken configuraties en een intuïtieve tool om een primair model en shadow-modellen te specificeren. Met slechts een paar kliks kunnen ze een gewenst percentage van het inkomende verkeer (bijv. 1% of 2%) toewijzen om naar de shadow-modellen te worden geleid. Het platform regelt de rest, inclusief het laden van het aangewezen model in de juiste pods, het naadloos routeren van het gespecificeerde verkeer en het vastleggen van voorspellingen voor de shadow-modellen.
Snelheid verhogen en data scientists in hun kracht zetten
De eenvoud en gebruiksvriendelijkheid van de shadowing-laag van DoorDash hebben het tempo van testen en deployen voor data scientists aanzienlijk versneld. Door onnodige complexiteit te elimineren en de afhankelijkheid van engineering-ondersteuning te minimaliseren, genieten data scientists van volledige autonomie over het shadowing-proces. Deze nieuwe wendbaarheid stelt hen in staat om hun modellen frequenter te itereren, wat resulteert in een versnelde ontwikkelcyclus en snelle innovatie bevordert.
Naarmate het aantal modellen en het verkeersvolume toenemen, is het echter essentieel om aandacht te besteden aan zaken zoals de schaalbaarheid van het logging-systeem en kostenbeheer. Het vinden van de juiste balans tussen efficiënte bedrijfsvoering en de toenemende omvang van modeltesten blijft cruciaal om de voordelen van de shadowing-laag te behouden.
Onderscheid tussen shadowing en Canary-testen
- Shadowing: Shadowing van modellen in ML Ops verwijst naar de praktijk van het testen en evalueren van modellen binnen een productieomgeving zonder dat dit invloed heeft op live gebruikersverkeer. Het biedt een veilige omgeving voor data scientists om vertrouwen te krijgen in de prestaties en het gedrag van hun modellen voordat ze deze volledig deployen. Door een deel van de inkomende verzoeken naar shadow-modellen te routeren, kunnen data scientists hun effectiviteit beoordelen en onderbouwde beslissingen nemen.
- Canary: Canary-testen houdt daarentegen in dat nieuwe modellen geleidelijk worden uitgerold naar een selectie van gebruikers om hun prestaties en stabiliteit te evalueren ten opzichte van het bestaande model. Het helpt bij het identificeren van eventuele problemen of afwijkingen voordat het nieuwe model naar de gehele gebruikersbasis wordt gedeployed. Canary-testen maakt een gecontroleerde evaluatie mogelijk van de impact van het nieuwe model op gebruikerservaringen, wat datagedreven beslissingen over de adoptie ervan mogelijk maakt.
📌
Gestandaardiseerd op gRPC
DoorDash heeft gRPC geadopteerd als het standaardprotocol binnen het gehele bedrijf. Deze keuze werd gedreven door de behoefte aan stabiliteit en efficiëntie op grote schaal. Het binaire protocol van gRPC, samen met het in de praktijk bewezen karakter ervan, sloot aan bij de focus van DoorDash op het optimaliseren van elk aspect van hun ML-infrastructuur. De beslissing om gRPC te gebruiken voor service-to-service communicatie zorgde voor betrouwbare en efficiënte interacties tussen componenten van de model serving-laag.
We geloven allemaal dat wanneer je dingen op grote schaal doet, elk klein detail telt, en ik denk dat het binaire protocol daar goed voor is als je op schaal begint te werken, en gRPC is bij zeer veel bedrijven in de praktijk bewezen.
Stroomlijnen van feature engineering en dataformaten
Om feature engineering en modeltraining te faciliteren, richtte DoorDash zich op het optimaliseren van de infrastructuur en dataformaten. Aanvankelijk gebruikte het bedrijf Snowflake als data warehouse, wat zorgde voor efficiënte opslag en beheer van gegevens. Naarmate ze hun modeltrainingsactiviteiten opschaalden, bleek het ophalen van gegevens uit Snowflake echter inefficiënt te zijn. Hien Luu zag de noodzaak van een data lake in en pleitte voor de implementatie ervan, voortbouwend op zijn ervaring bij LinkedIn, waar een data lake een waardevolle aanwinst was gebleken voor tal van usecases. Het bouwen van een data lake kostte tijd en moeite, maar eenmaal gerealiseerd kon DoorDash het gebruiken om hun feature engineering-framework op te bouwen.
Het feature engineering-framework diende als een abstractielaag, waarmee data scientists konden aangeven hoe ze wilden dat features berekend zouden worden. De infrastructuur van DoorDash verzorgde vervolgens de berekening, de planning van pipelines en het resourcebeheer namens de data scientists. In samenwerking met het data lake-team werden de optimale formaten bepaald voor het opslaan van de berekende features.
Naast de offline feature store maakte DoorDash ook gebruik van een online feature store. De meeste usecases omvatten online voorspellingen die in productiesystemen waren geïntegreerd, wat de aanwezigheid van een online feature store noodzakelijk maakte. Zowel offline als online feature stores werden onderhouden, waarmee de discrepantie tussen training en serving die vaak in de sector voorkomt, werd aangepakt. Om de feature-sets tussen de twee stores te synchroniseren, werden gegenereerde features opgeslagen in de offline feature store en vervolgens geüpload naar de online feature store. Door dezelfde logica te gebruiken voor zowel offline als online scenario's, vereenvoudigde het feature engineering-framework het proces. Data scientists konden hun gewenste features voor beide stores opgeven en vertrouwen op de infrastructuur om de onderliggende mechanismen, zoals het plannen van de uploads, af te handelen.
Het belang van modelvalidatie en geautomatiseerde her-training in MLOps
Modelprestaties valideren
Het waarborgen van de nauwkeurigheid en betrouwbaarheid van machine learning-modellen is een cruciaal aspect van het MLOps-proces. Modelvalidatie omvat het testen van de prestaties van een model met behulp van echte data om de effectiviteit ervan te verifiëren. Door dit validatieproces te automatiseren met tools zoals MLflow, kunnen data scientists experimenten bijhouden, resultaten vergelijken en verschillende modellen evalueren op basis van hun prestatiemetrieken. Modelvalidatie biedt vertrouwen in het vermogen van het model om nauwkeurige voorspellingen te doen en informeert de besluitvorming in het deploymentproces.
Geautomatiseerde her-training voor optimale prestaties
Geautomatiseerde her-training gaat een stap verder dan modelvalidatie door modellen automatisch te laten her-trainen op basis van vooraf gedefinieerde criteria of drempelwaarden. Deze proactieve aanpak zorgt ervoor dat modellen up-to-date blijven en na verloop van tijd optimaal blijven presteren. Door handmatige interventie te minimaliseren, kunnen MLOps-teams het risico op menselijke fouten verminderen en het her-trainingsproces stroomlijnen.
Het implementeren van geautomatiseerde her-training vereist een zorgvuldige afweging van de specifieke behoeften en mogelijke consequenties van elk model. MLOps-teams moeten waarborgen en flexibele processen ontwerpen en implementeren om ervoor te zorgen dat modellen op de juiste manier worden her-trained. Dit omvat planning en testen om de optimale her-trainingsfrequentie, de criteria voor her-training en strategieën voor het bevorderen van de geher-trainde modellen naar productie te bepalen.
De voordelen van geautomatiseerde her-training zijn aanzienlijk. Door modellen continu bij te werken, kunnen organisaties hun nauwkeurigheid en betrouwbaarheid behouden, zich aanpassen aan veranderende datapatronen en mogelijke kwaliteitsvermindering aanpakken. Geautomatiseerde her-training vermindert ook het risico op fouten en downtime in productieomgevingen, aangezien modellen proactief worden verbeterd en bijgewerkt.
Het integreren van modelvalidatie en geautomatiseerde her-training in de MLOps-infrastructuur is van cruciaal belang voor het bouwen van robuuste en betrouwbare machine learning-systemen. Door gebruik te maken van automatiseringstools en goed ontworpen processen te implementeren, kunnen organisaties ervoor zorgen dat hun modellen consistent nauwkeurige voorspellingen leveren en zich effectief aanpassen aan veranderende omstandigheden.
Uitdagingen en kansen voor ML Ops bij de ondersteuning van Generatieve AI en LLMs
Generatieve AI en taalmodellen (LMs) hebben het potentieel om vele sectoren, waaronder maaltijdbezorging, te revolutioneren. Het effectief benutten van deze technologieën vereist echter dat ML Ops-teams verschillende uitdagingen en kansen aanpakken.
- Snel veranderend speelveld: Het bijhouden van de snelle ontwikkelingen op het gebied van generatieve AI en taalmodellen (LMs) vormt een uitdaging voor data scientists en ML Ops-teams.
- Focus op het ondersteunen van data scientists: De focus moet liggen op het bepalen van de noodzakelijke infrastructuur en tools om data scientists te ondersteunen bij het effectief inzetten van LLMs voor hun specifieke usecases.
- Prompt engineering: Infrastructuurteams kunnen een cruciale rol spelen bij het assisteren van data scientists met prompt engineering, door hen te helpen prompts te optimaliseren en te fine-tunen voor de gewenste outputs.
- Interne hosting voor privacy en latency: Sommige usecases vereisen mogelijk dat LMs intern worden gehost om privacyzorgen aan te pakken, latency te verminderen of kosten te beheersen. Het begrijpen van het opzetten van interne hosting en het werken met GPU-configuraties wordt essentieel.
- Investeren in infrastructuur: Bedrijven zoals DoorDash erkennen het potentieel van LLMs en generatieve AI en investeren in de noodzakelijke infrastructuur om uiteenlopende usecases te ondersteunen en data scientists in hun kracht te zetten.
- Gebruikmaken van OpenAI en interne modellen: Verschillende usecases vereisen mogelijk verschillende hosting-benaderingen. Sommige kunnen gebruikmaken van OpenAI-modellen, terwijl andere intern gehoste modellen vereisen op basis van factoren zoals latency, dataset, schaal en kosten.
- Resourcebeheer en schaalbaarheid: Het effectief beheren van resources en het aanpakken van de uitdaging van model-quantization zijn belangrijke overwegingen voor het op een schaalbare manier hosten van LLMs.
Hier is nog een interessant blog geschreven door het team van DoorDash over Generatieve AI:
Lees onze eerdere blogs in de True ML Talks-serie:
Blijf kijken naar de TrueML YouTube-serie en lees de TrueML blogserie.
TrueFoundry is een ML Deployment PaaS op Kubernetes om ontwikkelaarsworkflows te versnellen, terwijl ze volledige flexibiliteit behouden bij het testen en deployen van modellen met gegarandeerde veiligheid en controle voor het infrastructuurteam. Via ons platform stellen we Machine Learning-teams in staat om binnen 15 minuten modellen te deployen en te monitoren met 100% betrouwbaarheid, schaalbaarheid en de mogelijkheid om binnen enkele seconden te rollbacken. Dit stelt hen in staat kosten te besparen en modellen sneller naar productie te brengen, wat echte zakelijke waarde oplevert.
TrueFoundry AI Gateway levert een latentie van ~3–4 ms, verwerkt 350+ RPS op 1 vCPU, schaalt moeiteloos horizontaal en is klaar voor productie, terwijl LiteLLM last heeft van hoge latentie, moeite heeft boven een gemiddeld aantal RPS, geen ingebouwde schaling heeft en het meest geschikt is voor lichte workloads of prototypes.
















.png)

.webp)



.webp)








.webp)





