De LLM’s van vandaag blinken uit in redeneren, maar kunnen nog steeds worstelen met de context. Dit geldt met name voor realtime bestelsystemen zoals Instacart.
Instacart CTO Anirban Kundu noemt het het ‘browniereceptprobleem’.
Het is niet zo eenvoudig als tegen een LLM zeggen: ‘Ik wil brownies maken.’ Om echt behulpzaam te zijn bij het plannen van de maaltijd, moet het model verder gaan dan die eenvoudige richtlijn om te begrijpen wat er beschikbaar is op de markt van de gebruiker op basis van hun voorkeuren (bijvoorbeeld biologische eieren versus gewone eieren) en dat meewegen in wat er in hun geografie beschikbaar is, zodat voedsel niet bederft. Dit naast andere kritische factoren.
Voor Instacart is de uitdaging het combineren van latentie met de juiste mix van context om ervaringen te bieden in idealiter minder dan een seconde.
“Als het redeneren zelf vijftien seconden duurt, en als elke interactie zo langzaam gaat, raak je de gebruiker kwijt”, zei Kundu tijdens een recent VB-evenement.
Een mix van redenering, realiteit uit de echte wereld en personalisatie
Bij het bezorgen van boodschappen is er een ‘wereld van redeneren’ en een ‘wereld van staat’ (wat er beschikbaar is in de echte wereld), Kundu opgemerkt, die beide door een LLM moeten worden begrepen, samen met de voorkeur van de gebruiker. Maar het is niet zo eenvoudig als het laden van de volledige aankoopgeschiedenis en bekende interesses van een gebruiker in een redeneermodel.
‘Je LLM zal ontploffen tot een omvang die onbeheersbaar zal zijn,’ zei Kundu.
Om dit te omzeilen, splitst Instacart de verwerking in stukjes. Ten eerste worden gegevens ingevoerd in een groot fundamenteel model dat de intentie kan begrijpen en producten kan categoriseren. Die verwerkte gegevens worden vervolgens doorgestuurd naar kleine taalmodellen (SLM’s) ontworpen voor cataloguscontext (de soorten voedsel of andere items die samenwerken) en semantisch begrip.
In het geval van cataloguscontext moet de SLM meerdere detailniveaus rond de bestelling zelf en de verschillende producten kunnen verwerken. Welke producten passen bijvoorbeeld bij elkaar en wat zijn de relevante vervangingen als de eerste keuze niet op voorraad is? Deze vervangingen zijn “zeer, zeer belangrijk” voor een bedrijf als Instacart, waarvan Kundu zei dat er “meer dan dubbelcijferige gevallen” zijn waarin een product niet beschikbaar is op de lokale markt.
In termen van semantisch begrip: stel dat een klant gezonde snacks voor kinderen wil kopen. Het model moet begrijpen wat een gezonde snack is en welke voedingsmiddelen geschikt zijn voor en aantrekkelijk zijn voor een 8-jarige, en vervolgens relevante producten identificeren. En als die specifieke producten niet beschikbaar zijn op een bepaalde markt, moet het model ook gerelateerde subsets van producten vinden.
Dan is er het logistieke element. Een product als ijs smelt bijvoorbeeld snel, en diepvriesgroenten doen het ook niet goed als ze bij hogere temperaturen buiten worden gelaten. Het model moet deze context hebben en een acceptabele levertijd berekenen.
“Dus je hebt deze intentie, je hebt deze categorisering, en dan heb je nog een ander deel over logistiek, hoe doe je dat?”, merkte Kundu op.
Het vermijden van ‘monolithische’ agentsystemen
Net als veel andere bedrijven experimenteert Instacart met AI-agents en ontdekt dat een mix van agenten beter werkt dan een ‘enkele monoliet’ die meerdere verschillende taken uitvoert. De Unix-filosofie van een modulair besturingssysteem met kleinere, gerichte tools helpt bijvoorbeeld bij het aanpakken van verschillende betalingssystemen die verschillende faalwijzen hebben, legt Kundu uit.
“Het was erg onpraktisch om dat allemaal binnen één omgeving te moeten bouwen”, zei hij. Verder praten agenten aan de achterkant met veel platforms van derden, waaronder point-of-sale (POS)- en catalogussystemen. Uiteraard gedragen ze zich niet allemaal op dezelfde manier; sommige zijn betrouwbaarder dan andere, en ze hebben verschillende update-intervallen en feeds.
“Om al deze dingen aan te kunnen, hebben we deze route van microagentia gevolgd in plaats van agenten die overwegend groot van aard zijn,” zei Kundu.
Om agenten te beheren, is Instacart geïntegreerd met OpenAI’s modelcontextprotocol (MCP), dat het proces van het verbinden van AI-modellen met verschillende tools en gegevensbronnen standaardiseert en vereenvoudigt.
Het bedrijf maakt ook gebruik van de open standaard Universal Commerce Protocol (UCP) van Google, waarmee AI-agenten rechtstreeks kunnen communiceren met verkoperssystemen.
Het team van Kundu heeft echter nog steeds te maken met uitdagingen. Zoals hij opmerkte, gaat het niet om de vraag of integratie mogelijk is, maar om hoe betrouwbaar deze integraties zich gedragen en hoe goed ze door gebruikers worden begrepen. Ontdekking kan moeilijk zijn, niet alleen bij het identificeren van beschikbare services, maar ook bij het begrijpen welke geschikt zijn voor welke taak.
Instacart heeft MCP en UCP in “heel verschillende” gevallen moeten implementeren, en de grootste problemen waar ze tegenaan zijn gelopen zijn faalmodi en latentie, merkte Kundu op. “De responstijden en inzichten van beide diensten zijn heel erg verschillend. Ik zou zeggen dat we waarschijnlijk tweederde van de tijd besteden aan het oplossen van deze foutgevallen.”



