@melandlabs/memory-store 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -984,11 +984,26 @@ async function buildUnified(args) {
984
984
  const wantsAiRag = args.embeddingProvider === "local" || args.memoryBackend === "chroma" || args.insightsBackend === "chroma" || args.knowledgeBackend === "chroma";
985
985
  const aiRag = wantsAiRag ? await loadAiRag() : null;
986
986
  if (args.embeddingProvider === "local") {
987
- const provider = new aiRag.LocalTransformersEmbeddingProvider({ modelName: args.embeddingModel });
988
- unified.embedQuery = async ({ query }) => provider.embedQuery(query);
989
- log(
990
- `embedQuery wired via LocalTransformersEmbeddingProvider (model=${args.embeddingModel ?? "Xenova/all-MiniLM-L6-v2"})`
991
- );
987
+ try {
988
+ if (!aiRag) {
989
+ throw new Error("ai-rag modules not loaded");
990
+ }
991
+ const provider = new aiRag.LocalTransformersEmbeddingProvider({ modelName: args.embeddingModel });
992
+ unified.embedQuery = async ({ query }) => provider.embedQuery(query);
993
+ log(
994
+ `embedQuery wired via LocalTransformersEmbeddingProvider (model=${args.embeddingModel ?? "Xenova/all-MiniLM-L6-v2"})`
995
+ );
996
+ } catch (error) {
997
+ log(
998
+ `Warning: Failed to initialize LocalTransformersEmbeddingProvider: ${error.message}`
999
+ );
1000
+ log(
1001
+ "Semantic search will be disabled. The server will continue with keyword-only search."
1002
+ );
1003
+ log(
1004
+ "To fix: Ensure the model is downloaded or check your network connection to huggingface.co"
1005
+ );
1006
+ }
992
1007
  } else if (args.embeddingProvider === "openrouter") {
993
1008
  const apiKey = process.env.OPENROUTER_API_KEY;
994
1009
  if (!apiKey) {
@@ -996,11 +996,26 @@ async function buildUnified(args) {
996
996
  const wantsAiRag = args.embeddingProvider === "local" || args.memoryBackend === "chroma" || args.insightsBackend === "chroma" || args.knowledgeBackend === "chroma";
997
997
  const aiRag = wantsAiRag ? await loadAiRag() : null;
998
998
  if (args.embeddingProvider === "local") {
999
- const provider = new aiRag.LocalTransformersEmbeddingProvider({ modelName: args.embeddingModel });
1000
- unified.embedQuery = async ({ query }) => provider.embedQuery(query);
1001
- log(
1002
- `embedQuery wired via LocalTransformersEmbeddingProvider (model=${args.embeddingModel ?? "Xenova/all-MiniLM-L6-v2"})`
1003
- );
999
+ try {
1000
+ if (!aiRag) {
1001
+ throw new Error("ai-rag modules not loaded");
1002
+ }
1003
+ const provider = new aiRag.LocalTransformersEmbeddingProvider({ modelName: args.embeddingModel });
1004
+ unified.embedQuery = async ({ query }) => provider.embedQuery(query);
1005
+ log(
1006
+ `embedQuery wired via LocalTransformersEmbeddingProvider (model=${args.embeddingModel ?? "Xenova/all-MiniLM-L6-v2"})`
1007
+ );
1008
+ } catch (error) {
1009
+ log(
1010
+ `Warning: Failed to initialize LocalTransformersEmbeddingProvider: ${error.message}`
1011
+ );
1012
+ log(
1013
+ "Semantic search will be disabled. The server will continue with keyword-only search."
1014
+ );
1015
+ log(
1016
+ "To fix: Ensure the model is downloaded or check your network connection to huggingface.co"
1017
+ );
1018
+ }
1004
1019
  } else if (args.embeddingProvider === "openrouter") {
1005
1020
  const apiKey = process.env.OPENROUTER_API_KEY;
1006
1021
  if (!apiKey) {
@@ -209,11 +209,26 @@ async function buildUnified(args) {
209
209
  const wantsAiRag = args.embeddingProvider === "local" || args.memoryBackend === "chroma" || args.insightsBackend === "chroma" || args.knowledgeBackend === "chroma";
210
210
  const aiRag = wantsAiRag ? await loadAiRag() : null;
211
211
  if (args.embeddingProvider === "local") {
212
- const provider = new aiRag.LocalTransformersEmbeddingProvider({ modelName: args.embeddingModel });
213
- unified.embedQuery = async ({ query }) => provider.embedQuery(query);
214
- log(
215
- `embedQuery wired via LocalTransformersEmbeddingProvider (model=${args.embeddingModel ?? "Xenova/all-MiniLM-L6-v2"})`
216
- );
212
+ try {
213
+ if (!aiRag) {
214
+ throw new Error("ai-rag modules not loaded");
215
+ }
216
+ const provider = new aiRag.LocalTransformersEmbeddingProvider({ modelName: args.embeddingModel });
217
+ unified.embedQuery = async ({ query }) => provider.embedQuery(query);
218
+ log(
219
+ `embedQuery wired via LocalTransformersEmbeddingProvider (model=${args.embeddingModel ?? "Xenova/all-MiniLM-L6-v2"})`
220
+ );
221
+ } catch (error) {
222
+ log(
223
+ `Warning: Failed to initialize LocalTransformersEmbeddingProvider: ${error.message}`
224
+ );
225
+ log(
226
+ "Semantic search will be disabled. The server will continue with keyword-only search."
227
+ );
228
+ log(
229
+ "To fix: Ensure the model is downloaded or check your network connection to huggingface.co"
230
+ );
231
+ }
217
232
  } else if (args.embeddingProvider === "openrouter") {
218
233
  const apiKey = process.env.OPENROUTER_API_KEY;
219
234
  if (!apiKey) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@melandlabs/memory-store",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "type": "module",
5
5
  "files": ["dist", "README.md", "LICENSE"],
6
6
  "main": "./dist/index.js",