Cosine similarity·2 min
Recap
0 / 1
You've built the entire comparison layer of a search engine out of three small functions:
What you have so far
dot(a, b) — alignment of two vectors
l2norm(a) — length of one vector
cosine(a, b) — angle-only similarity = dot / (norm·norm)
scoreAll(q, corpus) — cosine of one query vs every doc → a score per doc
A query in, one score per document out. The only thing standing between you and a search engine is picking the best few scores — that's the next chapter: topK and the full search call.