Large-Scale Personalization and Product Knowledge Graph Enhancement Through LLM Integration

doordash · E-commerce · year n/a · source Agentic: yes · promotional bias: low · source-backed · extracted with prompt 0.5.6 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: E-commerce personalization and product knowledge graph automation

DoorDash needed to scale product understanding and personalization as it expanded from restaurant menus into grocery, convenience, alcohol, flowers, pets, retail, and electronics. The company had to convert noisy merchant data into standardized SKUs, build product attributes and relationships, support cold-start personalization for new customers and new products, avoid dangerous hallucinations for high-stakes attributes such as allergens, and make recommendations across a huge and expanding catalog.

Constraints:

Architecture

DoorDash layers LLMs and generative AI on top of traditional ML. The product knowledge graph starts from merchant data and moves from human spreadsheet processing to fine-tuned LLM attribute extraction, RAG-based categorization, and LLM agents for ambiguous product strings that need internal or external lookup. Scaling uses model cascading: heuristics, in-house fine-tuned models, and frontier/API models only for the remaining hard cases, plus output distillation into smaller models. Personalization uses hierarchical RAG over product taxonomy and catalog nodes, LLM world knowledge for complementary recommendations, mapping back to catalog categories, and LLM-based evaluation with scored relevance and explanations. Future work adds semantic IDs and contextual agents, but the talk says that agentic shopping example is not yet production.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  merchant["Merchant product data"] --> extract["Attribute extraction pipeline"]
  merchant --> agent["LLM catalog agent"]
  extract --> cascade["Model cascade"]
  cascade --> distill["Output distillation pipeline"]
  extract --> kg["Product knowledge graph"]
  categories["Category vector index"] --> agent
  agent --> kg
  kg --> personalize["Personalization models"]
  kg --> rag["Hierarchical RAG recommender"]
  personalize --> rag
  rag --> evals["Evaluation pipeline"]
  evals --> personalize
  semantic["Semantic ID roadmap"] --> rag
  semantic --> future["Future contextual agents"]
  kg --> future
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Merchant product data Noisy and incomplete product data from merchants that must be standardized for catalog use. Attribute extraction pipeline, LLM catalog agent
Attribute extraction pipeline Fine-tuned LLM pipeline that converts merchant product data into standardized attributes for SKUs. Merchant product data, Product knowledge graph, Model cascade
Category vector index Vector-search index over product categories used to reduce the context sent to an LLM for categorization. Attribute extraction pipeline, Product knowledge graph, LLM catalog agent
LLM catalog agent Tool-using agent for ambiguous product data that can search internal databases, merchant/manufacturer sites, or third-party data. Merchant product data, Category vector index, Product knowledge graph, Evaluation pipeline
Model cascade Funnel that applies heuristics, in-house fine-tuned models, and frontier/API models to control cost and latency at SKU scale. Attribute extraction pipeline, Output distillation pipeline
Output distillation pipeline Process for using larger model outputs to train smaller models with better throughput, latency, and cost. Model cascade, Attribute extraction pipeline
Product knowledge graph Core catalog representation of SKUs, attributes, store availability, inventory, relationships, and ontology. Attribute extraction pipeline, Category vector index, Personalization models, Hierarchical RAG recommender
Personalization models Traditional ML personalization layer using purchase history, preferences, brand affinity, dietary attributes, and item interactions. Product knowledge graph, Hierarchical RAG recommender, Evaluation pipeline
Hierarchical RAG recommender Complementary recommendation system that retrieves product types, uses LLM world knowledge, maps back to catalog nodes, and expands to terminal categories. Product knowledge graph, Personalization models, Evaluation pipeline
Evaluation pipeline LLM or council-of-LLMs scoring pipeline using chain-of-thought reasoning, relevance scores, metrics aggregation, and explanation feedback. Hierarchical RAG recommender, Personalization models, LLM catalog agent
Semantic ID roadmap Future dense semantic identifier layer intended to simplify RAG, catalog mapping, cold start, and agentic workflows. Product knowledge graph, Hierarchical RAG recommender, Future contextual agents
Future contextual agents Non-production agentic shopping concept for emergency or event-aware carts using memory, inventory, weather APIs, delivery platforms, and tool chaining. Semantic ID roadmap, Product knowledge graph

Data flow

Merchant product data enters the catalog pipeline and is standardized into DoorDash SKUs. Fine-tuned LLMs extract attributes; for large category spaces, vector search retrieves candidate categories and an LLM chooses among them; for cryptic product records, an LLM agent can search internal databases, manufacturer websites, or third-party sources before producing product names. The product knowledge graph feeds downstream personalization. For complementary recommendations, the system starts from a terminal product node, retrieves relevant product types, uses an LLM to rank likely complements, maps results back to the catalog, recursively unfolds child nodes, and finally retrieves concrete items. LLM judges or councils score recommendation relevance and feed explanations back into model improvement.

4 supporting quotes
“we've slowly shifted from this very human-driven process to a more automated LLM driven process.”transcript, stated
“we apply vector search. So create a vector of create a vector index of the different categories that we have to a retrieval step”transcript, stated
“the LLM can you know perform a search either to an internal database or to an external uh website”transcript, stated
“We map it back to our catalog. Now is this the most terminal or granular category? Probably not. So then we unfold it to the child nodes”transcript, stated

Why this architecture

DoorDash keeps traditional ML as the foundation because engagement and preference models still drive personalization. LLMs add world knowledge, language understanding, and reasoning where engagement is sparse, catalog data is noisy, or category spaces are too large for static rules. RAG reduces the 3,000-category context problem before the LLM makes a decision. Agents are reserved for ambiguous records where the model needs external evidence. Cascading and distillation make production cost and latency manageable at roughly 100-million-SKU scale.

4 supporting quotes
“you cannot ignore traditional ML because that's the foundation”transcript, stated
“where engagement is sparse, right? So say best buy comes on door dash today let's say and we don't know anything about consumer engagement”transcript, stated
“that typically leads to poorer metrics, more hallucination as you increase the context size, and of course, it's very very slow.”transcript, stated
“if 88% of our skewers are handled before hitting the large LLM, we're saving you know 88% of the cost”transcript, stated

Models used: GPT-4o · GPT-4o mini · Llama · LLM agents · RAG · Faiss · GPT embeddings · open-source embeddings · LLM-as-judge · council of LLMs · traditional two-tower embeddings

Scale

Alternatives considered (roads not taken)

Keep product knowledge graph construction human-driven

Rejected because: Manual spreadsheet-based processing was slow, expensive, and error-prone.

“initially our process was very human-driven and manual process.”transcript, stated
“This process was very slow, expensive and errorprone to human human errors.”transcript, stated

Use prompt tuning alone for attribute extraction

Rejected because: DoorDash says prompt tuning did not work very well for domain-specific attributes, so fine-tuning was needed.

“there's the prompt tuning as we saw in in a previous talk that doesn't work that very well”transcript, stated
“we needed to fine-tune LLMs on e-commerce data”transcript, stated

Put all 3,000 categories in the LLM context window

Rejected because: Large context increased hallucination, slowed responses by seconds, and produced poorer metrics.

“you can supply all of those to the LLM within the context window.”transcript, stated
“that typically leads to poorer metrics, more hallucination as you increase the context size, and of course, it's very very slow.”transcript, stated

Send every SKU to a frontier/API model

Rejected because: DoorDash uses heuristics and in-house fine-tuned models first so only a small fraction reaches expensive large models.

“you start with heristics, apply smaller models that can handle easier easier examples and then finally you can also go to the bigger models.”transcript, stated
“then only a small fraction goes to API models or frontier models.”transcript, stated

Use RAG and fine-tuning as mutually exclusive choices

Rejected because: The speaker says they are complementary, with RAG reducing a larger set before a fine-tuned LLM performs ranking.

“fine-tuning can be done along with rag. It doesn't need to be independent.”transcript, stated
“rack can be a layer on top of your fine-tuned LLM to do the final ranking.”transcript, stated

Patterns

fine-tuning-adaptation (model-adaptation)

DoorDash fine-tuned LLMs on e-commerce data for domain-specific attribute extraction and precision-sensitive catalog tasks.

“we needed to fine-tune LLMs on e-commerce data”transcript, stated
“fine-tuning really works as like a starting point when you want to look to deploy deploy models in production”transcript, stated

rag-retrieval (retrieval)

DoorDash uses RAG to reduce large category/product spaces before LLM ranking and to generate complementary recommendations from product taxonomy.

“we apply vector search. So create a vector of create a vector index of the different categories that we have to a retrieval step”transcript, stated
“we need to bring in some sort of retrieval augmented generation here and this is how we do it.”transcript, stated

tool-use-orchestration (agentic-catalog)

LLM agents automate the human lookup workflow by searching internal databases, manufacturer websites, or third-party sources for ambiguous merchant data.

“We started using LLM agents and that automates reasoning based tool calling.”transcript, stated
“perform a search either to an internal database or to an external uh website to the manufacturer's website”transcript, stated

cost-aware-routing (serving)

DoorDash cascades from heuristics to smaller fine-tuned models to frontier/API models so most SKUs avoid expensive large-model calls.

“you start with heristics, apply smaller models that can handle easier easier examples and then finally you can also go to the bigger models.”transcript, stated
“if 88% of our skewers are handled before hitting the large LLM, we're saving you know 88% of the cost”transcript, stated

model-distillation (serving)

DoorDash distills larger model outputs into smaller models to improve production throughput, latency, and cost.

“Can you take that and condense or distill that into smaller models”transcript, stated
“that has really helped us improve throughput latency and cost”transcript, stated

llm-as-judge (evaluation)

DoorDash uses a stronger LLM or council of LLMs with chain-of-thought reasoning to score recommendation relevance.

“evaluation is going to again be by LLM. So we're going to use either a more powerful LLM or a council of LLMs”transcript, stated
“score three if things are highly relevant, score two somewhat relevant, score one not relevant.”transcript, stated

data-quality-loop (catalog-quality)

Evaluation explanations and generated labels feed back into traditional ML, RAG recommendations, search relevance, and model refinements.

“We try to get these uh filtered out, pass it through a metrics pipeline.”transcript, stated
“we also use the explanations as a feedback loop to improve recommendations as well as identify our limitations”transcript, stated

Tradeoffs

Product attribute extraction approach

Chose Fine-tuned smaller models after GPT-4-class baselines over Relying only on larger prompted models.

Rationale: Fine-tuning improved task performance, and smaller models lowered cost and increased speed while maintaining useful performance.

“we did finetuning on a smaller model so the 40 mini and eventually a llama model”transcript, stated
“which then both brought down costs increased speed and still gave us good performance.”transcript, stated

Category lookup strategy

Chose RAG over a category vector index over Long-context prompt with all categories.

Rationale: Retrieval reduced context size, improved top-K metrics, reduced hallucination, and sped responses.

“There's like long context LLM that's available even with an API, but that typically leads to poorer metrics, more hallucination”transcript, stated
“for the top few we are able to send those to the LLM and achieve better metrics for the top K candidates”transcript, stated

SKU processing cost strategy

Chose Model cascade over Single frontier model for every SKU.

Rationale: Heuristics and in-house fine-tuned models handle most SKUs before expensive frontier models, reducing latency and cost.

“first we process that heristics. Then we use some in-house fine-tuned models that that cover a large fraction of the SKS.”transcript, stated
“we we reduce the latency. Two we reduce the cost.”transcript, stated

Cold-start personalization strategy

Chose Blend traditional ML with LLM world knowledge over Wait for user/product engagement history.

Rationale: Traditional engagement models fail for new customers or products; LLMs can supply prior world knowledge that is then mapped back to the catalog.

“What about when there are new products? As we keep expanding to new products, we are bringing in this cold start issue.”transcript, stated
“this is where the real world knowledge of LLMs comes in”transcript, stated

Gotchas (what bit them)

Product-catalog automation is high stakes when attributes affect health.

Root cause: Attributes such as allergen-free status need high precision before production exposure.

Resolution: Fine-tune LLMs on e-commerce data and use strong evaluation to meet the required accuracy bar.

“if you need to know this chips bag of chips is really you know allergenfree we have to be very precise”transcript, stated
“how do we get these LLM to the level of precision where we can be confident at putting them in production”transcript, stated

Long-context category prompts degrade quality and latency.

Root cause: Supplying thousands of categories to an LLM increases hallucination, slows response time, and worsens metrics.

Resolution: Use vector search to retrieve top candidate categories, then ask the LLM to decide among a smaller set.

“there's about 3,000 categories. And you can supply all of those to the LLM within the context window.”transcript, stated
“we apply vector search. So create a vector of create a vector index of the different categories”transcript, stated

Cryptic merchant data can defeat both direct LLM and RAG approaches.

Root cause: Abbreviated product strings may omit facts needed for exact product identification.

Resolution: Use LLM agents with internal/external search tools to mimic the previous human lookup workflow.

“the input data is GRPR NTR 4VB.”transcript, stated
“even the LLM by itself can't make a lot of sense.”transcript, stated

Agents introduce hallucination risk even when they improve lookup.

Root cause: Tool-calling agents reason over external information and synthesize outputs, so unsupported names can still appear.

Resolution: Use strong evaluations, prompt tuning, reasoning-process tuning, and validation after results are produced.

“Of course, there's the risks of hallucination and so strong eval are important when working with uh agents.”transcript, stated
“making sure that you tweak the the prompts as well as the reasoning process so that it it does not hallucinate as much”transcript, stated

LLM world knowledge still lacks DoorDash's full catalog context.

Root cause: The catalog space is huge and cannot be fully placed into the model context.

Resolution: Map generated recommendations back to catalog nodes and invest in semantic IDs to simplify RAG and catalog mapping.

“Even though it has real world knowledge, it actually lacks larger catalog and item context just because you cannot increase the context so much.”transcript, stated
“this is going to actually simplify a lot of things. It's going to simplify rag and catalog mapping”transcript, stated

Evaluation

DoorDash evaluates catalog and personalization systems with task-performance comparisons, strong evaluations for agents, top-K category metrics, LLM or council-of-LLMs judging with chain-of-thought reasoning, three-level relevance scores, metrics pipelines, and explanation feedback loops.

Metrics: attribute extraction task performance · top-K candidate category metrics · hallucination reduction · latency reduction · cost reduction · SKU coverage before frontier-model calls · LLM judge score 3/2/1 relevance · aggregate metrics pipeline performance · recommendation explanation feedback

4 supporting quotes
“we needed to fine-tune LLMs on e-commerce data on the large swath of data that we had to both follow guidelines better and then eventually improve on the task performance.”transcript, stated
“achieve better metrics for the top K candidates by the model uh and get faster responses.”transcript, stated
“evaluation is going to again be by LLM. So we're going to use either a more powerful LLM or a council of LLMs”transcript, stated
“pass it through a metrics pipeline. So we have an aggregate of how we are actually performing”transcript, stated

Outcomes

DoorDash describes expansion from ~100-item restaurant menus to ~100,000-item retailers, a three-sided marketplace of merchants/consumers/dashers, about 3,000 categories, order-of-100-million SKUs, 88% SKU handling before large-LLM calls in the cascade, product spaces that expand deeply and broadly, and future agentic workflows over weather, inventory, delivery, long/short-term memory, and cart-building.

4 supporting quotes
“we've slowly shifted from this very human-driven process to a more automated LLM driven process.”transcript, stated
“if 88% of our skewers are handled before hitting the large LLM”transcript, stated
“this not only helps us with cold start recommendations it also helps us to bring in customers who are only on restaurant.”transcript, stated
“No, that's like what's coming next.”transcript, stated