@xfabric/memory 0.2.20 → 0.2.22

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.
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ export { DEFAULT_CONFIG, BATCH_FAILURE_LIMIT, SESSION_DIRTY_DEBOUNCE_MS, EMBEDDI
3
3
  export { MemoryManager } from "./memory-manager.js";
4
4
  export { memorySearch, memoryGet, createMemorySearchToolDef, createMemoryGetToolDef, } from "./tools/index.js";
5
5
  export type { EmbeddingProvider, EmbeddingProviderResult, ProviderConfig } from "./providers/index.js";
6
- export { createEmbeddingProvider, createOpenAIProvider, createGeminiProvider, createLocalProvider, isLocalAvailable, computeProviderKey, runOpenAiEmbeddingBatches, runGeminiEmbeddingBatches, runWithConcurrency, BatchFailureTracker, } from "./providers/index.js";
6
+ export { createEmbeddingProvider, createOpenAIProvider, computeProviderKey, runOpenAiEmbeddingBatches, runGeminiEmbeddingBatches, runWithConcurrency, BatchFailureTracker, } from "./providers/index.js";
7
7
  export { MemoryStorage, createDatabase, type StorageOptions, type CreateDatabaseResult, } from "./storage/index.js";
8
8
  export { ensureMemoryIndexSchema, migrateSchema, ensureColumn, SCHEMA_VERSION, type SchemaStatus, } from "./storage/index.js";
9
9
  export { cosineSimilarity, loadSqliteVec, isSqliteVecAvailable } from "./storage/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ DEFAULT_FLUSH_SOFT_THRESHOLD_TOKENS, DEFAULT_FLUSH_RESERVE_TOKENS_FLOOR, SILENT_
8
8
  export { MemoryManager } from "./memory-manager.js";
9
9
  // Tools
10
10
  export { memorySearch, memoryGet, createMemorySearchToolDef, createMemoryGetToolDef, } from "./tools/index.js";
11
- export { createEmbeddingProvider, createOpenAIProvider, createGeminiProvider, createLocalProvider, isLocalAvailable, computeProviderKey,
11
+ export { createEmbeddingProvider, createOpenAIProvider, computeProviderKey,
12
12
  // Batch API exports
13
13
  runOpenAiEmbeddingBatches, runGeminiEmbeddingBatches, runWithConcurrency, BatchFailureTracker, } from "./providers/index.js";
14
14
  // Storage
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -20,8 +20,6 @@ export declare class MemoryManager {
20
20
  private batchDisabled;
21
21
  private batchDisableReason?;
22
22
  private batchFailureTracker;
23
- private openAiClient?;
24
- private geminiClient?;
25
23
  private sqliteVecLoaded;
26
24
  private sqliteVecError?;
27
25
  private syncIntervalTimer;
@@ -69,7 +67,7 @@ export declare class MemoryManager {
69
67
  */
70
68
  private embedWithFallback;
71
69
  /**
72
- * Activate fallback provider
70
+ * Activate fallback provider (no-op — LiteLLM is the only provider)
73
71
  */
74
72
  private activateFallbackProvider;
75
73
  /**
@@ -165,33 +163,16 @@ export declare class MemoryManager {
165
163
  */
166
164
  private buildEmbeddingBatches;
167
165
  /**
168
- * Run batch with timeout retry (single retry on timeout)
169
- */
170
- private runBatchWithTimeoutRetry;
171
- /**
172
- * Run batch with fallback to inline embedding on failure
173
- */
174
- private runBatchWithFallback;
175
- /**
176
- * Embed chunks using async batch API (OpenAI or Gemini)
177
- * Exposed for advanced use cases where caller controls chunking
166
+ * Embed chunks with cache check, then inline batch via LiteLLM
178
167
  */
179
168
  embedChunksWithAsyncBatch(chunks: Array<{
180
169
  text: string;
181
170
  hash: string;
182
171
  startLine: number;
183
172
  endLine: number;
184
- }>, entry: MemoryFileEntry, source: MemorySource): Promise<number[][]>;
185
- /**
186
- * Embed chunks using OpenAI async batch API
187
- */
188
- private embedChunksWithOpenAiBatch;
189
- /**
190
- * Embed chunks using Gemini async batch API
191
- */
192
- private embedChunksWithGeminiBatch;
173
+ }>, _entry: MemoryFileEntry, _source: MemorySource): Promise<number[][]>;
193
174
  /**
194
- * Embed chunks using inline batch API (fallback)
175
+ * Embed chunks using inline batch API
195
176
  */
196
177
  private embedChunksInline;
197
178
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"memory-manager.d.ts","sourceRoot":"","sources":["../src/memory-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-manager.d.ts","sourceRoot":"","sources":["../src/memory-manager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,YAAY,EAEZ,YAAY,EACZ,WAAW,EACX,oBAAoB,EAIpB,kBAAkB,EAClB,iBAAiB,EACjB,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,eAAe,EAChB,MAAM,YAAY,CAAC;AAiGpB;;GAEG;AACH,qBAAa,aAAa;IAwDtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAvDzB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,cAAc,CAAwC;IAC9D,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,kBAAkB,CAAY;IACtC,OAAO,CAAC,MAAM,CAAS;IAGvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,gBAAgB,CAAqB;IAC7C,OAAO,CAAC,kBAAkB,CAAqB;IAG/C,OAAO,CAAC,4BAA4B,CAAK;IACzC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,gBAAgB,CAAkC;IAG1D,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,mBAAmB,CAA6B;IAIxD,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,cAAc,CAAC,CAAS;IAGhC,OAAO,CAAC,iBAAiB,CAA+B;IAGxD,OAAO,CAAC,UAAU,CAAC,CAAS;IAG5B,OAAO,CAAC,aAAa,CAAC,CAAQ;IAG9B,OAAO,CAAC,aAAa,CAGjB;IAGJ,OAAO,CAAC,WAAW,CAAqB;IACxC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAQ;IAG9C,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,iBAAiB,CAA+B;IAGxD,OAAO,CAAC,kBAAkB,CAA6B;IAEvD,OAAO;IAQP;;OAEG;WACU,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC;IA2FxF;;OAEG;IACH,OAAO,CAAC,gBAAgB;IASxB;;OAEG;YACW,YAAY;IAc1B;;OAEG;IACH,OAAO,KAAK,QAAQ,GAQnB;IAED;;OAEG;IACH,OAAO,KAAK,WAAW,GAMtB;IAED;;OAEG;IACG,WAAW,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBrD;;OAEG;IACG,MAAM,CACV,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,aAAa,GAAG;QAAE,MAAM,CAAC,EAAE,YAAY,CAAA;KAAO,GACtD,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAsDhC;;OAEG;YACW,iBAAiB;IA0B/B;;OAEG;YACW,wBAAwB;IAItC;;OAEG;IACG,QAAQ,CAAC,MAAM,EAAE;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IA8BpE;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAuC9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmBxB;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAmF9B;;OAEG;YACW,iBAAiB;IA4B/B;;OAEG;YACW,eAAe;IAS7B;;OAEG;YACW,WAAW;IAuCzB;;OAEG;YACW,eAAe;IAiE7B;;OAEG;YACW,gBAAgB;IAiC9B;;OAEG;YACW,gBAAgB;IAiC9B;;OAEG;YACW,gBAAgB;IAmE9B;;OAEG;YACW,iBAAiB;IAoD/B;;OAEG;IACH,OAAO,CAAC,cAAc;IAMtB;;OAEG;YACW,eAAe;IA6B7B;;OAEG;YACW,SAAS;IAwCvB;;OAEG;YACW,aAAa;IAoC3B;;OAEG;YACW,UAAU;IAuFxB;;OAEG;YACW,mBAAmB;IAuBjC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA2B7B;;OAEG;IACG,yBAAyB,CAC7B,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,EACjF,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IA2BtB;;OAEG;YACW,iBAAiB;IA8B/B;;OAEG;YACW,aAAa;IAuB3B;;;OAGG;IACH,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAS/C;;OAEG;YACW,wBAAwB;IAkCtC;;OAEG;YACW,kBAAkB;IA+DhC;;OAEG;YACW,aAAa;IAsB3B;;;OAGG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAQtD;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAQjC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAO7B;;;;OAIG;IACH,oBAAoB,IAAI,IAAI;IAU5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAqBzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAOxB;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAOnC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwB5B;;OAEG;IACH,eAAe,IAAI;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB;IAiBD;;OAEG;IACH,SAAS,IAAI,YAAY;IA0DzB;;OAEG;IACH,uBAAuB,IAAI,WAAW;IA2BtC;;OAEG;IACG,0BAA0B,IAAI,OAAO,CAAC,WAAW,CAAC;IAkBxD;;OAEG;IACH,oBAAoB,IAAI,WAAW;IAkBnC;;OAEG;IACH,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAOvC;;OAEG;IACH,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI;IAWzC;;OAEG;YACW,oBAAoB;IAuClC;;OAEG;YACW,oBAAoB;IA0ClC;;OAEG;IACG,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GACjC,OAAO,CAAC,MAAM,CAAC;IAqDlB;;;OAGG;IACG,WAAW,CACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,iBAAiB,CAAC;IAiB7B;;;;;;;OAOG;IACG,aAAa,CAAC,MAAM,CAAC,EAAE;QAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;QAC9D,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;KACvC,GAAG,OAAO,CAAC,WAAW,CAAC;IA6CxB;;OAEG;IACH,cAAc,IAAI,iBAAiB,GAAG,IAAI;CAG3C"}
@@ -1,12 +1,12 @@
1
1
  import { join, relative, resolve, dirname, basename, sep } from "node:path";
2
2
  import { readFile, stat, readdir, copyFile, rename, unlink, open as fsOpen } from "node:fs/promises";
3
3
  import { existsSync, mkdirSync, statSync, readdirSync } from "node:fs";
4
- import { SESSION_DIRTY_DEBOUNCE_MS, EMBEDDING_RETRY_MAX_ATTEMPTS, EMBEDDING_RETRY_BASE_DELAY_MS, EMBEDDING_RETRY_MAX_DELAY_MS, OPENAI_BATCH_ENDPOINT, } from "./types.js";
4
+ import { SESSION_DIRTY_DEBOUNCE_MS, EMBEDDING_RETRY_MAX_ATTEMPTS, EMBEDDING_RETRY_BASE_DELAY_MS, EMBEDDING_RETRY_MAX_DELAY_MS, } from "./types.js";
5
5
  import { hashText } from "./utils/hash.js";
6
6
  import { retry } from "./utils/retry.js";
7
7
  import { Semaphore } from "./utils/concurrency.js";
8
- import { isRetryableEmbeddingError, isBatchTimeoutError, isBatchUnavailableError, } from "./utils/error-detection.js";
9
- import { createEmbeddingProvider, runOpenAiEmbeddingBatches, runGeminiEmbeddingBatches, BatchFailureTracker, } from "./providers/index.js";
8
+ import { isRetryableEmbeddingError, } from "./utils/error-detection.js";
9
+ import { createEmbeddingProvider, BatchFailureTracker, } from "./providers/index.js";
10
10
  import { MemoryStorage } from "./storage/sqlite.js";
11
11
  import { loadSqliteVec } from "./storage/sqlite-vec.js";
12
12
  import { chunkMarkdown } from "./chunking/markdown.js";
@@ -57,9 +57,6 @@ export class MemoryManager {
57
57
  batchDisabled = false;
58
58
  batchDisableReason;
59
59
  batchFailureTracker = new BatchFailureTracker();
60
- // OpenAI/Gemini client references for batch API
61
- openAiClient;
62
- geminiClient;
63
60
  // sqlite-vec availability
64
61
  sqliteVecLoaded = false;
65
62
  sqliteVecError;
@@ -180,14 +177,12 @@ export class MemoryManager {
180
177
  * Initialize the embedding provider
181
178
  */
182
179
  async initProvider() {
183
- const apiKey = this.config.remote?.apiKey ?? process.env.OPENAI_API_KEY;
180
+ const apiKey = this.config.remote?.apiKey ?? process.env.LITELLM_API_KEY;
184
181
  this.providerResult = await createEmbeddingProvider(this.config.provider, {
185
182
  apiKey,
186
183
  baseUrl: this.config.remote?.baseUrl,
187
184
  model: this.config.remote?.model,
188
185
  modelPath: this.config.local?.modelPath,
189
- }, {
190
- geminiApiKey: process.env.GEMINI_API_KEY,
191
186
  });
192
187
  }
193
188
  /**
@@ -301,35 +296,10 @@ export class MemoryManager {
301
296
  }
302
297
  }
303
298
  /**
304
- * Activate fallback provider
299
+ * Activate fallback provider (no-op — LiteLLM is the only provider)
305
300
  */
306
- async activateFallbackProvider(reason) {
307
- if (this.fallbackActivated)
308
- return;
309
- // Determine fallback based on current provider
310
- const currentId = this.provider.id;
311
- let fallbackType = null;
312
- if (currentId === "openai" && process.env.GEMINI_API_KEY) {
313
- fallbackType = "gemini";
314
- }
315
- else if (currentId === "gemini" && (this.config.remote?.apiKey ?? process.env.OPENAI_API_KEY)) {
316
- fallbackType = "openai";
317
- }
318
- if (!fallbackType)
319
- return;
320
- try {
321
- const result = await createEmbeddingProvider(fallbackType, {
322
- apiKey: fallbackType === "gemini" ? process.env.GEMINI_API_KEY : this.config.remote?.apiKey,
323
- baseUrl: this.config.remote?.baseUrl,
324
- }, {});
325
- this.fallbackProvider = result.provider;
326
- this.fallbackActivated = true;
327
- this.providerResult.fallbackFrom = currentId;
328
- this.providerResult.fallbackReason = reason;
329
- }
330
- catch {
331
- // Fallback failed, continue with original provider errors
332
- }
301
+ async activateFallbackProvider(_reason) {
302
+ // No fallback providers available — LiteLLM is the only supported provider
333
303
  }
334
304
  /**
335
305
  * Read file content with optional line range
@@ -1037,59 +1007,9 @@ export class MemoryManager {
1037
1007
  return batches;
1038
1008
  }
1039
1009
  /**
1040
- * Run batch with timeout retry (single retry on timeout)
1041
- */
1042
- async runBatchWithTimeoutRetry(params) {
1043
- try {
1044
- return await params.run();
1045
- }
1046
- catch (err) {
1047
- const message = err instanceof Error ? err.message : String(err);
1048
- if (isBatchTimeoutError(message)) {
1049
- try {
1050
- return await params.run();
1051
- }
1052
- catch (retryErr) {
1053
- retryErr.batchAttempts = 2;
1054
- throw retryErr;
1055
- }
1056
- }
1057
- throw err;
1058
- }
1059
- }
1060
- /**
1061
- * Run batch with fallback to inline embedding on failure
1062
- */
1063
- async runBatchWithFallback(params) {
1064
- if (this.batchDisabled || this.batchFailureTracker.disabled) {
1065
- return await params.fallback();
1066
- }
1067
- try {
1068
- const result = await this.runBatchWithTimeoutRetry({
1069
- provider: params.provider,
1070
- run: params.run,
1071
- });
1072
- await this.batchFailureTracker.reset();
1073
- return result;
1074
- }
1075
- catch (err) {
1076
- const message = err instanceof Error ? err.message : String(err);
1077
- const attempts = err.batchAttempts ?? 1;
1078
- const forceDisable = isBatchUnavailableError(message);
1079
- await this.batchFailureTracker.recordFailure({
1080
- provider: params.provider,
1081
- message,
1082
- attempts,
1083
- forceDisable,
1084
- });
1085
- return await params.fallback();
1086
- }
1087
- }
1088
- /**
1089
- * Embed chunks using async batch API (OpenAI or Gemini)
1090
- * Exposed for advanced use cases where caller controls chunking
1010
+ * Embed chunks with cache check, then inline batch via LiteLLM
1091
1011
  */
1092
- async embedChunksWithAsyncBatch(chunks, entry, source) {
1012
+ async embedChunksWithAsyncBatch(chunks, _entry, _source) {
1093
1013
  const provider = this.provider;
1094
1014
  // Check cache for existing embeddings
1095
1015
  const embeddings = Array.from({ length: chunks.length }, () => []);
@@ -1106,112 +1026,10 @@ export class MemoryManager {
1106
1026
  }
1107
1027
  if (missing.length === 0)
1108
1028
  return embeddings;
1109
- // Use async batch API if available
1110
- if (provider.id === "openai" && this.openAiClient && this.config.batch.enabled) {
1111
- return this.embedChunksWithOpenAiBatch(missing, embeddings, entry, source);
1112
- }
1113
- if (provider.id === "gemini" && this.geminiClient && this.config.batch.enabled) {
1114
- return this.embedChunksWithGeminiBatch(missing, embeddings, entry, source);
1115
- }
1116
- // Fallback to inline batch
1117
1029
  return this.embedChunksInline(missing, embeddings);
1118
1030
  }
1119
1031
  /**
1120
- * Embed chunks using OpenAI async batch API
1121
- */
1122
- async embedChunksWithOpenAiBatch(missing, embeddings, entry, source) {
1123
- const openAi = this.openAiClient;
1124
- if (!openAi)
1125
- return this.embedChunksInline(missing, embeddings);
1126
- const requests = [];
1127
- const mapping = new Map();
1128
- for (const item of missing) {
1129
- const chunk = item.chunk;
1130
- const customId = hashText(`${source}:${entry.path}:${chunk.startLine}:${chunk.endLine}:${chunk.hash}:${item.index}`);
1131
- mapping.set(customId, { index: item.index, hash: chunk.hash });
1132
- requests.push({
1133
- custom_id: customId,
1134
- method: "POST",
1135
- url: OPENAI_BATCH_ENDPOINT,
1136
- body: {
1137
- model: openAi.model,
1138
- input: chunk.text,
1139
- },
1140
- });
1141
- }
1142
- const batchResult = await this.runBatchWithFallback({
1143
- provider: "openai",
1144
- run: async () => await runOpenAiEmbeddingBatches({
1145
- openAi,
1146
- agentId: this.config.agentId,
1147
- requests,
1148
- wait: this.config.batch.wait,
1149
- concurrency: this.config.batch.concurrency,
1150
- pollIntervalMs: this.config.batch.pollIntervalMs,
1151
- timeoutMs: this.config.batch.timeoutMs,
1152
- }),
1153
- fallback: async () => await this.embedChunksInline(missing, embeddings),
1154
- });
1155
- if (Array.isArray(batchResult))
1156
- return batchResult;
1157
- const byCustomId = batchResult;
1158
- // Map results back and cache
1159
- for (const [customId, embedding] of byCustomId.entries()) {
1160
- const mapped = mapping.get(customId);
1161
- if (!mapped)
1162
- continue;
1163
- embeddings[mapped.index] = embedding;
1164
- this.storage.cacheEmbedding(this.provider.id, this.provider.model, this.providerKey, mapped.hash, embedding);
1165
- }
1166
- return embeddings;
1167
- }
1168
- /**
1169
- * Embed chunks using Gemini async batch API
1170
- */
1171
- async embedChunksWithGeminiBatch(missing, embeddings, entry, source) {
1172
- const gemini = this.geminiClient;
1173
- if (!gemini)
1174
- return this.embedChunksInline(missing, embeddings);
1175
- const requests = [];
1176
- const mapping = new Map();
1177
- for (const item of missing) {
1178
- const chunk = item.chunk;
1179
- const customId = hashText(`${source}:${entry.path}:${chunk.startLine}:${chunk.endLine}:${chunk.hash}:${item.index}`);
1180
- mapping.set(customId, { index: item.index, hash: chunk.hash });
1181
- requests.push({
1182
- custom_id: customId,
1183
- content: { parts: [{ text: chunk.text }] },
1184
- taskType: "RETRIEVAL_DOCUMENT",
1185
- });
1186
- }
1187
- const batchResult = await this.runBatchWithFallback({
1188
- provider: "gemini",
1189
- run: async () => await runGeminiEmbeddingBatches({
1190
- gemini,
1191
- agentId: this.config.agentId,
1192
- requests,
1193
- wait: this.config.batch.wait,
1194
- concurrency: this.config.batch.concurrency,
1195
- pollIntervalMs: this.config.batch.pollIntervalMs,
1196
- timeoutMs: this.config.batch.timeoutMs,
1197
- }),
1198
- fallback: async () => await this.embedChunksInline(missing, embeddings),
1199
- });
1200
- if (Array.isArray(batchResult))
1201
- return batchResult;
1202
- const byCustomId = batchResult;
1203
- // Map results back and cache
1204
- for (const [customId, embedding] of byCustomId.entries()) {
1205
- const mapped = mapping.get(customId);
1206
- if (!mapped)
1207
- continue;
1208
- embeddings[mapped.index] = embedding;
1209
- this.storage.cacheEmbedding(this.provider.id, this.provider.model, this.providerKey, mapped.hash, embedding);
1210
- }
1211
- return embeddings;
1212
- }
1213
- /**
1214
- * Embed chunks using inline batch API (fallback)
1032
+ * Embed chunks using inline batch API
1215
1033
  */
1216
1034
  async embedChunksInline(missing, embeddings) {
1217
1035
  const texts = missing.map((m) => m.chunk.text);