搜推算法 · 知识索引
搜索与推荐系统的通用算法笔记,覆盖漏斗架构、Query 理解、多路召回、向量检索、LTR 精排、评价指标与工程实践。面向算法原理与工业界常见做法,不绑定特定业务场景。
系列结构(7 篇)
| # | 文章 | 定位 |
|---|---|---|
| 1 | 搜推算法基础 | 框架:漏斗、多目标、数据闭环 |
| 2 | Query 理解与多路召回 | 算法:Query 流水线 + BM25/RRF/多路融合 |
| 3 | 向量检索与 ANN | 算法:Embedding、HNSW、双塔 |
| 4 | 精排与评价指标 | 算法:LambdaMART + NDCG 度量体系 |
| 5 | AB 实验与线上迭代 | 方法论:分流、主指标/护栏、异常排查 |
| 6 | Python 搜推技术栈 | 工程:FastAPI、asyncio、LightGBM、ONNX |
| 7 | Elasticsearch 检索基础 | 工程:倒排、search_after、读写分离 |
按目标查阅
| 目标 | 入口 |
|---|---|
| 建立整体框架 | 搜推算法基础 |
| 搞懂「搜不到」怎么排查 | Query 理解与多路召回 |
| 理解语义召回 | 向量检索与 ANN |
| 训练精排模型 | 精排与评价指标 |
| 设计 AB 实验 | AB 实验与线上迭代 |
| 写 Python 服务 | Python 搜推技术栈 |
| ES 全文检索工程 | Elasticsearch 检索基础 |
全文脉络
1 | 用户 Query |
与 ES 专题笔记的关系
本系列偏算法与 Python 服务;ES 存储引擎系列(段/Translog、相关度评分、PIT 深分页)偏引擎原理。可以交叉阅读。
推荐阅读顺序
算法主线:
1 | 1 基础 → 2 Query+召回 → 3 向量 → 4 精排+评价 → 5 AB |
工程主线:
1 | 1 基础 → 2 Query+召回 → 6 Python → 7 ES |
两条线可以在第 2 篇之后分叉,第 5 篇 AB 是两条线的汇合点。
维护说明
- 通用算法笔记,随理解深入持续扩展
- 含公式推导、手算示例与算法对比表,便于查阅与自行延伸
- 具体参数与架构需结合业务数据量和延迟预算调整

