Individual skill
opensearch-function-scoring-algorithms
Search relevance and ranking on OpenSearch/Elasticsearch for a two-sided marketplace — candidate retrieval (hybrid BM25 + kNN, RRF, two-tower EBR), base relevance (BM25F, multi_match, LambdaMART), quality signals (Wilson lower bound, Bayesian average, rank_feature saturation/sigmoid), personalization (listing/user/session embeddings), spatial/temporal decay (gauss/exp), marketplace balance (conversion-weighted ranking, supply fairness, Pareto multi-objective), bias correction (IPS, click models, Thompson sampling), empirical evaluation (judgment sets, NDCG, ablation, A/B sizing, CUPED, regression suites), and diversity (MMR, DPP, max-per-host). Triggers on function_score, rank_feature, script_score, kNN, hybrid query, learning-to-rank, two-sided ranking, exposure fairness, NDCG, A/B testing, judgment set construction, ranking ablation, or "why is my OpenSearch ranking bad". Applies to Elasticsearch too — same APIs.
skills/.experimental/opensearch-function-scoring-algorithms/SKILL.md
Source commit cf93c57cac89d6fc3e4194686000411567f5caf3
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Network or broad shell
- Last checked
- Nov 5, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 222
- Repository last updated
- Aug 15, 2026
- License
- MIT
Observed agent integration: codex
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
AGENTS.mddoc · 19,342 bytesSKILL.mdcore · 15,346 bytesSKILL.mdcore · 15,346 bytesSKILL.mdcore · 15,346 bytesassets/templates/_template.mddoc · 1,708 bytesmetadata.jsonasset · 5,136 bytesreferences/_sections.mddoc · 4,513 bytesreferences/bias-click-models.mddoc · 3,301 bytesreferences/bias-counterfactual-eval.mddoc · 4,558 bytesreferences/bias-interleaved-evaluation.mddoc · 4,749 bytesreferences/bias-popularity-debiasing.mddoc · 4,010 bytesreferences/bias-position-ips.mddoc · 4,119 bytesreferences/bias-thompson-sampling.mddoc · 4,402 bytesreferences/decay-exp-freshness.mddoc · 3,424 bytesreferences/decay-gauss-geo.mddoc · 3,305 bytesreferences/decay-multi-field-composition.mddoc · 4,024 bytesreferences/decay-offset-noise.mddoc · 2,811 bytesreferences/decay-scale-calibration.mddoc · 3,189 bytesreferences/div-category-diversity.mddoc · 4,098 bytesreferences/div-dpp-quality-diversity.mddoc · 4,347 bytesreferences/div-max-per-host.mddoc · 3,497 bytesreferences/div-mmr-rerank.mddoc · 4,299 bytesreferences/div-window-penalty.mddoc · 4,043 bytesreferences/eval-ab-sample-size-mde.mddoc · 5,144 bytesreferences/eval-ablation-attribution.mddoc · 5,352 bytesreferences/eval-cuped-variance-reduction.mddoc · 5,463 bytesreferences/eval-graded-judgment-set.mddoc · 4,287 bytesreferences/eval-ndcg-primary-metric.mddoc · 4,592 bytesreferences/eval-online-offline-correlation.mddoc · 4,944 bytesreferences/eval-regression-query-suite.mddoc · 5,663 bytesreferences/market-cold-start-exploration.mddoc · 3,916 bytesreferences/market-conversion-weighted-ranking.mddoc · 3,427 bytesreferences/market-host-quality-signals.mddoc · 4,007 bytesreferences/market-inventory-health.mddoc · 3,660 bytesreferences/market-pareto-multi-objective.mddoc · 4,194 bytesreferences/market-price-relevance.mddoc · 3,986 bytesreferences/market-supply-fairness-lorenz.mddoc · 4,107 bytesreferences/pers-contextual-features.mddoc · 3,527 bytesreferences/pers-cross-encoder-rerank.mddoc · 3,189 bytesreferences/pers-listing-embeddings.mddoc · 3,654 bytesreferences/pers-multi-modal-embeddings.mddoc · 3,600 bytesreferences/pers-real-time-session-vector.mddoc · 3,535 bytesreferences/pers-tower-split-offline-online.mddoc · 3,950 bytesreferences/pers-type-embeddings-cold-start.mddoc · 3,519 bytesreferences/qual-bayesian-average.mddoc · 3,121 bytesreferences/qual-completeness-score.mddoc · 3,088 bytesreferences/qual-log1p-vs-saturation.mddoc · 2,995 bytesreferences/qual-rank-feature-saturation.mddoc · 3,040 bytesreferences/qual-rank-feature-sigmoid.mddoc · 2,897 bytesreferences/qual-wilson-lower-bound.mddoc · 2,807 bytesreferences/recall-hnsw-vs-ivf.mddoc · 2,403 bytesreferences/recall-hybrid-rrf.mddoc · 2,287 bytesreferences/recall-multi-stage.mddoc · 2,428 bytesreferences/recall-prefilter-knn.mddoc · 2,303 bytesreferences/recall-query-expansion.mddoc · 2,791 bytesreferences/recall-two-tower-ebr.mddoc · 2,491 bytesreferences/rel-avoid-boost-inflation.mddoc · 2,610 bytesreferences/rel-bm25-k1-b-tuning.mddoc · 2,752 bytesreferences/rel-bm25f-field-weights.mddoc · 2,372 bytesreferences/rel-listwise-loss.mddoc · 2,699 bytesreferences/rel-multi-match-strategy.mddoc · 2,518 bytesreferences/rel-rescore-over-bool-should.mddoc · 3,183 bytesreferences/rel-script-score-over-function-score.mddoc · 3,173 bytes
Read excerpt
# Marketplace-Research OpenSearch Function Scoring Best Practices
A reference distillation of research-backed algorithms for ranking in two-sided marketplaces (Airbnb, Uber Eats, DoorDash, Etsy, eBay, Booking.com) implemented on OpenSearch or Elasticsearch. Contains **56 rules across 9 categories**, prioritised by cascade effect in the search ranking pipeline. Each rule explains the WHY (the cascade or the bias it corrects), shows incorrect-vs-correct code (OpenSearch JSON queries, Painless scripts, Python pre-processing, evaluation methodology), and links to the canonical source — KDD/SIGIR/WSDM papers, the OpenSearch documentation, and the engineering blogs of the marketplaces that proved these patterns at scale.
## When to Apply
Reach for this skill when:
- Designing a new marketplace search system on OpenSearch or Elasticsearch from scratch
- Tuning function_score / rank_feature / script_score queries that aren't moving the needle
- Setting up hybrid retrieval (BM25 + dense vectors) with Reciprocal Rank Fusion
- Choosing between HNSW and IVF for billion-scale ANN indexes
- Adding personalization via listing/user embeddings or two-tower architectures
- Correcting position bias in click logs before retraining an LTR model
- Designing exposure-fairness or new-listing cold-start exposure allocation