@memberjunction/ai-vector-dupe 2.111.0 → 2.112.0
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 +46 -39
- 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 +9 -10
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/global';
|
|
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/global';
|
|
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/global';
|
|
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,EACL,yBAAyB,EACzB,0BAA0B,EAG1B,QAAQ,EAER,wBAAwB,EAMzB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAYzE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD,qBAAa,uBAAwB,SAAQ,UAAU;IACrD,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;YAkKlH,kBAAkB;YAsBlB,wBAAwB;YAmBxB,+BAA+B;YAmB/B,uCAAuC;YAmCvC,aAAa;YAYb,qBAAqB;YAYrB,6BAA6B;YAS7B,oBAAoB;YAiBpB,wCAAwC;YA0BxC,YAAY;IA2Cb,mBAAmB,CAAC,aAAa,EAAE,YAAY,GAAG,OAAO,CAAC,wBAAwB,CAAC;CAsBjG"}
|
|
@@ -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 core_1 = require("@memberjunction/core");
|
|
6
|
-
const core_2 = require("@memberjunction/core");
|
|
7
|
-
const ai_vectordb_1 = require("@memberjunction/ai-vectordb");
|
|
8
5
|
const global_1 = require("@memberjunction/global");
|
|
6
|
+
const global_2 = require("@memberjunction/global");
|
|
7
|
+
const ai_vectordb_1 = require("@memberjunction/ai-vectordb");
|
|
8
|
+
const global_3 = 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 global_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 global_1.PotentialDuplicateResponse();
|
|
27
27
|
response.PotentialDuplicateResult = [];
|
|
28
28
|
if (!entityDocument) {
|
|
29
29
|
response.ErrorMessage = `No active Entity Document found for entity ${params.EntityID}`;
|
|
@@ -35,19 +35,21 @@ 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
|
|
44
|
+
let duplicateRun = params.Options?.DuplicateRunID
|
|
45
|
+
? await this.getDuplicateRunEntity(params.Options?.DuplicateRunID)
|
|
46
|
+
: await this.getDuplicateRunEntityByListID(list.ID);
|
|
45
47
|
const duplicateRunDetails = await this.createDuplicateRunDetailRecordsByListID(list.ID, duplicateRun.ID);
|
|
46
|
-
(0,
|
|
48
|
+
(0, global_2.LogStatus)(`Using vector database ${entityDocument.VectorDatabaseID} and AI Model ${entityDocument.AIModelID}`);
|
|
47
49
|
const vectorDB = super.GetVectorDatabase(entityDocument.VectorDatabaseID);
|
|
48
50
|
const aiModel = super.GetAIModel(entityDocument.AIModelID);
|
|
49
|
-
(0,
|
|
50
|
-
(0,
|
|
51
|
+
(0, global_2.LogStatus)(`AIModel driver class: ${aiModel.DriverClass}`);
|
|
52
|
+
(0, global_2.LogStatus)(`VectorDB class key: ${vectorDB.ClassKey}`);
|
|
51
53
|
const embeddingAPIKey = (0, ai_1.GetAIAPIKey)(aiModel.DriverClass);
|
|
52
54
|
const vectorDBAPIKey = (0, ai_1.GetAIAPIKey)(vectorDB.ClassKey);
|
|
53
55
|
if (!embeddingAPIKey) {
|
|
@@ -56,8 +58,8 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
56
58
|
if (!vectorDBAPIKey) {
|
|
57
59
|
throw Error(`No API Key found for Vector Database ${vectorDB.ClassKey}`);
|
|
58
60
|
}
|
|
59
|
-
this._embedding =
|
|
60
|
-
this._vectorDB =
|
|
61
|
+
this._embedding = global_3.MJGlobal.Instance.ClassFactory.CreateInstance(ai_1.BaseEmbeddings, aiModel.DriverClass, embeddingAPIKey);
|
|
62
|
+
this._vectorDB = global_3.MJGlobal.Instance.ClassFactory.CreateInstance(ai_vectordb_1.VectorDBBase, vectorDB.ClassKey, vectorDBAPIKey);
|
|
61
63
|
if (!this._embedding) {
|
|
62
64
|
throw Error(`Failed to create Embeddings instance for AI Model ${aiModel.DriverClass}`);
|
|
63
65
|
}
|
|
@@ -66,12 +68,12 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
66
68
|
}
|
|
67
69
|
let records = await this.GetRecordsByListID(list.ID, entityDocument.EntityID);
|
|
68
70
|
if (records.length === 0) {
|
|
69
|
-
(0,
|
|
71
|
+
(0, global_1.LogError)(`No records found in list ${list.Name}, with listID ${list.ID} and EntityID ${entityDocument.EntityID} exiting early`);
|
|
70
72
|
response.ErrorMessage = `No records found in list ${list.Name}`;
|
|
71
73
|
response.Status = 'Error';
|
|
72
74
|
return response;
|
|
73
75
|
}
|
|
74
|
-
(0,
|
|
76
|
+
(0, global_2.LogStatus)('Vectorizing ' + records.length + ' records');
|
|
75
77
|
const recordTemplates = [];
|
|
76
78
|
let sampleTemplate = entityDocument.Template;
|
|
77
79
|
for (const record of records) {
|
|
@@ -83,9 +85,14 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
83
85
|
let results = [];
|
|
84
86
|
for (const [index, vector] of embedTextsResult.vectors.entries()) {
|
|
85
87
|
const compositeKey = records[index].PrimaryKey;
|
|
86
|
-
let filterResult = await this._vectorDB.queryIndex({
|
|
88
|
+
let filterResult = await this._vectorDB.queryIndex({
|
|
89
|
+
vector: vector,
|
|
90
|
+
topK: topK,
|
|
91
|
+
includeMetadata: true,
|
|
92
|
+
includeValues: false,
|
|
93
|
+
});
|
|
87
94
|
if (!filterResult.success) {
|
|
88
|
-
(0,
|
|
95
|
+
(0, global_1.LogError)(`Failed to query index for record ${compositeKey.ToString()}`);
|
|
89
96
|
continue;
|
|
90
97
|
}
|
|
91
98
|
let queryResult = await this.getVectorDuplicates(filterResult);
|
|
@@ -102,11 +109,11 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
102
109
|
dupeRunDetail.MatchStatus = 'Complete';
|
|
103
110
|
let success = await super.SaveEntity(dupeRunDetail);
|
|
104
111
|
if (!success) {
|
|
105
|
-
(0,
|
|
112
|
+
(0, global_2.LogStatus)(`Failed to update Duplicate Run Detail record ${dupeRunDetail.ID}`);
|
|
106
113
|
}
|
|
107
114
|
}
|
|
108
115
|
else {
|
|
109
|
-
(0,
|
|
116
|
+
(0, global_1.LogError)(`Failed to find Duplicate Run Detail record for ${compositeKey.ToString()}`);
|
|
110
117
|
}
|
|
111
118
|
}
|
|
112
119
|
duplicateRun.ProcessingStatus = 'Complete';
|
|
@@ -118,8 +125,8 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
118
125
|
await this.mergeRecords(response, entityDocument);
|
|
119
126
|
response.PotentialDuplicateResult = results;
|
|
120
127
|
response.Status = 'Success';
|
|
121
|
-
(0,
|
|
122
|
-
(0,
|
|
128
|
+
(0, global_2.LogStatus)('Dupe Run complete. Response:');
|
|
129
|
+
(0, global_2.LogStatus)(JSON.stringify(response, null, '\t'));
|
|
123
130
|
return response;
|
|
124
131
|
}
|
|
125
132
|
async GetRecordsByListID(listID, entityID) {
|
|
@@ -130,7 +137,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
130
137
|
const rvResult = await super.RunView.RunView({
|
|
131
138
|
EntityName: entityInfo.Name,
|
|
132
139
|
ExtraFilter: `ID IN (SELECT RecordID FROM __mj.vwListDetails WHERE ListID = '${listID}')`,
|
|
133
|
-
ResultType: 'entity_object'
|
|
140
|
+
ResultType: 'entity_object',
|
|
134
141
|
}, super.CurrentUser);
|
|
135
142
|
if (!rvResult.Success) {
|
|
136
143
|
throw new Error(rvResult.ErrorMessage);
|
|
@@ -138,7 +145,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
138
145
|
return rvResult.Results;
|
|
139
146
|
}
|
|
140
147
|
async createDuplicateRunRecord(entityDocument, listID) {
|
|
141
|
-
const md = new
|
|
148
|
+
const md = new global_1.Metadata();
|
|
142
149
|
let duplicateRun = await md.GetEntityObject('Duplicate Runs');
|
|
143
150
|
duplicateRun.NewRecord();
|
|
144
151
|
duplicateRun.EntityID = entityDocument.EntityID;
|
|
@@ -155,7 +162,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
155
162
|
}
|
|
156
163
|
async createDuplicateRunDetailRecords(recordIDs, duplicateRunID) {
|
|
157
164
|
let results = [];
|
|
158
|
-
const md = new
|
|
165
|
+
const md = new global_1.Metadata();
|
|
159
166
|
for (const recordID of recordIDs) {
|
|
160
167
|
let runDetail = await md.GetEntityObject('Duplicate Run Details');
|
|
161
168
|
runDetail.NewRecord();
|
|
@@ -175,12 +182,12 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
175
182
|
const viewResults = await super.RunView.RunView({
|
|
176
183
|
EntityName: 'List Details',
|
|
177
184
|
ExtraFilter: `ListID = '${listID}'`,
|
|
178
|
-
ResultType: 'entity_object'
|
|
185
|
+
ResultType: 'entity_object',
|
|
179
186
|
}, super.CurrentUser);
|
|
180
187
|
if (!viewResults.Success) {
|
|
181
188
|
throw new Error(viewResults.ErrorMessage);
|
|
182
189
|
}
|
|
183
|
-
const md = new
|
|
190
|
+
const md = new global_1.Metadata();
|
|
184
191
|
const listDetails = viewResults.Results;
|
|
185
192
|
for (const listDetail of listDetails) {
|
|
186
193
|
let runDetail = await md.GetEntityObject('Duplicate Run Details');
|
|
@@ -194,13 +201,13 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
194
201
|
results.push(runDetail);
|
|
195
202
|
}
|
|
196
203
|
else {
|
|
197
|
-
(0,
|
|
204
|
+
(0, global_1.LogError)('Failed to save DuplicateRunDetailEntity', undefined, runDetail.LatestResult);
|
|
198
205
|
}
|
|
199
206
|
}
|
|
200
207
|
return results;
|
|
201
208
|
}
|
|
202
209
|
async getListEntity(listID) {
|
|
203
|
-
const md = new
|
|
210
|
+
const md = new global_1.Metadata();
|
|
204
211
|
let list = await md.GetEntityObject('Lists');
|
|
205
212
|
list.ContextCurrentUser = super.CurrentUser;
|
|
206
213
|
const success = await list.Load(listID);
|
|
@@ -210,7 +217,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
210
217
|
return list;
|
|
211
218
|
}
|
|
212
219
|
async getDuplicateRunEntity(DupeRunID) {
|
|
213
|
-
const md = new
|
|
220
|
+
const md = new global_1.Metadata();
|
|
214
221
|
let dupeRun = await md.GetEntityObject('Duplicate Runs');
|
|
215
222
|
dupeRun.ContextCurrentUser = super.CurrentUser;
|
|
216
223
|
const success = await dupeRun.Load(DupeRunID);
|
|
@@ -227,7 +234,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
227
234
|
return entity;
|
|
228
235
|
}
|
|
229
236
|
async createListForDupeRun(entityDocument) {
|
|
230
|
-
const md = new
|
|
237
|
+
const md = new global_1.Metadata();
|
|
231
238
|
const list = await md.GetEntityObject('Lists');
|
|
232
239
|
list.NewRecord();
|
|
233
240
|
list.Name = `Potential Duplicate Run`;
|
|
@@ -241,7 +248,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
241
248
|
return list;
|
|
242
249
|
}
|
|
243
250
|
async createDuplicateRunDetailMatchesForRecord(DuplicateRunDetailID, duplicateResult) {
|
|
244
|
-
const md = new
|
|
251
|
+
const md = new global_1.Metadata();
|
|
245
252
|
let matchRecords = [];
|
|
246
253
|
for (const dupe of duplicateResult.Duplicates) {
|
|
247
254
|
const match = await md.GetEntityObject('Duplicate Run Detail Matches');
|
|
@@ -262,14 +269,14 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
262
269
|
return matchRecords;
|
|
263
270
|
}
|
|
264
271
|
async mergeRecords(dupeResponse, entityDocument) {
|
|
265
|
-
const md = new
|
|
272
|
+
const md = new global_1.Metadata();
|
|
266
273
|
for (const dupeResult of dupeResponse.PotentialDuplicateResult) {
|
|
267
274
|
for (const [index, dupe] of dupeResult.Duplicates.entries()) {
|
|
268
275
|
if (dupe.ToString() === dupeResult.RecordCompositeKey.ToString()) {
|
|
269
276
|
continue;
|
|
270
277
|
}
|
|
271
278
|
if (dupe.ProbabilityScore >= entityDocument.AbsoluteMatchThreshold) {
|
|
272
|
-
let mergeParams = new
|
|
279
|
+
let mergeParams = new global_1.RecordMergeRequest();
|
|
273
280
|
mergeParams.EntityName = entityDocument.Entity;
|
|
274
281
|
mergeParams.SurvivingRecordCompositeKey = dupeResult.RecordCompositeKey;
|
|
275
282
|
mergeParams.RecordsToMerge = [dupe];
|
|
@@ -278,7 +285,7 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
278
285
|
let dupeRunMatchRecord = await md.GetEntityObject('Duplicate Run Detail Matches', super.CurrentUser);
|
|
279
286
|
let loadResult = await dupeRunMatchRecord.Load(dupeResult.DuplicateRunDetailMatchRecordIDs[index]);
|
|
280
287
|
if (!loadResult) {
|
|
281
|
-
(0,
|
|
288
|
+
(0, global_1.LogError)(`Failed to load Duplicate Run Match record ${dupeResult.DuplicateRunDetailMatchRecordIDs[index]}`);
|
|
282
289
|
continue;
|
|
283
290
|
}
|
|
284
291
|
dupeRunMatchRecord.MergeStatus = 'Complete';
|
|
@@ -286,28 +293,28 @@ class DuplicateRecordDetector extends ai_vectors_1.VectorBase {
|
|
|
286
293
|
dupeRunMatchRecord.MergedAt = new Date();
|
|
287
294
|
let saveResult = await dupeRunMatchRecord.Save();
|
|
288
295
|
if (!saveResult) {
|
|
289
|
-
(0,
|
|
296
|
+
(0, global_1.LogError)(`Failed to update Duplicate Run Match record ${dupeRunMatchRecord.ID}`);
|
|
290
297
|
}
|
|
291
298
|
}
|
|
292
299
|
else {
|
|
293
|
-
(0,
|
|
300
|
+
(0, global_1.LogError)(`Failed to merge records ${dupeResult.RecordCompositeKey.ToString()} and ${dupe.ToString()}`);
|
|
294
301
|
}
|
|
295
302
|
}
|
|
296
303
|
}
|
|
297
304
|
}
|
|
298
305
|
}
|
|
299
306
|
async getVectorDuplicates(queryResponse) {
|
|
300
|
-
let response = new
|
|
307
|
+
let response = new global_1.PotentialDuplicateResult();
|
|
301
308
|
for (const match of queryResponse.data.matches) {
|
|
302
309
|
const record = match;
|
|
303
310
|
if (!record || !record.id) {
|
|
304
311
|
continue;
|
|
305
312
|
}
|
|
306
313
|
if (!record.metadata || !record.metadata.RecordID) {
|
|
307
|
-
(0,
|
|
314
|
+
(0, global_1.LogError)(`Invalid vector metadata: ${record.id}`);
|
|
308
315
|
continue;
|
|
309
316
|
}
|
|
310
|
-
let duplicate = new
|
|
317
|
+
let duplicate = new global_1.PotentialDuplicate();
|
|
311
318
|
duplicate.LoadFromConcatenatedString(record.metadata.RecordID);
|
|
312
319
|
duplicate.ProbabilityScore = record.score;
|
|
313
320
|
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/global';
|
|
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,wBAAwB,CAAC;AAE3D,qBAAa,cAAc;IACzB,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;CAStB"}
|
|
@@ -34,12 +34,12 @@ class VectorSyncBase {
|
|
|
34
34
|
_embedding;
|
|
35
35
|
_languageModel;
|
|
36
36
|
async timer(ms) {
|
|
37
|
-
return new Promise(res => setTimeout(res, ms));
|
|
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(argument => obj[argument] || (obj[argument] === undefined ?
|
|
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;IACzB,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;QAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;IAES,mBAAmB,CAAC,GAAW,EAAE,GAAQ;QAEjD,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,CAAC,QAAQ,EAAE,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;QAC7G,OAAO,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,GAAG,UAAU,CAAC,CAAC;IACnD,CAAC;IAES,KAAK;QACb,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;IAC/B,CAAC;IAES,GAAG;QACX,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;IAC7B,CAAC;IAES,QAAQ;QAChB,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;IACjB,CAAC;IAES,YAAY,CAAC,IAAS,EAAE,IAAY;QAC5C,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAES,OAAO,CAAC,GAAG;QACnB,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;IACd,CAAC;CACF;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,wBAAwB,CAAC;AAEvD,MAAM,MAAM,gBAAgB,GAAG;IAI7B,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,CAAC;CAClB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ai-vector-dupe",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.112.0",
|
|
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,15 +15,14 @@
|
|
|
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/
|
|
26
|
-
"@memberjunction/core-entities": "2.111.0",
|
|
18
|
+
"@memberjunction/ai": "2.112.0",
|
|
19
|
+
"@memberjunction/ai-vectordb": "2.112.0",
|
|
20
|
+
"@memberjunction/ai-vectors": "2.112.0",
|
|
21
|
+
"@memberjunction/ai-vectors-pinecone": "2.112.0",
|
|
22
|
+
"@memberjunction/ai-vector-sync": "2.112.0",
|
|
23
|
+
"@memberjunction/aiengine": "2.112.0",
|
|
24
|
+
"@memberjunction/global": "2.112.0",
|
|
25
|
+
"@memberjunction/core-entities": "2.112.0",
|
|
27
26
|
"dotenv": "^16.4.1"
|
|
28
27
|
},
|
|
29
28
|
"devDependencies": {
|