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

Method encode

nodedb-codec/src/vector_quant/ternary/codec.rs:67–82  ·  view source on GitHub ↗
(&self, v: &[f32])

Source from the content-addressed store, hash-verified

65 type Query = TernaryQuery;
66
67 fn encode(&self, v: &[f32]) -> TernaryQuantized {
68 let (trits, scale) = quantize(v);
69 let hot = pack_hot(&trits);
70 let header = QuantHeader {
71 quant_mode: QuantMode::TernarySimd as u16,
72 dim: self.dim as u16,
73 global_scale: scale,
74 residual_norm: 0.0,
75 dot_quantized: 0.0,
76 outlier_bitmask: 0,
77 reserved: [0; 8],
78 };
79 let uqv = UnifiedQuantizedVector::new(header, &hot, &[])
80 .expect("ternary encode: layout must be valid");
81 TernaryQuantized(uqv)
82 }
83
84 fn prepare_query(&self, q: &[f32]) -> TernaryQuery {
85 let (trits, scale) = quantize(q);

Calls 4

quantizeFunction · 0.85
pack_hotFunction · 0.85
TernaryQuantizedClass · 0.85
expectMethod · 0.45