# Design an embedding generation platform: system design interview question

> Generate vectors at scale while keeping updates, deletions, and consumer copies correct during model changes.

Source: https://sysround.com/questions/design-embedding-generation-platform
Updated: 2026-11-05


Difficulty: hard. Levels: Senior, Staff+.

## How the interviewer opens it

"Design a service that generates embeddings for large datasets and incoming updates. It must support model changes and large re-embedding jobs without disrupting consumers."

## What to clarify first

- Dataset size
- Models and compute
- Traffic and read:write mix
- Latency
- Rebuild deadline
- Source behavior
- Consistency and durability
- Retention and migration deadline
- Consumer access
- Scope

## Scope of a strong answer

Core requirements:

- Generate embeddings from a dataset export.
- Apply new records, updates, and deletions.
- Provide vector reads, bulk exports, and incremental changes.
- Replace a model while existing consumers continue to receive current data.

Usually out of scope:

- Train or select the embedding model.
- Extract text or divide documents into chunks.
- Design vector search or ranking.
- Support more than one region.

## What interviewers probe

### Changes during a dataset rebuild

Live changes can overtake export records. Worker failures can leave gaps that a simple completion count does not reveal.

### Model changes and consumer migration

Consumers prepare at different speeds. The previous generation must remain correct until its fixed retirement deadline.

### Consumer exports and change delivery

Consumers need a precise boundary between an export and its feed. Separate writes can lose events or restore deleted records.

### Capacity for live changes and bulk work

The rebuild needs sustained GPU capacity. Current consumers and migrating consumers still need fresh results during the same period.

## Common mistakes

- The design replaces active vectors in place during a model change.
- The design lets old export results replace newer updates or restore deleted records.
- The design retains the previous generation but stops its live updates after activation.
- The design provides exports and feeds without a shared boundary or durable publication rule.
- The design permits consumer pins beyond the promised retention window.
- The capacity estimate ignores live work for the previous generation.

## The bar by level

- **Senior:** Defines source boundaries, revision checks, and deletion fences. Connects exports to durable feeds. Protects live capacity and enforces the migration deadline.
- **Staff+:** States correctness rules across source replay, output commits, and consumer copies. Proves completeness after partial failures. Prices dual-generation freshness and defines expiry behavior.

Practice this question with an AI interviewer: https://sysround.com/practice/new?problem=embedding-generation


---
SysRound (https://sysround.com) is an AI practice tool for system design interviews. It has a voice or typed AI interviewer and a shared whiteboard. At the end, you get feedback on each skill and a model answer. The AI feedback can be wrong.
