@ai.ntellect/core 0.7.14 → 0.8.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/dist/graph/event-manager.d.ts +9 -1
- package/dist/graph/event-manager.d.ts.map +1 -1
- package/dist/graph/event-manager.js +115 -37
- package/dist/graph/event-manager.js.map +1 -1
- package/dist/graph/index.d.ts +20 -1
- package/dist/graph/index.d.ts.map +1 -1
- package/dist/graph/index.js +59 -10
- package/dist/graph/index.js.map +1 -1
- package/dist/graph/node.d.ts +0 -24
- package/dist/graph/node.d.ts.map +1 -1
- package/dist/graph/node.js +2 -71
- package/dist/graph/node.js.map +1 -1
- package/dist/graph/observer.d.ts +6 -87
- package/dist/graph/observer.d.ts.map +1 -1
- package/dist/graph/observer.js +3 -116
- package/dist/graph/observer.js.map +1 -1
- package/dist/index.d.ts +1 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -6
- package/dist/index.js.map +1 -1
- package/dist/interfaces/index.d.ts +10 -1
- package/dist/interfaces/index.d.ts.map +1 -1
- package/dist/interfaces/index.js.map +1 -1
- package/dist/modules/agent/agent.d.ts +35 -0
- package/dist/modules/agent/agent.d.ts.map +1 -0
- package/dist/modules/agent/agent.js +106 -0
- package/dist/modules/agent/agent.js.map +1 -0
- package/dist/modules/agent/base/executor.d.ts +51 -0
- package/dist/modules/agent/base/executor.d.ts.map +1 -0
- package/dist/modules/agent/base/executor.js +66 -0
- package/dist/modules/agent/base/executor.js.map +1 -0
- package/dist/modules/agent/base/index.d.ts +30 -0
- package/dist/modules/agent/base/index.d.ts.map +1 -0
- package/dist/modules/agent/base/index.js +100 -0
- package/dist/modules/agent/base/index.js.map +1 -0
- package/dist/modules/agent/generic-assistant.d.ts +20 -0
- package/dist/modules/agent/generic-assistant.d.ts.map +1 -0
- package/dist/modules/agent/generic-assistant.js +89 -0
- package/dist/modules/agent/generic-assistant.js.map +1 -0
- package/dist/modules/agent/generic-executor.d.ts +57 -0
- package/dist/modules/agent/generic-executor.d.ts.map +1 -0
- package/dist/modules/agent/generic-executor.js +200 -0
- package/dist/modules/agent/generic-executor.js.map +1 -0
- package/dist/modules/agent/llm-factory.d.ts +19 -0
- package/dist/modules/agent/llm-factory.d.ts.map +1 -0
- package/dist/modules/agent/llm-factory.js +56 -0
- package/dist/modules/agent/llm-factory.js.map +1 -0
- package/dist/modules/agent/prompt-builder.d.ts +35 -0
- package/dist/modules/agent/prompt-builder.d.ts.map +1 -0
- package/dist/modules/agent/prompt-builder.js +76 -0
- package/dist/modules/agent/prompt-builder.js.map +1 -0
- package/dist/modules/memory/adapters/in-memory/index.d.ts.map +1 -1
- package/dist/modules/memory/adapters/in-memory/index.js +4 -3
- package/dist/modules/memory/adapters/in-memory/index.js.map +1 -1
- package/dist/modules/memory/adapters/meilisearch/index.d.ts.map +1 -1
- package/dist/modules/memory/adapters/meilisearch/index.js +7 -4
- package/dist/modules/memory/adapters/meilisearch/index.js.map +1 -1
- package/dist/modules/memory/adapters/redis/index.d.ts.map +1 -1
- package/dist/modules/memory/adapters/redis/index.js +2 -1
- package/dist/modules/memory/adapters/redis/index.js.map +1 -1
- package/dist/modules/nlp/engine.d.ts +126 -0
- package/dist/modules/nlp/engine.d.ts.map +1 -0
- package/dist/modules/nlp/engine.js +300 -0
- package/dist/modules/nlp/engine.js.map +1 -0
- package/dist/modules/nlp/index.d.ts +27 -0
- package/dist/modules/nlp/index.d.ts.map +1 -0
- package/dist/modules/nlp/index.js +56 -0
- package/dist/modules/nlp/index.js.map +1 -0
- package/dist/types/agent.d.ts +233 -0
- package/dist/types/agent.d.ts.map +1 -0
- package/dist/types/agent.js +29 -0
- package/dist/types/agent.js.map +1 -0
- package/dist/types/index.d.ts +72 -18
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/generate-action-schema.d.ts.map +1 -1
- package/graph/event-manager.ts +135 -42
- package/graph/index.ts +57 -4
- package/graph/node.ts +2 -104
- package/graph/observer.ts +9 -215
- package/index.ts +2 -7
- package/interfaces/index.ts +12 -0
- package/modules/agent/agent.ts +108 -0
- package/modules/agent/base/executor.ts +100 -0
- package/modules/agent/base/index.ts +99 -0
- package/modules/agent/generic-assistant.ts +90 -0
- package/modules/agent/generic-executor.ts +259 -0
- package/modules/agent/llm-factory.ts +47 -0
- package/modules/agent/prompt-builder.ts +78 -0
- package/modules/memory/adapters/in-memory/index.ts +4 -3
- package/modules/memory/adapters/meilisearch/index.ts +7 -4
- package/modules/memory/adapters/redis/index.ts +2 -1
- package/modules/nlp/engine.ts +325 -0
- package/modules/nlp/index.ts +45 -0
- package/package.json +5 -2
- package/test/graph/index.test.ts +6 -4
- package/test/graph/node.test.ts +18 -14
- package/types/agent.ts +174 -0
- package/types/index.ts +74 -18
@@ -1,6 +1,6 @@
|
|
1
1
|
import { ZodSchema } from "zod";
|
2
2
|
import { IEventEmitter } from "../interfaces";
|
3
|
-
import { GraphContext, GraphEvent, GraphNodeConfig } from "../types";
|
3
|
+
import { EventConfig, GraphContext, GraphEvent, GraphNodeConfig } from "../types";
|
4
4
|
import { GraphNode } from "./node";
|
5
5
|
/**
|
6
6
|
* Manages event handling and routing for a graph
|
@@ -18,6 +18,7 @@ export declare class GraphEventManager<T extends ZodSchema> {
|
|
18
18
|
private graphEvents?;
|
19
19
|
private entryNode?;
|
20
20
|
private globalErrorHandler?;
|
21
|
+
private lastEvents;
|
21
22
|
/**
|
22
23
|
* Creates a new GraphEventManager instance
|
23
24
|
* @param eventEmitter - The event emitter implementation to use
|
@@ -88,6 +89,13 @@ export declare class GraphEventManager<T extends ZodSchema> {
|
|
88
89
|
* @private
|
89
90
|
*/
|
90
91
|
private executeNode;
|
92
|
+
/**
|
93
|
+
* Waits for correlated events to occur and validates them using a correlation function
|
94
|
+
*/
|
91
95
|
waitForCorrelatedEvents(eventTypes: string[], timeoutMs: number, correlationFn: (events: GraphEvent<T>[]) => boolean): Promise<GraphEvent<T>[]>;
|
96
|
+
/**
|
97
|
+
* Handles events based on the node's event handler configuration
|
98
|
+
*/
|
99
|
+
handleNodeEvents(nodeName: string, config: EventConfig): Promise<any[]>;
|
92
100
|
}
|
93
101
|
//# sourceMappingURL=event-manager.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"event-manager.d.ts","sourceRoot":"","sources":["../../graph/event-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,
|
1
|
+
{"version":3,"file":"event-manager.d.ts","sourceRoot":"","sources":["../../graph/event-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,WAAW,EACX,YAAY,EACZ,UAAU,EACV,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC;;;;GAIG;AACH,qBAAa,iBAAiB,CAAC,CAAC,SAAS,SAAS;IAsB9C,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,KAAK;IAMb,OAAO,CAAC,YAAY,CAAC;IA5BvB,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,WAAW,CAAqD;IACxE,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,WAAW,CAAC,CAAW;IAC/B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,kBAAkB,CAAC,CAAmD;IAC9E,OAAO,CAAC,UAAU,CAA0B;IAE5C;;;;;;;;;;OAUG;gBAEO,YAAY,EAAE,aAAa,EAC3B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EACnD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,WAAW,CAAC,EAAE,MAAM,EAAE,EACtB,SAAS,CAAC,EAAE,MAAM,EAClB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,EAC7D,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,YAAA;IAUrC;;OAEG;IACI,iBAAiB,IAAI,IAAI;IAWhC;;;;;OAKG;IACI,SAAS,CAAC,CAAC,GAAG,GAAG,EACtB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,CAAC,EACX,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACxB,IAAI;IAWP;;;OAGG;IACH,mBAAmB,IAAI,IAAI;IAiD3B;;;OAGG;IACH,wBAAwB,IAAI,IAAI;IAuChC;;;;;;OAMG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,GAAE,MAAc,GACtB,OAAO,CAAC,GAAG,EAAE,CAAC;IA2CjB;;;;OAIG;IACH,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,GAAG,IAAI;IAI9D;;;;OAIG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAKzC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IAIxB;;;;;;;;;OASG;YACW,WAAW;IA4BzB;;OAEG;IACH,uBAAuB,CACrB,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,GAClD,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAmD3B;;OAEG;IACG,gBAAgB,CACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,GAAG,EAAE,CAAC;CAsFlB"}
|
@@ -34,6 +34,7 @@ class GraphEventManager {
|
|
34
34
|
this.nodeExecutor = nodeExecutor;
|
35
35
|
this.eventSubject = new rxjs_1.Subject();
|
36
36
|
this.nodeStreams = new Map();
|
37
|
+
this.lastEvents = new Map();
|
37
38
|
this.name = name;
|
38
39
|
this.context = context;
|
39
40
|
this.graphEvents = graphEvents;
|
@@ -59,13 +60,11 @@ class GraphEventManager {
|
|
59
60
|
* @param context - Optional graph context
|
60
61
|
*/
|
61
62
|
emitEvent(type, payload, context) {
|
62
|
-
// Éviter la double imbrication des événements
|
63
63
|
const event = {
|
64
64
|
type,
|
65
65
|
payload,
|
66
66
|
timestamp: Date.now(),
|
67
67
|
};
|
68
|
-
// Émettre l'événement une seule fois
|
69
68
|
this.eventSubject.next(event);
|
70
69
|
this.eventEmitter.emit(type, payload);
|
71
70
|
}
|
@@ -208,6 +207,7 @@ class GraphEventManager {
|
|
208
207
|
* @param data - Optional data to include with the event
|
209
208
|
*/
|
210
209
|
emit(eventName, data) {
|
210
|
+
this.lastEvents.set(eventName, data);
|
211
211
|
this.eventEmitter.emit(eventName, data);
|
212
212
|
}
|
213
213
|
/**
|
@@ -237,57 +237,135 @@ class GraphEventManager {
|
|
237
237
|
if (!node) {
|
238
238
|
throw new Error(`Node "${nodeName}" not found`);
|
239
239
|
}
|
240
|
-
//
|
241
|
-
if (node.
|
242
|
-
|
243
|
-
yield this.waitForEvents(node.waitForEvents.events, node.waitForEvents.timeout);
|
244
|
-
}
|
245
|
-
catch (error) {
|
246
|
-
throw new Error(`Timeout waiting for events in node "${nodeName}": ${error.message}`);
|
247
|
-
}
|
240
|
+
// Remplacer le code existant de gestion d'événements
|
241
|
+
if (node.when) {
|
242
|
+
yield this.handleNodeEvents(nodeName, node.when);
|
248
243
|
}
|
249
244
|
return this.nodeExecutor.executeNode(nodeName, context, inputs, triggeredByEvent);
|
250
245
|
});
|
251
246
|
}
|
247
|
+
/**
|
248
|
+
* Waits for correlated events to occur and validates them using a correlation function
|
249
|
+
*/
|
252
250
|
waitForCorrelatedEvents(eventTypes, timeoutMs, correlationFn) {
|
253
|
-
return
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
251
|
+
return new Promise((resolve, reject) => {
|
252
|
+
const receivedEvents = new Map();
|
253
|
+
const eventHandlers = new Map();
|
254
|
+
let isResolved = false;
|
255
|
+
const cleanup = () => {
|
256
|
+
eventHandlers.forEach((handler, event) => {
|
257
|
+
this.eventEmitter.removeListener(event, handler);
|
258
|
+
});
|
259
|
+
};
|
260
|
+
eventTypes.forEach((eventType) => {
|
261
|
+
const handler = (eventData) => {
|
258
262
|
if (!isResolved) {
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
const events = Array.from(receivedEvents.values());
|
269
|
-
if (correlationFn(events)) {
|
270
|
-
if (!isResolved) {
|
263
|
+
const event = {
|
264
|
+
type: eventType,
|
265
|
+
payload: eventData,
|
266
|
+
timestamp: Date.now(),
|
267
|
+
};
|
268
|
+
receivedEvents.set(eventType, event);
|
269
|
+
if (eventTypes.every((type) => receivedEvents.has(type))) {
|
270
|
+
const events = Array.from(receivedEvents.values());
|
271
|
+
if (correlationFn(events)) {
|
271
272
|
isResolved = true;
|
272
273
|
clearTimeout(timeoutId);
|
273
|
-
|
274
|
-
this.eventEmitter.removeAllListeners(type);
|
275
|
-
});
|
274
|
+
cleanup();
|
276
275
|
resolve(events);
|
277
276
|
}
|
278
277
|
}
|
279
278
|
}
|
280
279
|
};
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
280
|
+
eventHandlers.set(eventType, handler);
|
281
|
+
this.eventEmitter.on(eventType, handler);
|
282
|
+
});
|
283
|
+
const timeoutId = setTimeout(() => {
|
284
|
+
if (!isResolved) {
|
285
|
+
cleanup();
|
286
|
+
reject(new Error(`Timeout waiting for correlated events: ${eventTypes.join(", ")}`));
|
287
|
+
}
|
288
|
+
}, timeoutMs);
|
289
|
+
});
|
290
|
+
}
|
291
|
+
/**
|
292
|
+
* Handles events based on the node's event handler configuration
|
293
|
+
*/
|
294
|
+
handleNodeEvents(nodeName, config) {
|
295
|
+
return __awaiter(this, void 0, void 0, function* () {
|
296
|
+
const { events, timeout = 30000, strategy } = config;
|
297
|
+
return new Promise((resolve, reject) => {
|
298
|
+
const receivedEvents = new Map();
|
299
|
+
const eventHandlers = new Map();
|
300
|
+
let isResolved = false;
|
301
|
+
// Ajouter les événements déjà reçus
|
302
|
+
events.forEach((event) => {
|
303
|
+
const existingEvent = this.lastEvents.get(event);
|
304
|
+
if (existingEvent) {
|
305
|
+
receivedEvents.set(event, {
|
306
|
+
type: event,
|
307
|
+
payload: existingEvent,
|
286
308
|
timestamp: Date.now(),
|
287
309
|
});
|
288
|
-
|
289
|
-
});
|
310
|
+
}
|
290
311
|
});
|
312
|
+
// Vérifier si on a déjà tous les événements nécessaires
|
313
|
+
const checkEvents = () => {
|
314
|
+
var _a;
|
315
|
+
if (isResolved)
|
316
|
+
return;
|
317
|
+
const eventsList = Array.from(receivedEvents.values());
|
318
|
+
switch (strategy.type) {
|
319
|
+
case "single":
|
320
|
+
if (receivedEvents.size > 0) {
|
321
|
+
resolve(eventsList);
|
322
|
+
isResolved = true;
|
323
|
+
}
|
324
|
+
break;
|
325
|
+
case "all":
|
326
|
+
case "correlate":
|
327
|
+
const allReceived = events.every((e) => receivedEvents.has(e));
|
328
|
+
if (allReceived) {
|
329
|
+
if (strategy.type === "correlate") {
|
330
|
+
const correlated = (_a = strategy.correlation) === null || _a === void 0 ? void 0 : _a.call(strategy, eventsList);
|
331
|
+
if (!correlated)
|
332
|
+
return;
|
333
|
+
}
|
334
|
+
resolve(eventsList);
|
335
|
+
isResolved = true;
|
336
|
+
}
|
337
|
+
break;
|
338
|
+
}
|
339
|
+
if (isResolved) {
|
340
|
+
cleanup();
|
341
|
+
}
|
342
|
+
};
|
343
|
+
events.forEach((event) => {
|
344
|
+
if (!receivedEvents.has(event)) {
|
345
|
+
const handler = (eventData) => {
|
346
|
+
receivedEvents.set(event, {
|
347
|
+
type: event,
|
348
|
+
payload: eventData,
|
349
|
+
timestamp: Date.now(),
|
350
|
+
});
|
351
|
+
checkEvents();
|
352
|
+
};
|
353
|
+
eventHandlers.set(event, handler);
|
354
|
+
this.eventEmitter.on(event, handler);
|
355
|
+
}
|
356
|
+
});
|
357
|
+
const cleanup = () => {
|
358
|
+
eventHandlers.forEach((handler, event) => {
|
359
|
+
this.eventEmitter.removeListener(event, handler);
|
360
|
+
});
|
361
|
+
};
|
362
|
+
checkEvents();
|
363
|
+
const timeoutId = setTimeout(() => {
|
364
|
+
if (!isResolved) {
|
365
|
+
cleanup();
|
366
|
+
reject(new Error(`Timeout waiting for events: ${events.join(", ")}`));
|
367
|
+
}
|
368
|
+
}, timeout);
|
291
369
|
});
|
292
370
|
});
|
293
371
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"event-manager.js","sourceRoot":"","sources":["../../graph/event-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+BAAmD;
|
1
|
+
{"version":3,"file":"event-manager.js","sourceRoot":"","sources":["../../graph/event-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/index.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import { ZodSchema } from "zod";
|
2
|
-
import { GraphObservable } from "../interfaces";
|
2
|
+
import { GraphObservable, NLPNodeConfig } from "../interfaces";
|
3
3
|
import { GraphConfig, GraphContext, GraphNodeConfig } from "../types";
|
4
4
|
import { NodeParams } from "./node";
|
5
5
|
import { GraphObserver } from "./observer";
|
@@ -34,6 +34,7 @@ export declare class GraphFlow<T extends ZodSchema> {
|
|
34
34
|
private logger;
|
35
35
|
private eventManager;
|
36
36
|
private nodeExecutor;
|
37
|
+
private nlpNodes;
|
37
38
|
/**
|
38
39
|
* Creates a new instance of GraphFlow
|
39
40
|
* @param {string} name - The name of the graph flow
|
@@ -161,5 +162,23 @@ export declare class GraphFlow<T extends ZodSchema> {
|
|
161
162
|
* @returns {GraphVisualizer<T>} A visualizer instance
|
162
163
|
*/
|
163
164
|
createVisualizer(): GraphVisualizer<T>;
|
165
|
+
/**
|
166
|
+
* Gets the schema for the current graph
|
167
|
+
* @returns {T} The schema for the current graph
|
168
|
+
*/
|
169
|
+
getSchema(): T;
|
170
|
+
/**
|
171
|
+
* Adds a new NLP node to the graph
|
172
|
+
* @param {NLPNodeConfig<T>} config - Configuration for the NLP node
|
173
|
+
* @returns {Promise<void>}
|
174
|
+
*/
|
175
|
+
addNLPNode(config: NLPNodeConfig<T>): Promise<void>;
|
176
|
+
/**
|
177
|
+
* Processes natural language input using a specific NLP node
|
178
|
+
* @param {string} text - The input text to process
|
179
|
+
* @param {string} nodeName - The name of the NLP node to use
|
180
|
+
* @returns {Promise<GraphContext<T>>} The result of the NLP node execution
|
181
|
+
*/
|
182
|
+
processNaturalLanguage(text: string, nodeName: string): Promise<GraphContext<T>>;
|
164
183
|
}
|
165
184
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../graph/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,eAAe,EAAiB,MAAM,eAAe,CAAC;
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../graph/index.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/index.js
CHANGED
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.GraphFlow = void 0;
|
13
13
|
const events_1 = require("events");
|
14
14
|
const rxjs_1 = require("rxjs");
|
15
|
+
const nlp_1 = require("../modules/nlp");
|
15
16
|
const event_manager_1 = require("./event-manager");
|
16
17
|
const logger_1 = require("./logger");
|
17
18
|
const node_1 = require("./node");
|
@@ -43,6 +44,7 @@ class GraphFlow {
|
|
43
44
|
this.verbose = false;
|
44
45
|
this.eventSubject = new rxjs_1.Subject();
|
45
46
|
this.destroySubject = new rxjs_1.Subject();
|
47
|
+
this.nlpNodes = new Map();
|
46
48
|
this.nodes = new Map(config.nodes.map((node) => [node.name, node]));
|
47
49
|
this.validator = config.schema;
|
48
50
|
this.context = config.schema.parse(config.context);
|
@@ -58,7 +60,7 @@ class GraphFlow {
|
|
58
60
|
this.setupEventStreams();
|
59
61
|
this.setupEventListeners();
|
60
62
|
this.setupGraphEventListeners();
|
61
|
-
this.observer = new observer_1.GraphObserver(this, this.eventSubject, this.stateSubject, this.destroySubject);
|
63
|
+
this.observer = new observer_1.GraphObserver(this, this.eventSubject, this.stateSubject, this.destroySubject, this.eventManager);
|
62
64
|
}
|
63
65
|
/**
|
64
66
|
* Sets up event listeners for node-based events
|
@@ -116,6 +118,9 @@ class GraphFlow {
|
|
116
118
|
*/
|
117
119
|
executeNode(nodeName_1, context_1, inputs_1) {
|
118
120
|
return __awaiter(this, arguments, void 0, function* (nodeName, context, inputs, triggeredByEvent = false) {
|
121
|
+
const node = this.nodes.get(nodeName);
|
122
|
+
if (!node)
|
123
|
+
throw new Error(`Node "${nodeName}" not found`);
|
119
124
|
return this.nodeExecutor.executeNode(nodeName, context, inputs, triggeredByEvent);
|
120
125
|
});
|
121
126
|
}
|
@@ -191,15 +196,14 @@ class GraphFlow {
|
|
191
196
|
* @returns {Promise<void>}
|
192
197
|
*/
|
193
198
|
emit(eventName, data) {
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
});
|
199
|
+
const event = {
|
200
|
+
type: eventName,
|
201
|
+
payload: data,
|
202
|
+
timestamp: Date.now(),
|
203
|
+
};
|
204
|
+
this.eventSubject.next(event);
|
205
|
+
this.eventManager.emit(eventName, data);
|
206
|
+
return Promise.resolve();
|
203
207
|
}
|
204
208
|
/**
|
205
209
|
* Registers an event handler
|
@@ -306,6 +310,51 @@ class GraphFlow {
|
|
306
310
|
createVisualizer() {
|
307
311
|
return new visualizer_1.GraphVisualizer(this.nodes);
|
308
312
|
}
|
313
|
+
/**
|
314
|
+
* Gets the schema for the current graph
|
315
|
+
* @returns {T} The schema for the current graph
|
316
|
+
*/
|
317
|
+
getSchema() {
|
318
|
+
return this.validator;
|
319
|
+
}
|
320
|
+
/**
|
321
|
+
* Adds a new NLP node to the graph
|
322
|
+
* @param {NLPNodeConfig<T>} config - Configuration for the NLP node
|
323
|
+
* @returns {Promise<void>}
|
324
|
+
*/
|
325
|
+
addNLPNode(config) {
|
326
|
+
return __awaiter(this, void 0, void 0, function* () {
|
327
|
+
const node = new nlp_1.NLPNode(config);
|
328
|
+
yield node.initialize();
|
329
|
+
this.nlpNodes.set(config.name, node);
|
330
|
+
this.addNode({
|
331
|
+
name: config.name,
|
332
|
+
execute: (context, input) => __awaiter(this, void 0, void 0, function* () {
|
333
|
+
if (!(input === null || input === void 0 ? void 0 : input.input))
|
334
|
+
return;
|
335
|
+
const result = yield node.process(input.input);
|
336
|
+
console.log("GraphFlow NLP result:", result);
|
337
|
+
Object.assign(context, { nlpResult: result });
|
338
|
+
}),
|
339
|
+
next: config.next,
|
340
|
+
});
|
341
|
+
});
|
342
|
+
}
|
343
|
+
/**
|
344
|
+
* Processes natural language input using a specific NLP node
|
345
|
+
* @param {string} text - The input text to process
|
346
|
+
* @param {string} nodeName - The name of the NLP node to use
|
347
|
+
* @returns {Promise<GraphContext<T>>} The result of the NLP node execution
|
348
|
+
*/
|
349
|
+
processNaturalLanguage(text, nodeName) {
|
350
|
+
return __awaiter(this, void 0, void 0, function* () {
|
351
|
+
const node = this.nlpNodes.get(nodeName);
|
352
|
+
if (!node) {
|
353
|
+
throw new Error(`NLP node "${nodeName}" not found`);
|
354
|
+
}
|
355
|
+
return this.execute(nodeName, { input: text });
|
356
|
+
});
|
357
|
+
}
|
309
358
|
}
|
310
359
|
exports.GraphFlow = GraphFlow;
|
311
360
|
//# sourceMappingURL=index.js.map
|
package/dist/graph/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../graph/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAsC;AACtC,+BAAgD;
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../graph/index.ts"],"names":[],"mappings":"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"}
|
package/dist/graph/node.d.ts
CHANGED
@@ -54,14 +54,6 @@ export declare class GraphNode<T extends ZodSchema> {
|
|
54
54
|
* @private
|
55
55
|
*/
|
56
56
|
private validateParams;
|
57
|
-
/**
|
58
|
-
* Handles event-related operations for a node
|
59
|
-
* @param node - The node whose events need handling
|
60
|
-
* @param nodeName - The name of the node
|
61
|
-
* @param context - The current graph context
|
62
|
-
* @private
|
63
|
-
*/
|
64
|
-
private handleEvents;
|
65
57
|
/**
|
66
58
|
* Executes a node with retry logic
|
67
59
|
* @param node - The node to execute
|
@@ -73,21 +65,5 @@ export declare class GraphNode<T extends ZodSchema> {
|
|
73
65
|
* @private
|
74
66
|
*/
|
75
67
|
private executeWithRetry;
|
76
|
-
/**
|
77
|
-
* Handles correlated events for a node
|
78
|
-
* @param node - The node with correlated events
|
79
|
-
* @param nodeName - The name of the node
|
80
|
-
* @throws Error if correlation fails or timeout occurs
|
81
|
-
* @private
|
82
|
-
*/
|
83
|
-
private handleCorrelatedEvents;
|
84
|
-
/**
|
85
|
-
* Handles waiting for events
|
86
|
-
* @param node - The node waiting for events
|
87
|
-
* @param nodeName - The name of the node
|
88
|
-
* @throws Error if timeout occurs
|
89
|
-
* @private
|
90
|
-
*/
|
91
|
-
private handleWaitForEvents;
|
92
68
|
}
|
93
69
|
//# sourceMappingURL=node.d.ts.map
|
package/dist/graph/node.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../graph/node.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,GAAG;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CAC/C;AAED,qBAAa,SAAS,CAAC,CAAC,SAAS,SAAS;IAatC,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;IAhBtB,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,YAAY,CAAgB;IAEpC;;;;;;;OAOG;gBAEO,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAC3C,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAClC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACpC,YAAY,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAKxD;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IA+BjB;;;;;;;OAOG;IACU,WAAW,CACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,MAAM,EAAE,GAAG,EACX,gBAAgB,GAAE,OAAe,GAChC,OAAO,CAAC,IAAI,CAAC;
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../graph/node.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,GAAG;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CAC/C;AAED,qBAAa,SAAS,CAAC,CAAC,SAAS,SAAS;IAatC,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,YAAY;IAhBtB,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,YAAY,CAAgB;IAEpC;;;;;;;OAOG;gBAEO,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAC3C,MAAM,EAAE,WAAW,EACnB,YAAY,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAClC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACpC,YAAY,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAKxD;;;;;OAKG;IACH,OAAO,CAAC,SAAS;IA+BjB;;;;;;;OAOG;IACU,WAAW,CACtB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,MAAM,EAAE,GAAG,EACX,gBAAgB,GAAE,OAAe,GAChC,OAAO,CAAC,IAAI,CAAC;IA4EhB;;;;;;;OAOG;YACW,cAAc;IAoB5B;;;;;;;;;OASG;YACW,gBAAgB;CAwC/B"}
|
package/dist/graph/node.js
CHANGED
@@ -72,14 +72,8 @@ class GraphNode {
|
|
72
72
|
const nodeContext = Object.assign({}, context);
|
73
73
|
this.emitEvent("nodeStarted", { name: nodeName, context: nodeContext });
|
74
74
|
try {
|
75
|
-
if (node.
|
76
|
-
yield this.eventManager.
|
77
|
-
return node.correlateEvents.correlation(events);
|
78
|
-
});
|
79
|
-
}
|
80
|
-
// Ensuite, attendre les événements si waitForEvents est défini
|
81
|
-
if (node.waitForEvents) {
|
82
|
-
yield this.eventManager.waitForEvents(node.waitForEvents.events, node.waitForEvents.timeout);
|
75
|
+
if (node.when) {
|
76
|
+
yield this.eventManager.handleNodeEvents(nodeName, node.when);
|
83
77
|
}
|
84
78
|
const contextProxy = new Proxy(nodeContext, {
|
85
79
|
set: (target, prop, value) => {
|
@@ -163,23 +157,6 @@ class GraphNode {
|
|
163
157
|
}
|
164
158
|
});
|
165
159
|
}
|
166
|
-
/**
|
167
|
-
* Handles event-related operations for a node
|
168
|
-
* @param node - The node whose events need handling
|
169
|
-
* @param nodeName - The name of the node
|
170
|
-
* @param context - The current graph context
|
171
|
-
* @private
|
172
|
-
*/
|
173
|
-
handleEvents(node, nodeName, context) {
|
174
|
-
return __awaiter(this, void 0, void 0, function* () {
|
175
|
-
if (node.correlateEvents) {
|
176
|
-
yield this.handleCorrelatedEvents(node, nodeName);
|
177
|
-
}
|
178
|
-
if (node.waitForEvents) {
|
179
|
-
yield this.handleWaitForEvents(node, nodeName);
|
180
|
-
}
|
181
|
-
});
|
182
|
-
}
|
183
160
|
/**
|
184
161
|
* Executes a node with retry logic
|
185
162
|
* @param node - The node to execute
|
@@ -224,52 +201,6 @@ class GraphNode {
|
|
224
201
|
}
|
225
202
|
});
|
226
203
|
}
|
227
|
-
/**
|
228
|
-
* Handles correlated events for a node
|
229
|
-
* @param node - The node with correlated events
|
230
|
-
* @param nodeName - The name of the node
|
231
|
-
* @throws Error if correlation fails or timeout occurs
|
232
|
-
* @private
|
233
|
-
*/
|
234
|
-
handleCorrelatedEvents(node, nodeName) {
|
235
|
-
return __awaiter(this, void 0, void 0, function* () {
|
236
|
-
if (node.correlateEvents) {
|
237
|
-
const { events, timeout, correlation } = node.correlateEvents;
|
238
|
-
this.logger.addLog(`⏳ Node "${nodeName}" waiting for correlated events: ${events.join(", ")}`);
|
239
|
-
try {
|
240
|
-
// Attendre les événements
|
241
|
-
const receivedEvents = yield this.eventManager.waitForEvents(events, timeout);
|
242
|
-
// Vérifier la corrélation
|
243
|
-
if (!correlation(receivedEvents)) {
|
244
|
-
this.logger.addLog(`❌ Event correlation failed for node "${nodeName}"`);
|
245
|
-
throw new Error(`Event correlation failed for node "${nodeName}"`);
|
246
|
-
}
|
247
|
-
this.logger.addLog(`✅ Event correlation succeeded for node "${nodeName}"`);
|
248
|
-
}
|
249
|
-
catch (error) {
|
250
|
-
this.logger.addLog(`❌ Error waiting for events: ${error.message}`);
|
251
|
-
throw error;
|
252
|
-
}
|
253
|
-
}
|
254
|
-
});
|
255
|
-
}
|
256
|
-
/**
|
257
|
-
* Handles waiting for events
|
258
|
-
* @param node - The node waiting for events
|
259
|
-
* @param nodeName - The name of the node
|
260
|
-
* @throws Error if timeout occurs
|
261
|
-
* @private
|
262
|
-
*/
|
263
|
-
handleWaitForEvents(node, nodeName) {
|
264
|
-
return __awaiter(this, void 0, void 0, function* () {
|
265
|
-
if (node.waitForEvents) {
|
266
|
-
const { events, timeout } = node.waitForEvents;
|
267
|
-
this.logger.addLog(`⏳ Node "${nodeName}" waiting for events: ${events.join(", ")}`);
|
268
|
-
yield this.eventManager.waitForEvents(events, timeout);
|
269
|
-
this.logger.addLog(`✅ All events received for node "${nodeName}"`);
|
270
|
-
}
|
271
|
-
});
|
272
|
-
}
|
273
204
|
}
|
274
205
|
exports.GraphNode = GraphNode;
|
275
206
|
//# sourceMappingURL=node.js.map
|