agency-search-relevance-engineer

Designs Elasticsearch and OpenSearch mappings, queries, and hybrid retrieval with judgment-based relevance evaluation.

Updated Jul 14, 2026
One-click install
npx skills add https://github.com/AI-Staffing-Solution-Consultants-LLC/core-engineering-system --skill agency-search-relevance-engineer-ai-staffing-solution-consultants-llc
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: agency-search-relevance-engineer
Source: https://github.com/AI-Staffing-Solution-Consultants-LLC/core-engineering-system/tree/main/.agents/skills/engineering-search-relevance-engineer
Command: npx skills add https://github.com/AI-Staffing-Solution-Consultants-LLC/core-engineering-system --skill agency-search-relevance-engineer-ai-staffing-solution-consultants-llc

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Search systems often fail silently: relevant documents never match, the right results rank on page two, and tuning changes ship based on anecdotes instead of evidence. This Skill treats relevance as a measurable engineering discipline, diagnosing recall versus precision failures and validating every change against a judgment set before it ships. ## Core Features & Use Cases - Mapping and Analyzer Design: Builds index/search analyzer chains with stemming, query-time synonyms, keyword subfields for SKUs, and multi-field structures that preserve scoring signal. - Query Engineering and Hybrid Retrieval: Structures bool queries separating filter, must, and should clauses, and combines BM25 with vector search using reciprocal rank fusion. - Relevance Evaluation Infrastructure: Mines query logs, builds judgment sets, runs nDCG scoring via the rank evaluation API in CI, and gates changes behind offline and online experiments. - Use Case: A product search returns zero results for 31% of tail queries. Use this Skill to diagnose analyzer mismatches with the analyze API, add query-time synonyms, reindex behind an alias, and verify the nDCG improvement against the golden judgment set before flipping the alias. ## Quick Start Diagnose why our Elasticsearch product search returns zero results for common queries and propose an analyzer and query fix validated against a judgment set.

Frequently Asked Questions about agency-search-relevance-engineer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix zero-results queries in Elasticsearch?▼

Zero-results queries usually come from analyzer mismatches, missing synonyms, or overly strict minimum_should_match. Use the _analyze API to compare indexed terms against query-time tokens, align index and search analyzers, add query-time synonyms, and relax matching with patterns like 2<75%.

How do I combine BM25 and vector search in Elasticsearch?▼

Combine BM25 and kNN vector search using reciprocal rank fusion via the retriever API with an rrf block containing a standard retriever and a knn retriever. RRF avoids score normalization problems since BM25 and cosine similarity scores are not comparable.

Should synonyms be applied at index time or query time?▼

Query-time synonyms using synonym_graph filters are generally preferred because they can be updated without reindexing. Index-time synonyms require a full reindex for every change, while query-time synonym sets marked updateable can be refreshed in place.

How do I measure search relevance with nDCG?▼

Use the Elasticsearch _rank_eval API with a judgment set of graded relevance ratings per query. Run it in CI against every query-template change, and fail the build when nDCG drops beyond the noise threshold, with per-query diffs attached.

Why do exact SKU or model number searches fail?▼

Exact identifier searches fail when stemming or tokenization mangles the identifiers. Map SKUs as keyword fields with a lowercase normalizer, and route exact-looking queries to the keyword subfield instead of the stemmed text field.

When should I use vector search instead of BM25?▼

Vector search alone misses exact terms like SKUs and rare keywords that BM25 handles well, while BM25 misses paraphrase and intent. Default to hybrid retrieval with rank fusion, and only adopt a single-mode setup after proving it against the judgment set.