Senior interview questionAsked at Meta · interview write-up
Design an LLM coding assistant end to end: data, model and evaluation.
Model answer
Data: permissively licensed code, deduplicated and filtered, with fill-in-the-middle training so the model completes inside a file, then instruction and repository-level data. Model: a small fast one for inline completion, a larger one for chat and edits. Serving: build context from the cursor's surroundings, open files and retrieved repo snippets, cache the prefix, and cancel stale requests as the user types.
Evaluation: execution-based benchmarks like HumanEval and repo-level tasks offline; acceptance rate and retained code online, through A/B tests.
Practise the rest
40 ML system design questions, 492 in all, each with a model answer. Free.
More from Meta interview questions.
More ML system design interview questions
- You need to copy 500 GB of weights to 1,000 GPU workers over shared 10 Gbps links. What's the lower bound on time, and what would you build?
- Design a job scheduler for ML training and batch inference on a shared GPU cluster.
- Training a retrieval model over a catalogue of millions of items, you use sampled softmax. Why does it need a correction, and how do you choose the classification loss?
- Design an inference API that converts PDFs into Markdown using several models in stages.
- How can LLMs be incorporated into recommendation systems, from metadata enrichment and cold start to generative retrieval and semantic reranking?
- In the recall stage of a recommender, design a model that chooses how many candidates K to retrieve per request given latency and compute cost.