Files
openclaw/src/memory-host-sdk/host/embedding-vectors.ts
2026-04-05 07:34:33 +01:00

9 lines
349 B
TypeScript

export function sanitizeAndNormalizeEmbedding(vec: number[]): number[] {
const sanitized = vec.map((value) => (Number.isFinite(value) ? value : 0));
const magnitude = Math.sqrt(sanitized.reduce((sum, value) => sum + value * value, 0));
if (magnitude < 1e-10) {
return sanitized;
}
return sanitized.map((value) => value / magnitude);
}