diff --git a/extensions/memory-lancedb/index.ts b/extensions/memory-lancedb/index.ts index e45f00fbb57..f02115b1bf6 100644 --- a/extensions/memory-lancedb/index.ts +++ b/extensions/memory-lancedb/index.ts @@ -167,15 +167,20 @@ class Embeddings { apiKey: string, private model: string, baseUrl?: string, + private dimensions?: number, ) { this.client = new OpenAI({ apiKey, baseURL: baseUrl }); } async embed(text: string): Promise { - const response = await this.client.embeddings.create({ + const params: { model: string; input: string; dimensions?: number } = { model: this.model, input: text, - }); + }; + if (this.dimensions) { + params.dimensions = this.dimensions; + } + const response = await this.client.embeddings.create(params); return response.data[0].embedding; } } @@ -298,7 +303,7 @@ const memoryPlugin = { const vectorDim = dimensions ?? vectorDimsForModel(model); const db = new MemoryDB(resolvedDbPath, vectorDim); - const embeddings = new Embeddings(apiKey, model, baseUrl); + const embeddings = new Embeddings(apiKey, model, baseUrl, dimensions); api.logger.info(`memory-lancedb: plugin registered (db: ${resolvedDbPath}, lazy init)`);