Semantic Search for AI Agents at Scale: Retrieval and Ranking for LinkedIn's Hiring Assistant

linkedin · HR · 2026 · 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: AI recruiter sourcing and billion-scale semantic search

LinkedIn needed Hiring Assistant to translate natural-language recruiter requirements into qualified candidate matches across more than 1.3 billion member profiles, without the quality-coverage failures of keyword and faceted search.

Constraints:

Architecture

LinkedIn built MUSE-centered semantic retrieval for Hiring Assistant: a prompt-engineered LLM parses recruiter queries into structured role details and qualifications, MUSE dual-tower Matryoshka embeddings retrieve candidates from a 1B+ ANN index with ABM post-filters, results blend with other sourcing strategies in an L2 ranker, an LLM guard evaluates candidate fit, and a Lambda-style production pipeline maintains profile embeddings through full weekly rebuilds plus daily CDC-driven delta inference.

Diagram confidence: explicit (topology described by the source).

flowchart LR
  A["Recruiter query"] --> B["Query understanding LLM"]
  B --> C["MUSE query tower"]
  D["Batch layer"] --> E["MUSE profile tower"]
  F["Speed layer"] --> E
  E --> G["Iceberg tables"]
  G --> H["ANN retrieval index"]
  G --> I["Venice feature store"]
  C --> H
  H --> J["ABM post-filters"]
  J --> K["L2 ranker"]
  C --> K
  I --> K
  K --> L["LLM candidate evaluator"]
  L --> M["Recruiter-facing results"]
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Recruiter query Natural-language role requirements submitted to Hiring Assistant. Query understanding LLM
Query understanding LLM Parses free text into role details and qualifications. Recruiter query, MUSE query tower
MUSE query tower Encodes structured role details and qualifications into a query embedding. Query understanding LLM, ANN retrieval index, L2 ranker
MUSE profile tower Encodes member profiles and structured attributes into profile embeddings. Batch layer, Speed layer, Iceberg tables, ANN retrieval index, Venice feature store
Batch layer Full-corpus embedding inference and weekly rebuilds for ANN and feature stores. MUSE profile tower, Iceberg tables
Speed layer Daily CDC-driven delta inference for new or updated member profiles. MUSE profile tower, Iceberg tables
Iceberg tables Date-partitioned source of truth for embeddings, deltas, training features, and deletions. Batch layer, Speed layer, ANN retrieval index, Venice feature store
ANN retrieval index IVFPQ approximate nearest-neighbor index for billion-member retrieval. MUSE query tower, Iceberg tables, ABM post-filters, L2 ranker
ABM post-filters Attribute-based filters applied after semantic retrieval. ANN retrieval index, L2 ranker
Venice feature store Stores full 4096-dimensional embeddings for ranking features. Iceberg tables, L2 ranker
L2 ranker Blends strategies and ranks candidates using engagement features plus MUSE embeddings. ANN retrieval index, ABM post-filters, Venice feature store, LLM candidate evaluator
LLM candidate evaluator Evaluates candidate fit and explains why passed candidates match the role. L2 ranker, Recruiter-facing results
Recruiter-facing results Final candidate set presented to recruiters with fit explanations. LLM candidate evaluator

Data flow

A recruiter writes a natural-language query. Query understanding extracts structured details and qualifications. MUSE encodes the query, ANN retrieval scans precomputed profile embeddings, ABM post-filters narrow candidates, the L2 ranker blends and reorders sourcing strategies using full-dimensional MUSE features, and an LLM candidate evaluator screens and explains candidate-role fit before recruiters see results.

4 supporting quotes
“the recruiter describes what they’re looking for in natural language.”article, stated
“a prompt-engineered proprietary LLM parses the free text into structured role details (title, seniority, location) and a list of qualifications.”article, stated
“An approximate nearest neighbor (ANN) search scans over 1B+ pre-computed profile embeddings to find the closest matches.”article, stated
“The pool is still scrutinized by an LLM guard, which evaluates each candidate's fit and generates a natural-language explanation”article, stated

Why this architecture

LinkedIn separates query understanding, embedding retrieval, ranking, evaluation, and embedding-refresh infrastructure because no existing search strategy could satisfy both quality and liquidity at billion-profile scale, and Matryoshka embeddings let one model serve retrieval and ranking with different dimensional budgets.

3 supporting quotes
“no existing approach could deliver both high-quality matches and enough results for every query”article, stated
“Retrieval and ranking have very different computational budgets:”article, stated
“MUSE produces Matryoshka embeddings — vectors that can be truncated to different dimensionalities depending on the client task”article, stated

Models used: MUSE Teacher · Expert Judge · MUSE dual-tower embeddings · open-weight reasoning model · proprietary LLM · vLLM · DCNv2 ranker

Scale

Alternatives considered (roads not taken)

Faceted search

Rejected because: Faceted search answered many queries but returned many unqualified profiles.

“faceted search answered nearly every query but surfaced many unqualified profiles”article, stated

Boolean keyword search

Rejected because: Boolean search had better precision but inadequate coverage for natural-language recruiter requirements.

“boolean (keyword) search offered better precision but returned zero results for nearly half of queries.”article, stated

Use generic embedding similarity without product-policy supervision

Rejected because: Generic similarity clusters semantically related profiles but does not encode the product definition of qualification fit.

“The base model already clusters semantically related texts, but its notion of similarity is generic”article, stated
“Fine-tuning on teacher labels re-organizes the geometry so that proximity reflects qualification match as defined by the product policy”article, stated

Rely on exact kNN with post-filters

Rejected because: LinkedIn found ANN recall and ABM post-filter losses compound, motivating future pre-filtered infrastructure investment.

“ANN search trades recall for speed, and post-filters then discard more candidates after retrieval — the two losses multiply.”article, stated

Patterns

retrieval-ranking (retrieval)

MUSE powers L1 semantic retrieval, then the L2 ranker blends, scores, and reorders candidates with MUSE embeddings as relevance features.

“semantic EBR results are merged with those from other strategies. The L2 ranker scores and re-orders the combined pool”article, stated
“MUSE embeddings serve double duty: powering L1 retrieval and feeding the L2 ranker as input features — ensuring the same relevance signal that surfaces a candidate also influences how that candidate is scored.”article, stated

llm-as-judge (evaluation)

The Expert Judge and MUSE Teacher provide scalable qualification-fit labels and offline evaluation for semantic search.

“The Expert Judge — a prompt-engineered state-of-the-art proprietary LLM developed and maintained by our partner evaluation team”article, stated
“The embedding space is only as good as the signal that shapes it. We built the MUSE Teacher to close the gap between engagement-based supervision”article, stated

model-distillation (model-adaptation)

LinkedIn compresses the Expert Judge's multi-step relevance reasoning into MUSE teacher labels and then into fixed-size dual-tower embeddings.

“a single embedding model that distills the teacher's multi-step reasoning about qualification match into a fixed-size vector comparison.”article, stated

batch-offline-processing (infrastructure)

The batch layer performs full-corpus profile inference and weekly rebuilds, while daily CDC handles deltas.

“MUSE's serving infrastructure follows a Lambda architecture — a batch layer and a speed layer feeding a shared serving layer.”article, stated

safety-policy-enforcement (governance)

Qualification matching is governed by product policy and responsible AI principles encoded in the judge constitution.

“Our product team codified that definition into a product policy. It enforces two pillars:”article, stated
“Both roles are governed by the same prompt-encoded constitution, which is what keeps evaluation and training aligned.”article, stated

Tradeoffs

Use Matryoshka embeddings at two dimensions.

Chose 2048-dimensional retrieval and 4096-dimensional ranking features over one embedding dimensionality for every stage.

Rationale: Retrieval needs speed over 1B+ profiles, while ranking can afford higher fidelity over fewer candidates.

“Retrieval and ranking have very different computational budgets:”article, stated
“small enough for fast approximate search, large enough to capture qualification-level semantics.”article, stated

Train on qualification-fit labels instead of engagement labels.

Chose MUSE Teacher labels governed by product policy over engagement-optimized retrieval supervision.

Rationale: Engagement signals do not directly encode qualified candidate-role fit.

“All supervision comes from MUSE Teacher labels — not engagement signals.”article, stated
“Fine-tuning on teacher labels re-organizes the geometry so that proximity reflects qualification match as defined by the product policy — baking the teacher's multi-step reasoning into a single cosine similarity.”article, stated

Keep fewer but better candidate results.

Chose higher-quality candidate pool over maximizing candidate volume.

Rationale: Online results improved relevance and InMail sends while candidates sourced declined.

“the system surfaces a tighter, higher-quality candidate pool rather than optimizing for volume.”article, stated
“A two-week A/B test validates this in production (here relative gains): post-LLM Guard HRR +2.7%, InMail Sends per seat +4.1%, Eval Pass Rate trending +3.8%, with candidates sourced per seat down ~4% — fewer but better. InMail Accepts per seat trends +1.8%.”article, stated

Gotchas (what bit them)

Search strategy tradeoffs broke under natural-language recruiter queries.

Root cause: Structured fields and keyword overlap do not capture paragraph-length qualifications or soft skills.

Resolution: Use LLM query understanding plus semantic embeddings trained on qualification-fit judgments.

“Keyword matching fails because the same qualification can be described in dozens of ways. Attribute-based filtering fails because many qualifications — problem-solving ability, cross-functional leadership, domain expertise — don't map to structured fields at all.”article, stated
“many qualifications — problem-solving ability, cross-functional leadership, domain expertise — don't map to structured fields at all.”article, stated

Human labels are not always the ceiling for knowledge-intensive relevance judgments.

Root cause: Human annotators made mistakes on technical qualifications where high-confidence models had read the full context.

Resolution: Analyze disagreements and treat human labels as a noisy signal rather than an unquestioned ceiling.

“high-confidence model predictions were correct roughly four out of five times — many apparent "errors" turned out to be human mistakes”article, stated
“Treat human labels as a noisy signal, not a ceiling — and invest in understanding where each source is more reliable.”article, stated

ANN retrieval and post-filtering can multiply recall losses.

Root cause: Retrieved candidates may be filtered out after ANN search, wasting slots that exact pre-filtered search might have used for stronger matches.

Resolution: Introduce inline filtering and plan future infrastructure for pre-filtered exact or improved retrieval.

“ABM + EBR spends limited retrieval slots on candidates that get filtered out, while strong matches that an exact search would find are never scored.”article, stated
“To cut wasted computation, we introduced inline filtering that skips distance calculation for filtered documents entirely, making latency scale with the number of returned results rather than nprobe.”article, stated

Billion-member embedding freshness is an infrastructure problem, not only a modeling problem.

Root cause: Recruiter results must reflect updated member data, new model versions, and regulatory deletions.

Resolution: Use Lambda architecture with weekly full rebuilds, daily CDC delta inference, and Iceberg tables as the source of truth.

“Recruiters expect sourcing results to reflect the latest member data, and every new model version needs end-to-end validation before it ships.”article, stated

Evaluation

LinkedIn evaluates MUSE through a cascade: PyTorch retrieval metrics on held-out data, Expert Judge replay of production queries comparing candidate models to control, and controlled online A/B tests measuring relevance, engagement, and sourcing throughput.

Metrics: Recall@k · MAP@k · NDCG@k · Highly Relevant Rate · Facepalm Rate · liquidity · candidate share · Eval Pass Rate · InMail Sends per seat · Viewed Contact Rate

3 supporting quotes
“Stage 1: PyTorch training evaluation. Standard retrieval metrics — Recall@k, MAP@k, NDCG@k — on held-out data, completing in hours — the fast-feedback loop for modeling hypotheses before anything touches infrastructure.”article, stated
“Production queries are sampled, and the queries from all sourcing strategies are replayed end-to-end — query understanding, retrieval, ABM filtering, and ranking — with Expert Judge assessing the relevance of returned candidates.”article, stated
“Stage 3: Online Evaluation. The final gate — a controlled A/B test on live traffic tracking relevance quality”article, stated

Outcomes

The system operates over 1B+ precomputed profile embeddings, daily CDC updates, weekly full rebuilds, and an online query embedding endpoint under 100ms p95.

3 supporting quotes
“MUSE-powered semantic retrieval delivers the best of both worlds as a single sourcing strategy”article, stated
“semantic retrieval's candidate share rises from 18% to 31% — confirming improved retrieval-ranker consistency.”article, stated
“A two-week A/B test validates this in production (here relative gains): post-LLM Guard HRR +2.7%, InMail Sends per seat +4.1%, Eval Pass Rate trending +3.8%, with candidates sourced per seat down ~4% — fewer but better.”article, stated