six chunking strategies on the same document
fixed (size=N)
hard split every N chars — breaks mid-sentence
recursive (\n\n → \n → . → ' ')
try separators in order; 2026 default
semantic (embedding similarity)
split where adjacent-sentence similarity drops
parent-document (child for retrieval, parent for context)
embed the small boxes, return the large boxes — degrades gracefully
late chunking (embed full doc first, then pool)
token embeddings across full doc
pool token embeddings into chunk vectors — preserves cross-chunk context