MCPcopy Create free account
hub / github.com/QodeXcli/QodeX / rankChunks

Function rankChunks

src/context/retrieval.ts:283–289  ·  view source on GitHub ↗
(queryEmbedding: number[], chunks: Chunk[], topK: number)

Source from the content-addressed store, hash-verified

281
282/** Rank all embedded chunks against a query embedding, best first. */
283export function rankChunks(queryEmbedding: number[], chunks: Chunk[], topK: number): ScoredChunk[] {
284 return chunks
285 .filter(c => c.embedding && c.embedding.length > 0)
286 .map(c => ({ chunk: c, score: cosineSim(queryEmbedding, c.embedding!) }))
287 .sort((a, b) => b.score - a.score)
288 .slice(0, topK);
289}
290
291/**
292 * Hybrid rank: semantic (cosine over embeddings) fused with lexical (BM25) via

Callers 3

retrieval.test.tsFile · 0.85
searchPersistedFunction · 0.85
rankChunksHybridFunction · 0.85

Calls 1

cosineSimFunction · 0.70

Tested by

no test coverage detected