MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / top_k_truncation

Function top_k_truncation

nodedb-cluster/src/distributed_vector/merge.rs:217–239  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

215
216 #[test]
217 fn top_k_truncation() {
218 let mut merger = VectorMerger::new(1);
219 merger.add_shard_result(&ShardSearchResult {
220 shard_id: 0,
221 hits: (0..100)
222 .map(|i| VectorHit {
223 vector_id: i,
224 distance: i as f32 * 0.01,
225 shard_id: 0,
226 doc_id: None,
227 })
228 .collect(),
229 success: true,
230 error: None,
231 });
232
233 let top5 = merger.top_k(5);
234 assert_eq!(top5.len(), 5);
235 // Nearest 5 by distance.
236 for (i, hit) in top5.iter().enumerate() {
237 assert_eq!(hit.vector_id, i as u32);
238 }
239 }
240
241 #[test]
242 fn over_fetch_no_filter() {

Callers

nothing calls this directly

Calls 4

collectMethod · 0.80
add_shard_resultMethod · 0.45
top_kMethod · 0.45
iterMethod · 0.45

Tested by

no test coverage detected