@zabaca/lattice 1.0.21 → 1.0.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/main.js +17 -11
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -1289,13 +1289,18 @@ class VoyageEmbeddingProvider {
|
|
|
1289
1289
|
class EmbeddingService {
|
|
1290
1290
|
configService;
|
|
1291
1291
|
logger = new Logger3(EmbeddingService.name);
|
|
1292
|
-
provider;
|
|
1292
|
+
provider = null;
|
|
1293
1293
|
config;
|
|
1294
1294
|
constructor(configService) {
|
|
1295
1295
|
this.configService = configService;
|
|
1296
1296
|
this.config = this.loadConfig();
|
|
1297
|
-
|
|
1298
|
-
|
|
1297
|
+
}
|
|
1298
|
+
getProvider() {
|
|
1299
|
+
if (!this.provider) {
|
|
1300
|
+
this.provider = this.createProvider();
|
|
1301
|
+
this.logger.log(`Initialized embedding provider: ${this.provider.name}`);
|
|
1302
|
+
}
|
|
1303
|
+
return this.provider;
|
|
1299
1304
|
}
|
|
1300
1305
|
loadConfig() {
|
|
1301
1306
|
const providerEnv = this.configService.get("EMBEDDING_PROVIDER");
|
|
@@ -1342,35 +1347,36 @@ class EmbeddingService {
|
|
|
1342
1347
|
}
|
|
1343
1348
|
}
|
|
1344
1349
|
getProviderName() {
|
|
1345
|
-
return this.
|
|
1350
|
+
return this.getProvider().name;
|
|
1346
1351
|
}
|
|
1347
1352
|
getDimensions() {
|
|
1348
|
-
return this.
|
|
1353
|
+
return this.getProvider().dimensions;
|
|
1349
1354
|
}
|
|
1350
1355
|
async generateEmbedding(text) {
|
|
1351
1356
|
if (!text || text.trim().length === 0) {
|
|
1352
1357
|
throw new Error("Cannot generate embedding for empty text");
|
|
1353
1358
|
}
|
|
1354
|
-
return this.
|
|
1359
|
+
return this.getProvider().generateEmbedding(text);
|
|
1355
1360
|
}
|
|
1356
1361
|
async generateQueryEmbedding(text) {
|
|
1357
1362
|
if (!text || text.trim().length === 0) {
|
|
1358
1363
|
throw new Error("Cannot generate embedding for empty text");
|
|
1359
1364
|
}
|
|
1360
|
-
|
|
1361
|
-
|
|
1365
|
+
const provider = this.getProvider();
|
|
1366
|
+
if (provider.generateQueryEmbedding) {
|
|
1367
|
+
return provider.generateQueryEmbedding(text);
|
|
1362
1368
|
}
|
|
1363
|
-
return
|
|
1369
|
+
return provider.generateEmbedding(text);
|
|
1364
1370
|
}
|
|
1365
1371
|
async generateEmbeddings(texts) {
|
|
1366
1372
|
const validTexts = texts.filter((t) => t && t.trim().length > 0);
|
|
1367
1373
|
if (validTexts.length === 0) {
|
|
1368
1374
|
return [];
|
|
1369
1375
|
}
|
|
1370
|
-
return this.
|
|
1376
|
+
return this.getProvider().generateEmbeddings(validTexts);
|
|
1371
1377
|
}
|
|
1372
1378
|
isRealProvider() {
|
|
1373
|
-
return this.
|
|
1379
|
+
return this.getProvider().name !== "mock";
|
|
1374
1380
|
}
|
|
1375
1381
|
}
|
|
1376
1382
|
EmbeddingService = __legacyDecorateClassTS([
|