MCPcopy Index your code
hub / github.com/simstudioai/sim / l2Normalize

Function l2Normalize

apps/sim/lib/knowledge/embeddings.ts:152–158  ·  view source on GitHub ↗

* Gemini does NOT auto-normalize embeddings when `outputDimensionality` is set below the * native 3072 dimension on `gemini-embedding-001`. Manually L2-normalize so cosine and * inner-product similarity work correctly.

(vector: number[])

Source from the content-addressed store, hash-verified

150 * inner-product similarity work correctly.
151 */
152function l2Normalize(vector: number[]): number[] {
153 let sumSquares = 0
154 for (const v of vector) sumSquares += v * v
155 const norm = Math.sqrt(sumSquares)
156 if (norm === 0) return vector
157 return vector.map((v) => v / norm)
158}
159
160function buildGeminiProvider(modelName: string, apiKey: string): ResolvedProvider['buildRequest'] {
161 return (inputs, inputType) => ({

Callers 1

buildGeminiProviderFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected