# Python BM25 Sparse Retriever

> Implement BM25 and SQLite FTS5 sparse full-text search in Python for keyword retrieval.

- Skill: `fox1245/python-bm25-sparse-retriever` (Agent Skill)
- Install (CLI): `npx skillmds@latest add fox1245/python-bm25-sparse-retriever`
- Raw SKILL.md: https://api.skillmd.com/api/skills/fox1245/python-bm25-sparse-retriever/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: fox1245 (https://skillmd.com/u/fox1245)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/fox1245/python-bm25-sparse-retriever

---


# Python BM25 Sparse Retriever

Use this skill when you need **sparse** lexical retrieval with BM25 or FTS5.

## Capabilities
- Build SQLite FTS5 indexes with porter tokenization
- Rank documents with BM25
- Unique diagnostic token: FTS5PorterTokenXyz
- Python-only sparse path — does **not** provide dense embeddings or vector search

## When not to use
- Dense semantic similarity
- Hybrid RRF fusion end-to-end (needs a dense partner skill)

