@memberjunction/ai-vector-dupe 2.112.0 → 2.113.1
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/README.md +2 -2
- package/dist/duplicateRecordDetector.d.ts +4 -4
- package/dist/duplicateRecordDetector.d.ts.map +1 -1
- package/dist/duplicateRecordDetector.js +39 -46
- package/dist/duplicateRecordDetector.js.map +1 -1
- package/dist/generic/vectorSyncBase.d.ts +3 -3
- package/dist/generic/vectorSyncBase.d.ts.map +1 -1
- package/dist/generic/vectorSyncBase.js +2 -2
- package/dist/generic/vectorSyncBase.js.map +1 -1
- package/dist/models/entitySyncConfig.d.ts +1 -1
- package/dist/models/entitySyncConfig.d.ts.map +1 -1
- package/package.json +10 -9
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@ The main class that handles duplicate detection operations.
|
|
|
31
31
|
|
|
32
32
|
```typescript
|
|
33
33
|
import { DuplicateRecordDetector } from '@memberjunction/ai-vector-dupe';
|
|
34
|
-
import { PotentialDuplicateRequest, UserInfo } from '@memberjunction/
|
|
34
|
+
import { PotentialDuplicateRequest, UserInfo } from '@memberjunction/core';
|
|
35
35
|
|
|
36
36
|
const detector = new DuplicateRecordDetector();
|
|
37
37
|
```
|
|
@@ -68,7 +68,7 @@ const config: EntitySyncConfig = {
|
|
|
68
68
|
|
|
69
69
|
```typescript
|
|
70
70
|
import { DuplicateRecordDetector } from '@memberjunction/ai-vector-dupe';
|
|
71
|
-
import { PotentialDuplicateRequest, UserInfo } from '@memberjunction/
|
|
71
|
+
import { PotentialDuplicateRequest, UserInfo } from '@memberjunction/core';
|
|
72
72
|
|
|
73
73
|
// Initialize the detector
|
|
74
74
|
const detector = new DuplicateRecordDetector();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { BaseEmbeddings } from
|
|
2
|
-
import { PotentialDuplicateRequest, PotentialDuplicateResponse, UserInfo, PotentialDuplicateResult } from
|
|
3
|
-
import { BaseResponse, VectorDBBase } from
|
|
4
|
-
import { VectorBase } from
|
|
1
|
+
import { BaseEmbeddings } from "@memberjunction/ai";
|
|
2
|
+
import { PotentialDuplicateRequest, PotentialDuplicateResponse, UserInfo, PotentialDuplicateResult } from "@memberjunction/core";
|
|
3
|
+
import { BaseResponse, VectorDBBase } from "@memberjunction/ai-vectordb";
|
|
4
|
+
import { VectorBase } from "@memberjunction/ai-vectors";
|
|
5
5
|
export declare class DuplicateRecordDetector extends VectorBase {
|
|
6
6
|
_vectorDB: VectorDBBase;
|
|
7
7
|
_embedding: BaseEmbeddings;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duplicateRecordDetector.d.ts","sourceRoot":"","sources":["../src/duplicateRecordDetector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAe,MAAM,oBAAoB,CAAC;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"duplicateRecordDetector.d.ts","sourceRoot":"","sources":["../src/duplicateRecordDetector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAe,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAyB,QAAQ,EAAc,wBAAwB,EAA0E,MAAM,sBAAsB,CAAC;AAE5O,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGzE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD,qBAAa,uBAAwB,SAAQ,UAAU;IAEnD,SAAS,EAAE,YAAY,CAAC;IACxB,UAAU,EAAE,cAAc,CAAC;;IAOd,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,0BAA0B,CAAC;YA2JlH,kBAAkB;YAmBlB,wBAAwB;YAmBxB,+BAA+B;YAmB/B,uCAAuC;YAkCvC,aAAa;YAYb,qBAAqB;YAYrB,6BAA6B;YAS7B,oBAAoB;YAiBpB,wCAAwC;YAuBxC,YAAY;IAyCb,mBAAmB,CAAC,aAAa,EAAE,YAAY,GAAG,OAAO,CAAC,wBAAwB,CAAC;CAsBnG"}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DuplicateRecordDetector = void 0;
|
|
4
4
|
const ai_1 = require("@memberjunction/ai");
|
|
5
|
-
const
|
|
6
|
-
const
|
|
5
|
+
const core_1 = require("@memberjunction/core");
|
|
6
|
+
const core_2 = require("@memberjunction/core");
|
|
7
7
|
const ai_vectordb_1 = require("@memberjunction/ai-vectordb");
|
|
8
|
-
const
|
|
8
|
+
const global_1 = require("@memberjunction/global");
|
|
9
9
|
const ai_vectors_1 = require("@memberjunction/ai-vectors");
|
|
10
10
|
const ai_vector_sync_1 = require("@memberjunction/ai-vector-sync");
|
|
11
11
|
class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
@@ -13,7 +13,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
13
13
|
_embedding;
|
|
14
14
|
constructor() {
|
|
15
15
|
super();
|
|
16
|
-
this._runView = new
|
|
16
|
+
this._runView = new core_1.RunView();
|
|
17
17
|
}
|
|
18
18
|
async getDuplicateRecords(params, contextUser) {
|
|
19
19
|
super.CurrentUser = contextUser;
|
|
@@ -23,7 +23,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
23
23
|
if (!entityDocument) {
|
|
24
24
|
throw Error(`No Entity Document found with ID ${params.EntityDocumentID}`);
|
|
25
25
|
}
|
|
26
|
-
let response = new
|
|
26
|
+
let response = new core_1.PotentialDuplicateResponse();
|
|
27
27
|
response.PotentialDuplicateResult = [];
|
|
28
28
|
if (!entityDocument) {
|
|
29
29
|
response.ErrorMessage = `No active Entity Document found for entity ${params.EntityID}`;
|
|
@@ -35,21 +35,19 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
35
35
|
entityDocumentID: entityDocument.ID,
|
|
36
36
|
listBatchCount: 20,
|
|
37
37
|
options: {},
|
|
38
|
-
CurrentUser: contextUser
|
|
38
|
+
CurrentUser: contextUser
|
|
39
39
|
};
|
|
40
|
-
console.log(
|
|
40
|
+
console.log("vectorizing entity...");
|
|
41
41
|
const templateParser = ai_vector_sync_1.EntityDocumentTemplateParser.CreateInstance();
|
|
42
42
|
await vectorizer.VectorizeEntity(request, super.CurrentUser);
|
|
43
43
|
const list = await this.getListEntity(params.ListID);
|
|
44
|
-
let duplicateRun = params.Options?.DuplicateRunID
|
|
45
|
-
? await this.getDuplicateRunEntity(params.Options?.DuplicateRunID)
|
|
46
|
-
: await this.getDuplicateRunEntityByListID(list.ID);
|
|
44
|
+
let duplicateRun = params.Options?.DuplicateRunID ? await this.getDuplicateRunEntity(params.Options?.DuplicateRunID) : await this.getDuplicateRunEntityByListID(list.ID);
|
|
47
45
|
const duplicateRunDetails = await this.createDuplicateRunDetailRecordsByListID(list.ID, duplicateRun.ID);
|
|
48
|
-
(0,
|
|
46
|
+
(0, core_2.LogStatus)(`Using vector database ${entityDocument.VectorDatabaseID} and AI Model ${entityDocument.AIModelID}`);
|
|
49
47
|
const vectorDB = super.GetVectorDatabase(entityDocument.VectorDatabaseID);
|
|
50
48
|
const aiModel = super.GetAIModel(entityDocument.AIModelID);
|
|
51
|
-
(0,
|
|
52
|
-
(0,
|
|
49
|
+
(0, core_2.LogStatus)(`AIModel driver class: ${aiModel.DriverClass}`);
|
|
50
|
+
(0, core_2.LogStatus)(`VectorDB class key: ${vectorDB.ClassKey}`);
|
|
53
51
|
const embeddingAPIKey = (0, ai_1.GetAIAPIKey)(aiModel.DriverClass);
|
|
54
52
|
const vectorDBAPIKey = (0, ai_1.GetAIAPIKey)(vectorDB.ClassKey);
|
|
55
53
|
if (!embeddingAPIKey) {
|
|
@@ -58,8 +56,8 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
58
56
|
if (!vectorDBAPIKey) {
|
|
59
57
|
throw Error(`No API Key found for Vector Database ${vectorDB.ClassKey}`);
|
|
60
58
|
}
|
|
61
|
-
this._embedding =
|
|
62
|
-
this._vectorDB =
|
|
59
|
+
this._embedding = global_1.MJGlobal.Instance.ClassFactory.CreateInstance(ai_1.BaseEmbeddings, aiModel.DriverClass, embeddingAPIKey);
|
|
60
|
+
this._vectorDB = global_1.MJGlobal.Instance.ClassFactory.CreateInstance(ai_vectordb_1.VectorDBBase, vectorDB.ClassKey, vectorDBAPIKey);
|
|
63
61
|
if (!this._embedding) {
|
|
64
62
|
throw Error(`Failed to create Embeddings instance for AI Model ${aiModel.DriverClass}`);
|
|
65
63
|
}
|
|
@@ -68,12 +66,12 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
68
66
|
}
|
|
69
67
|
let records = await this.GetRecordsByListID(list.ID, entityDocument.EntityID);
|
|
70
68
|
if (records.length === 0) {
|
|
71
|
-
(0,
|
|
69
|
+
(0, core_1.LogError)(`No records found in list ${list.Name}, with listID ${list.ID} and EntityID ${entityDocument.EntityID} exiting early`);
|
|
72
70
|
response.ErrorMessage = `No records found in list ${list.Name}`;
|
|
73
71
|
response.Status = 'Error';
|
|
74
72
|
return response;
|
|
75
73
|
}
|
|
76
|
-
(0,
|
|
74
|
+
(0, core_2.LogStatus)("Vectorizing " + records.length + " records");
|
|
77
75
|
const recordTemplates = [];
|
|
78
76
|
let sampleTemplate = entityDocument.Template;
|
|
79
77
|
for (const record of records) {
|
|
@@ -85,14 +83,9 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
85
83
|
let results = [];
|
|
86
84
|
for (const [index, vector] of embedTextsResult.vectors.entries()) {
|
|
87
85
|
const compositeKey = records[index].PrimaryKey;
|
|
88
|
-
let filterResult = await this._vectorDB.queryIndex({
|
|
89
|
-
vector: vector,
|
|
90
|
-
topK: topK,
|
|
91
|
-
includeMetadata: true,
|
|
92
|
-
includeValues: false,
|
|
93
|
-
});
|
|
86
|
+
let filterResult = await this._vectorDB.queryIndex({ vector: vector, topK: topK, includeMetadata: true, includeValues: false });
|
|
94
87
|
if (!filterResult.success) {
|
|
95
|
-
(0,
|
|
88
|
+
(0, core_1.LogError)(`Failed to query index for record ${compositeKey.ToString()}`);
|
|
96
89
|
continue;
|
|
97
90
|
}
|
|
98
91
|
let queryResult = await this.getVectorDuplicates(filterResult);
|
|
@@ -109,11 +102,11 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
109
102
|
dupeRunDetail.MatchStatus = 'Complete';
|
|
110
103
|
let success = await super.SaveEntity(dupeRunDetail);
|
|
111
104
|
if (!success) {
|
|
112
|
-
(0,
|
|
105
|
+
(0, core_2.LogStatus)(`Failed to update Duplicate Run Detail record ${dupeRunDetail.ID}`);
|
|
113
106
|
}
|
|
114
107
|
}
|
|
115
108
|
else {
|
|
116
|
-
(0,
|
|
109
|
+
(0, core_1.LogError)(`Failed to find Duplicate Run Detail record for ${compositeKey.ToString()}`);
|
|
117
110
|
}
|
|
118
111
|
}
|
|
119
112
|
duplicateRun.ProcessingStatus = 'Complete';
|
|
@@ -125,8 +118,8 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
125
118
|
await this.mergeRecords(response, entityDocument);
|
|
126
119
|
response.PotentialDuplicateResult = results;
|
|
127
120
|
response.Status = 'Success';
|
|
128
|
-
(0,
|
|
129
|
-
(0,
|
|
121
|
+
(0, core_2.LogStatus)("Dupe Run complete. Response:");
|
|
122
|
+
(0, core_2.LogStatus)(JSON.stringify(response, null, "\t"));
|
|
130
123
|
return response;
|
|
131
124
|
}
|
|
132
125
|
async GetRecordsByListID(listID, entityID) {
|
|
@@ -137,7 +130,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
137
130
|
const rvResult = await super.RunView.RunView({
|
|
138
131
|
EntityName: entityInfo.Name,
|
|
139
132
|
ExtraFilter: `ID IN (SELECT RecordID FROM __mj.vwListDetails WHERE ListID = '${listID}')`,
|
|
140
|
-
ResultType: 'entity_object'
|
|
133
|
+
ResultType: 'entity_object'
|
|
141
134
|
}, super.CurrentUser);
|
|
142
135
|
if (!rvResult.Success) {
|
|
143
136
|
throw new Error(rvResult.ErrorMessage);
|
|
@@ -145,7 +138,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
145
138
|
return rvResult.Results;
|
|
146
139
|
}
|
|
147
140
|
async createDuplicateRunRecord(entityDocument, listID) {
|
|
148
|
-
const md = new
|
|
141
|
+
const md = new core_1.Metadata();
|
|
149
142
|
let duplicateRun = await md.GetEntityObject('Duplicate Runs');
|
|
150
143
|
duplicateRun.NewRecord();
|
|
151
144
|
duplicateRun.EntityID = entityDocument.EntityID;
|
|
@@ -162,7 +155,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
162
155
|
}
|
|
163
156
|
async createDuplicateRunDetailRecords(recordIDs, duplicateRunID) {
|
|
164
157
|
let results = [];
|
|
165
|
-
const md = new
|
|
158
|
+
const md = new core_1.Metadata();
|
|
166
159
|
for (const recordID of recordIDs) {
|
|
167
160
|
let runDetail = await md.GetEntityObject('Duplicate Run Details');
|
|
168
161
|
runDetail.NewRecord();
|
|
@@ -182,12 +175,12 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
182
175
|
const viewResults = await super.RunView.RunView({
|
|
183
176
|
EntityName: 'List Details',
|
|
184
177
|
ExtraFilter: `ListID = '${listID}'`,
|
|
185
|
-
ResultType: 'entity_object'
|
|
178
|
+
ResultType: 'entity_object'
|
|
186
179
|
}, super.CurrentUser);
|
|
187
180
|
if (!viewResults.Success) {
|
|
188
181
|
throw new Error(viewResults.ErrorMessage);
|
|
189
182
|
}
|
|
190
|
-
const md = new
|
|
183
|
+
const md = new core_1.Metadata();
|
|
191
184
|
const listDetails = viewResults.Results;
|
|
192
185
|
for (const listDetail of listDetails) {
|
|
193
186
|
let runDetail = await md.GetEntityObject('Duplicate Run Details');
|
|
@@ -201,13 +194,13 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
201
194
|
results.push(runDetail);
|
|
202
195
|
}
|
|
203
196
|
else {
|
|
204
|
-
(0,
|
|
197
|
+
(0, core_1.LogError)("Failed to save DuplicateRunDetailEntity", undefined, runDetail.LatestResult);
|
|
205
198
|
}
|
|
206
199
|
}
|
|
207
200
|
return results;
|
|
208
201
|
}
|
|
209
202
|
async getListEntity(listID) {
|
|
210
|
-
const md = new
|
|
203
|
+
const md = new core_1.Metadata();
|
|
211
204
|
let list = await md.GetEntityObject('Lists');
|
|
212
205
|
list.ContextCurrentUser = super.CurrentUser;
|
|
213
206
|
const success = await list.Load(listID);
|
|
@@ -217,7 +210,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
217
210
|
return list;
|
|
218
211
|
}
|
|
219
212
|
async getDuplicateRunEntity(DupeRunID) {
|
|
220
|
-
const md = new
|
|
213
|
+
const md = new core_1.Metadata();
|
|
221
214
|
let dupeRun = await md.GetEntityObject('Duplicate Runs');
|
|
222
215
|
dupeRun.ContextCurrentUser = super.CurrentUser;
|
|
223
216
|
const success = await dupeRun.Load(DupeRunID);
|
|
@@ -234,7 +227,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
234
227
|
return entity;
|
|
235
228
|
}
|
|
236
229
|
async createListForDupeRun(entityDocument) {
|
|
237
|
-
const md = new
|
|
230
|
+
const md = new core_1.Metadata();
|
|
238
231
|
const list = await md.GetEntityObject('Lists');
|
|
239
232
|
list.NewRecord();
|
|
240
233
|
list.Name = `Potential Duplicate Run`;
|
|
@@ -248,7 +241,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
248
241
|
return list;
|
|
249
242
|
}
|
|
250
243
|
async createDuplicateRunDetailMatchesForRecord(DuplicateRunDetailID, duplicateResult) {
|
|
251
|
-
const md = new
|
|
244
|
+
const md = new core_1.Metadata();
|
|
252
245
|
let matchRecords = [];
|
|
253
246
|
for (const dupe of duplicateResult.Duplicates) {
|
|
254
247
|
const match = await md.GetEntityObject('Duplicate Run Detail Matches');
|
|
@@ -269,14 +262,14 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
269
262
|
return matchRecords;
|
|
270
263
|
}
|
|
271
264
|
async mergeRecords(dupeResponse, entityDocument) {
|
|
272
|
-
const md = new
|
|
265
|
+
const md = new core_1.Metadata();
|
|
273
266
|
for (const dupeResult of dupeResponse.PotentialDuplicateResult) {
|
|
274
267
|
for (const [index, dupe] of dupeResult.Duplicates.entries()) {
|
|
275
268
|
if (dupe.ToString() === dupeResult.RecordCompositeKey.ToString()) {
|
|
276
269
|
continue;
|
|
277
270
|
}
|
|
278
271
|
if (dupe.ProbabilityScore >= entityDocument.AbsoluteMatchThreshold) {
|
|
279
|
-
let mergeParams = new
|
|
272
|
+
let mergeParams = new core_1.RecordMergeRequest();
|
|
280
273
|
mergeParams.EntityName = entityDocument.Entity;
|
|
281
274
|
mergeParams.SurvivingRecordCompositeKey = dupeResult.RecordCompositeKey;
|
|
282
275
|
mergeParams.RecordsToMerge = [dupe];
|
|
@@ -285,7 +278,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
285
278
|
let dupeRunMatchRecord = await md.GetEntityObject('Duplicate Run Detail Matches', super.CurrentUser);
|
|
286
279
|
let loadResult = await dupeRunMatchRecord.Load(dupeResult.DuplicateRunDetailMatchRecordIDs[index]);
|
|
287
280
|
if (!loadResult) {
|
|
288
|
-
(0,
|
|
281
|
+
(0, core_1.LogError)(`Failed to load Duplicate Run Match record ${dupeResult.DuplicateRunDetailMatchRecordIDs[index]}`);
|
|
289
282
|
continue;
|
|
290
283
|
}
|
|
291
284
|
dupeRunMatchRecord.MergeStatus = 'Complete';
|
|
@@ -293,28 +286,28 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
293
286
|
dupeRunMatchRecord.MergedAt = new Date();
|
|
294
287
|
let saveResult = await dupeRunMatchRecord.Save();
|
|
295
288
|
if (!saveResult) {
|
|
296
|
-
(0,
|
|
289
|
+
(0, core_1.LogError)(`Failed to update Duplicate Run Match record ${dupeRunMatchRecord.ID}`);
|
|
297
290
|
}
|
|
298
291
|
}
|
|
299
292
|
else {
|
|
300
|
-
(0,
|
|
293
|
+
(0, core_1.LogError)(`Failed to merge records ${dupeResult.RecordCompositeKey.ToString()} and ${dupe.ToString()}`);
|
|
301
294
|
}
|
|
302
295
|
}
|
|
303
296
|
}
|
|
304
297
|
}
|
|
305
298
|
}
|
|
306
299
|
async getVectorDuplicates(queryResponse) {
|
|
307
|
-
let response = new
|
|
300
|
+
let response = new core_1.PotentialDuplicateResult();
|
|
308
301
|
for (const match of queryResponse.data.matches) {
|
|
309
302
|
const record = match;
|
|
310
303
|
if (!record || !record.id) {
|
|
311
304
|
continue;
|
|
312
305
|
}
|
|
313
306
|
if (!record.metadata || !record.metadata.RecordID) {
|
|
314
|
-
(0,
|
|
307
|
+
(0, core_1.LogError)(`Invalid vector metadata: ${record.id}`);
|
|
315
308
|
continue;
|
|
316
309
|
}
|
|
317
|
-
let duplicate = new
|
|
310
|
+
let duplicate = new core_1.PotentialDuplicate();
|
|
318
311
|
duplicate.LoadFromConcatenatedString(record.metadata.RecordID);
|
|
319
312
|
duplicate.ProbabilityScore = record.score;
|
|
320
313
|
response.Duplicates.push(duplicate);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duplicateRecordDetector.js","sourceRoot":"","sources":["../src/duplicateRecordDetector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"duplicateRecordDetector.js","sourceRoot":"","sources":["../src/duplicateRecordDetector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BaseLLM } from
|
|
2
|
-
import { PineconeDatabase } from
|
|
3
|
-
import { UserInfo, RunView } from
|
|
1
|
+
import { BaseLLM } from "@memberjunction/ai";
|
|
2
|
+
import { PineconeDatabase } from "@memberjunction/ai-vectors-pinecone";
|
|
3
|
+
import { UserInfo, RunView } from "@memberjunction/core";
|
|
4
4
|
export declare class VectorSyncBase {
|
|
5
5
|
_contextUser: UserInfo;
|
|
6
6
|
_runView: RunView;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vectorSyncBase.d.ts","sourceRoot":"","sources":["../../src/generic/vectorSyncBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"vectorSyncBase.d.ts","sourceRoot":"","sources":["../../src/generic/vectorSyncBase.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,cAAc;IACvB,YAAY,EAAE,QAAQ,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAElB,UAAU,EAAE,IAAI,CAAC;IACjB,QAAQ,EAAE,IAAI,CAAC;IAEf,WAAW,EAAE,gBAAgB,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;cAER,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAInD,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM;IAa5D,SAAS,CAAC,KAAK,IAAI,IAAI;IAIvB,SAAS,CAAC,GAAG,IAAI,IAAI;IAIrB,SAAS,CAAC,QAAQ,IAAI,MAAM;IAU5B,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIrD,SAAS,CAAC,OAAO,CAAC,GAAG,KAAA;CASxB"}
|
|
@@ -34,12 +34,12 @@ class VectorSyncBase {
|
|
|
34
34
|
_embedding;
|
|
35
35
|
_languageModel;
|
|
36
36
|
async timer(ms) {
|
|
37
|
-
return new Promise(
|
|
37
|
+
return new Promise(res => setTimeout(res, ms));
|
|
38
38
|
}
|
|
39
39
|
parseStringTemplate(str, obj) {
|
|
40
40
|
let parts = str.split(/\$\{(?!\d)[\wæøåÆØÅ]*\}/);
|
|
41
41
|
let args = str.match(/[^{\}]+(?=})/g) || [];
|
|
42
|
-
let parameters = args.map(
|
|
42
|
+
let parameters = args.map(argument => obj[argument] || (obj[argument] === undefined ? "" : obj[argument]));
|
|
43
43
|
return String.raw({ raw: parts }, ...parameters);
|
|
44
44
|
}
|
|
45
45
|
start() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vectorSyncBase.js","sourceRoot":"","sources":["../../src/generic/vectorSyncBase.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AAKzB,MAAa,cAAc;
|
|
1
|
+
{"version":3,"file":"vectorSyncBase.js","sourceRoot":"","sources":["../../src/generic/vectorSyncBase.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AAKzB,MAAa,cAAc;IACvB,YAAY,CAAW;IACvB,QAAQ,CAAU;IAElB,UAAU,CAAO;IACjB,QAAQ,CAAO;IAEf,WAAW,CAAmB;IAC9B,UAAU,CAAU;IACpB,cAAc,CAAU;IAEd,KAAK,CAAC,KAAK,CAAC,EAAU;QAC5B,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;IAES,mBAAmB,CAAC,GAAW,EAAE,GAAQ;QAE/C,IAAI,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAGjD,IAAI,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAI5C,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3G,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,GAAG,UAAU,CAAC,CAAC;IACrD,CAAC;IAES,KAAK;QACX,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;IACjC,CAAC;IAES,GAAG;QACT,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAC/B,CAAC;IAES,QAAQ;QACd,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAEnE,QAAQ,IAAI,IAAI,CAAC;QAGjB,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,OAAO,CAAC;IACnB,CAAC;IAES,YAAY,CAAC,IAAS,EAAE,IAAY;QAC1C,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;IAES,OAAO,CAAC,GAAG;QACjB,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;YACvB,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC7B,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AA3DD,wCA2DC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entitySyncConfig.d.ts","sourceRoot":"","sources":["../../src/models/entitySyncConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"entitySyncConfig.d.ts","sourceRoot":"","sources":["../../src/models/entitySyncConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,MAAM,gBAAgB,GAAG;IAI3B,gBAAgB,EAAE,MAAM,CAAC;IAIzB,QAAQ,EAAE,MAAM,CAAC;IAMjB,aAAa,EAAE,aAAa,CAAC;IAI7B,aAAa,EAAE,OAAO,CAAC;IAMvB,WAAW,EAAE,MAAM,CAAC;IAIpB,aAAa,EAAE,MAAM,CAAC;IAItB,QAAQ,EAAE,MAAM,CAAA;CACnB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ai-vector-dupe",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.113.1",
|
|
4
4
|
"description": "MemberJunction: AI Vector/Entity Sync Package - Handles synchronization between Vector DB and MJ CDP Data",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -15,14 +15,15 @@
|
|
|
15
15
|
"author": "MemberJunction.com",
|
|
16
16
|
"license": "ISC",
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"@memberjunction/ai": "2.
|
|
19
|
-
"@memberjunction/ai-vectordb": "2.
|
|
20
|
-
"@memberjunction/ai-vectors": "2.
|
|
21
|
-
"@memberjunction/ai-vectors-pinecone": "2.
|
|
22
|
-
"@memberjunction/ai-vector-sync": "2.
|
|
23
|
-
"@memberjunction/aiengine": "2.
|
|
24
|
-
"@memberjunction/
|
|
25
|
-
"@memberjunction/
|
|
18
|
+
"@memberjunction/ai": "2.113.1",
|
|
19
|
+
"@memberjunction/ai-vectordb": "2.113.1",
|
|
20
|
+
"@memberjunction/ai-vectors": "2.113.1",
|
|
21
|
+
"@memberjunction/ai-vectors-pinecone": "2.113.1",
|
|
22
|
+
"@memberjunction/ai-vector-sync": "2.113.1",
|
|
23
|
+
"@memberjunction/aiengine": "2.113.1",
|
|
24
|
+
"@memberjunction/core": "2.113.1",
|
|
25
|
+
"@memberjunction/global": "2.113.1",
|
|
26
|
+
"@memberjunction/core-entities": "2.113.1",
|
|
26
27
|
"dotenv": "^16.4.1"
|
|
27
28
|
},
|
|
28
29
|
"devDependencies": {
|