@ai.ntellect/core 0.7.8 → 1.0.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.
Files changed (111) hide show
  1. package/README.md +158 -81
  2. package/index.ts +462 -22
  3. package/package copy.json +21 -0
  4. package/package.json +9 -44
  5. package/tsconfig.json +108 -22
  6. package/types.ts +62 -0
  7. package/utils/executor.ts +42 -0
  8. package/.mocharc.json +0 -5
  9. package/dist/graph/controller.d.ts +0 -31
  10. package/dist/graph/controller.d.ts.map +0 -1
  11. package/dist/graph/controller.js +0 -71
  12. package/dist/graph/controller.js.map +0 -1
  13. package/dist/graph/event-manager.d.ts +0 -93
  14. package/dist/graph/event-manager.d.ts.map +0 -1
  15. package/dist/graph/event-manager.js +0 -296
  16. package/dist/graph/event-manager.js.map +0 -1
  17. package/dist/graph/index.d.ts +0 -159
  18. package/dist/graph/index.d.ts.map +0 -1
  19. package/dist/graph/index.js +0 -303
  20. package/dist/graph/index.js.map +0 -1
  21. package/dist/graph/logger.d.ts +0 -46
  22. package/dist/graph/logger.d.ts.map +0 -1
  23. package/dist/graph/logger.js +0 -69
  24. package/dist/graph/logger.js.map +0 -1
  25. package/dist/graph/node.d.ts +0 -93
  26. package/dist/graph/node.d.ts.map +0 -1
  27. package/dist/graph/node.js +0 -259
  28. package/dist/graph/node.js.map +0 -1
  29. package/dist/graph/observer.d.ts +0 -115
  30. package/dist/graph/observer.d.ts.map +0 -1
  31. package/dist/graph/observer.js +0 -198
  32. package/dist/graph/observer.js.map +0 -1
  33. package/dist/index.d.ts +0 -26
  34. package/dist/index.d.ts.map +0 -1
  35. package/dist/index.js +0 -42
  36. package/dist/index.js.map +0 -1
  37. package/dist/interfaces/index.d.ts +0 -447
  38. package/dist/interfaces/index.d.ts.map +0 -1
  39. package/dist/interfaces/index.js +0 -75
  40. package/dist/interfaces/index.js.map +0 -1
  41. package/dist/modules/agenda/adapters/node-cron/index.d.ts +0 -17
  42. package/dist/modules/agenda/adapters/node-cron/index.d.ts.map +0 -1
  43. package/dist/modules/agenda/adapters/node-cron/index.js +0 -30
  44. package/dist/modules/agenda/adapters/node-cron/index.js.map +0 -1
  45. package/dist/modules/agenda/index.d.ts +0 -63
  46. package/dist/modules/agenda/index.d.ts.map +0 -1
  47. package/dist/modules/agenda/index.js +0 -141
  48. package/dist/modules/agenda/index.js.map +0 -1
  49. package/dist/modules/embedding/adapters/ai/index.d.ts +0 -29
  50. package/dist/modules/embedding/adapters/ai/index.d.ts.map +0 -1
  51. package/dist/modules/embedding/adapters/ai/index.js +0 -58
  52. package/dist/modules/embedding/adapters/ai/index.js.map +0 -1
  53. package/dist/modules/embedding/index.d.ts +0 -36
  54. package/dist/modules/embedding/index.d.ts.map +0 -1
  55. package/dist/modules/embedding/index.js +0 -60
  56. package/dist/modules/embedding/index.js.map +0 -1
  57. package/dist/modules/memory/adapters/in-memory/index.d.ts +0 -120
  58. package/dist/modules/memory/adapters/in-memory/index.d.ts.map +0 -1
  59. package/dist/modules/memory/adapters/in-memory/index.js +0 -211
  60. package/dist/modules/memory/adapters/in-memory/index.js.map +0 -1
  61. package/dist/modules/memory/adapters/meilisearch/index.d.ts +0 -110
  62. package/dist/modules/memory/adapters/meilisearch/index.d.ts.map +0 -1
  63. package/dist/modules/memory/adapters/meilisearch/index.js +0 -321
  64. package/dist/modules/memory/adapters/meilisearch/index.js.map +0 -1
  65. package/dist/modules/memory/adapters/redis/index.d.ts +0 -82
  66. package/dist/modules/memory/adapters/redis/index.d.ts.map +0 -1
  67. package/dist/modules/memory/adapters/redis/index.js +0 -159
  68. package/dist/modules/memory/adapters/redis/index.js.map +0 -1
  69. package/dist/modules/memory/index.d.ts +0 -67
  70. package/dist/modules/memory/index.d.ts.map +0 -1
  71. package/dist/modules/memory/index.js +0 -104
  72. package/dist/modules/memory/index.js.map +0 -1
  73. package/dist/types/index.d.ts +0 -170
  74. package/dist/types/index.d.ts.map +0 -1
  75. package/dist/types/index.js +0 -3
  76. package/dist/types/index.js.map +0 -1
  77. package/dist/utils/generate-action-schema.d.ts +0 -5
  78. package/dist/utils/generate-action-schema.d.ts.map +0 -1
  79. package/dist/utils/generate-action-schema.js +0 -44
  80. package/dist/utils/generate-action-schema.js.map +0 -1
  81. package/dist/utils/header-builder.d.ts +0 -12
  82. package/dist/utils/header-builder.d.ts.map +0 -1
  83. package/dist/utils/header-builder.js +0 -35
  84. package/dist/utils/header-builder.js.map +0 -1
  85. package/graph/controller.ts +0 -74
  86. package/graph/event-manager.ts +0 -363
  87. package/graph/index.ts +0 -395
  88. package/graph/logger.ts +0 -70
  89. package/graph/node.ts +0 -327
  90. package/graph/observer.ts +0 -368
  91. package/interfaces/index.ts +0 -548
  92. package/modules/agenda/adapters/node-cron/index.ts +0 -25
  93. package/modules/agenda/index.ts +0 -146
  94. package/modules/embedding/adapters/ai/index.ts +0 -42
  95. package/modules/embedding/index.ts +0 -45
  96. package/modules/memory/adapters/in-memory/index.ts +0 -207
  97. package/modules/memory/adapters/meilisearch/index.ts +0 -361
  98. package/modules/memory/adapters/redis/index.ts +0 -164
  99. package/modules/memory/index.ts +0 -93
  100. package/test/graph/controller.test.ts +0 -187
  101. package/test/graph/event-manager.test.ts +0 -118
  102. package/test/graph/index.test.ts +0 -684
  103. package/test/graph/node.test.ts +0 -655
  104. package/test/graph/observer.test.ts +0 -398
  105. package/test/modules/agenda/node-cron.test.ts +0 -307
  106. package/test/modules/memory/adapters/in-memory.test.ts +0 -153
  107. package/test/modules/memory/adapters/meilisearch.test.ts +0 -287
  108. package/test/modules/memory/base.test.ts +0 -230
  109. package/types/index.ts +0 -190
  110. package/utils/generate-action-schema.ts +0 -46
  111. package/utils/header-builder.ts +0 -40
@@ -1,63 +0,0 @@
1
- import { ICronService, IMemoryService } from "../../interfaces";
2
- import { ScheduledRequest } from "../../types";
3
- /**
4
- * @module Agenda
5
- * @description A module for scheduling and managing cron-based tasks.
6
- * Provides functionality for scheduling requests, managing their lifecycle,
7
- * and handling recurring and one-time tasks.
8
- */
9
- export declare class Agenda {
10
- private readonly cronService;
11
- private readonly storage;
12
- /**
13
- * Creates an instance of Agenda
14
- * @param {ICronService} cronService - The cron service implementation
15
- * @param {IMemoryService} storage - The storage service for jobs and requests
16
- */
17
- constructor(cronService: ICronService, storage: IMemoryService);
18
- /**
19
- * Schedule a new request to be processed later
20
- * @param {Object} request - The request configuration
21
- * @param {string} request.originalRequest - The original request to be executed
22
- * @param {string} request.cronExpression - The cron expression for scheduling
23
- * @param {Object} [callbacks] - Optional callback functions
24
- * @param {Function} [callbacks.onScheduled] - Called when request is scheduled
25
- * @param {Function} [callbacks.onExecuted] - Called when request is executed
26
- * @returns {Promise<string>} The ID of the scheduled request
27
- */
28
- scheduleRequest(request: {
29
- originalRequest: string;
30
- cronExpression: string;
31
- }, callbacks?: {
32
- onScheduled?: (id: string) => void;
33
- onExecuted?: (id: string, originalRequest: string) => void;
34
- }): Promise<string>;
35
- /**
36
- * Cancels a scheduled request by its ID
37
- * @param {string} requestId - The ID of the request to cancel
38
- * @returns {Promise<boolean>} True if the request was found and cancelled, false otherwise
39
- */
40
- cancelScheduledRequest(requestId: string): Promise<boolean>;
41
- /**
42
- * Retrieves all scheduled requests
43
- * @returns {Promise<ScheduledRequest[]>} Array of all scheduled requests
44
- */
45
- getScheduledRequests(): Promise<ScheduledRequest[]>;
46
- /**
47
- * Stops all scheduled jobs
48
- * @returns {Promise<void>}
49
- */
50
- stopAll(): Promise<void>;
51
- /**
52
- * Stops the agenda service
53
- * @returns {Promise<void>}
54
- */
55
- stop(): Promise<void>;
56
- /**
57
- * Cancels requests matching the query
58
- * @param {Object} query - Query to match requests against
59
- * @returns {Promise<void>}
60
- */
61
- cancel(query: {}): Promise<void>;
62
- }
63
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../modules/agenda/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C;;;;;GAKG;AACH,qBAAa,MAAM;IAOf,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAP1B;;;;OAIG;gBAEgB,WAAW,EAAE,YAAY,EACzB,OAAO,EAAE,cAAc;IAG1C;;;;;;;;;OASG;IACG,eAAe,CACnB,OAAO,EAAE;QACP,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;KACxB,EACD,SAAS,CAAC,EAAE;QACV,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;QACnC,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,KAAK,IAAI,CAAC;KAC5D,GACA,OAAO,CAAC,MAAM,CAAC;IA6ClB;;;;OAIG;IACG,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBjE;;;OAGG;IACG,oBAAoB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAIzD;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAU9B;;;OAGG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAKlC;;;;OAIG;IACU,MAAM,CAAC,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAI9C"}
@@ -1,141 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.Agenda = void 0;
13
- /**
14
- * @module Agenda
15
- * @description A module for scheduling and managing cron-based tasks.
16
- * Provides functionality for scheduling requests, managing their lifecycle,
17
- * and handling recurring and one-time tasks.
18
- */
19
- class Agenda {
20
- /**
21
- * Creates an instance of Agenda
22
- * @param {ICronService} cronService - The cron service implementation
23
- * @param {IMemoryService} storage - The storage service for jobs and requests
24
- */
25
- constructor(cronService, storage) {
26
- this.cronService = cronService;
27
- this.storage = storage;
28
- }
29
- /**
30
- * Schedule a new request to be processed later
31
- * @param {Object} request - The request configuration
32
- * @param {string} request.originalRequest - The original request to be executed
33
- * @param {string} request.cronExpression - The cron expression for scheduling
34
- * @param {Object} [callbacks] - Optional callback functions
35
- * @param {Function} [callbacks.onScheduled] - Called when request is scheduled
36
- * @param {Function} [callbacks.onExecuted] - Called when request is executed
37
- * @returns {Promise<string>} The ID of the scheduled request
38
- */
39
- scheduleRequest(request, callbacks) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- const id = crypto.randomUUID();
42
- const scheduledRequest = {
43
- id,
44
- originalRequest: request.originalRequest,
45
- cronExpression: request.cronExpression,
46
- isRecurring: false,
47
- createdAt: new Date(),
48
- };
49
- // Create cron job using the injected service
50
- const cronJob = this.cronService.schedule(request.cronExpression, () => __awaiter(this, void 0, void 0, function* () {
51
- console.log(`🔄 Executing scheduled request: ${id}`);
52
- if (callbacks === null || callbacks === void 0 ? void 0 : callbacks.onExecuted) {
53
- callbacks.onExecuted(id, scheduledRequest.originalRequest);
54
- }
55
- console.log(`✅ Scheduled request executed successfully: ${id}`);
56
- // Auto-stop for non-recurring tasks
57
- if (!scheduledRequest.isRecurring) {
58
- yield this.cancelScheduledRequest(id);
59
- }
60
- }));
61
- // Start job in non-running mode
62
- cronJob.stop();
63
- // Store request and job using storage service
64
- yield this.storage.saveRequest(id, scheduledRequest);
65
- yield this.storage.saveJob(id, cronJob);
66
- if (callbacks === null || callbacks === void 0 ? void 0 : callbacks.onScheduled)
67
- callbacks.onScheduled(id);
68
- // Start the job after storing
69
- cronJob.start();
70
- return id;
71
- });
72
- }
73
- /**
74
- * Cancels a scheduled request by its ID
75
- * @param {string} requestId - The ID of the request to cancel
76
- * @returns {Promise<boolean>} True if the request was found and cancelled, false otherwise
77
- */
78
- cancelScheduledRequest(requestId) {
79
- return __awaiter(this, void 0, void 0, function* () {
80
- const cronJob = yield this.storage.getJob(requestId);
81
- if (cronJob) {
82
- try {
83
- cronJob.stop();
84
- yield this.storage.deleteJob(requestId);
85
- yield this.storage.deleteRequest(requestId);
86
- return true;
87
- }
88
- catch (error) {
89
- console.error(`Failed to stop cron job ${requestId}:`, error);
90
- return false;
91
- }
92
- }
93
- return false;
94
- });
95
- }
96
- /**
97
- * Retrieves all scheduled requests
98
- * @returns {Promise<ScheduledRequest[]>} Array of all scheduled requests
99
- */
100
- getScheduledRequests() {
101
- return __awaiter(this, void 0, void 0, function* () {
102
- return this.storage.getAllRequests();
103
- });
104
- }
105
- /**
106
- * Stops all scheduled jobs
107
- * @returns {Promise<void>}
108
- */
109
- stopAll() {
110
- return __awaiter(this, void 0, void 0, function* () {
111
- const requests = yield this.getScheduledRequests();
112
- for (const request of requests) {
113
- yield this.cancelScheduledRequest(request.id);
114
- }
115
- yield this.storage.clear();
116
- });
117
- }
118
- /**
119
- * Stops the agenda service
120
- * @returns {Promise<void>}
121
- */
122
- stop() {
123
- return __awaiter(this, void 0, void 0, function* () {
124
- yield this.stopAll();
125
- yield new Promise((resolve) => setTimeout(resolve, 100));
126
- });
127
- }
128
- /**
129
- * Cancels requests matching the query
130
- * @param {Object} query - Query to match requests against
131
- * @returns {Promise<void>}
132
- */
133
- cancel(query) {
134
- return __awaiter(this, void 0, void 0, function* () {
135
- yield this.stopAll();
136
- yield new Promise((resolve) => setTimeout(resolve, 100));
137
- });
138
- }
139
- }
140
- exports.Agenda = Agenda;
141
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../modules/agenda/index.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- import { EmbeddingModel } from "ai";
2
- import { IEmbeddingModel } from "../../../../interfaces";
3
- /**
4
- * @module AIEmbeddingAdapter
5
- * @description Adapter implementation for AI-based embedding service.
6
- * Provides integration with AI models for text embedding generation.
7
- * @implements {IEmbeddingModel}
8
- */
9
- export declare class AIEmbeddingAdapter implements IEmbeddingModel {
10
- private readonly model;
11
- /**
12
- * Creates an instance of AIEmbeddingAdapter
13
- * @param {EmbeddingModel<string>} model - The AI embedding model to use
14
- */
15
- constructor(model: EmbeddingModel<string>);
16
- /**
17
- * Generates an embedding vector for a single text using the AI model
18
- * @param {string} text - The text to embed
19
- * @returns {Promise<number[]>} The generated embedding vector
20
- */
21
- embed(text: string): Promise<number[]>;
22
- /**
23
- * Generates embedding vectors for multiple texts using the AI model
24
- * @param {string[]} texts - Array of texts to embed
25
- * @returns {Promise<number[][]>} Array of generated embedding vectors
26
- */
27
- embedMany(texts: string[]): Promise<number[][]>;
28
- }
29
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../modules/embedding/adapters/ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,cAAc,EAAa,MAAM,IAAI,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;GAKG;AACH,qBAAa,kBAAmB,YAAW,eAAe;IAK5C,OAAO,CAAC,QAAQ,CAAC,KAAK;IAJlC;;;OAGG;gBAC0B,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC;IAE1D;;;;OAIG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAQ5C;;;;OAIG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;CAOtD"}
@@ -1,58 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.AIEmbeddingAdapter = void 0;
13
- const ai_1 = require("ai");
14
- /**
15
- * @module AIEmbeddingAdapter
16
- * @description Adapter implementation for AI-based embedding service.
17
- * Provides integration with AI models for text embedding generation.
18
- * @implements {IEmbeddingModel}
19
- */
20
- class AIEmbeddingAdapter {
21
- /**
22
- * Creates an instance of AIEmbeddingAdapter
23
- * @param {EmbeddingModel<string>} model - The AI embedding model to use
24
- */
25
- constructor(model) {
26
- this.model = model;
27
- }
28
- /**
29
- * Generates an embedding vector for a single text using the AI model
30
- * @param {string} text - The text to embed
31
- * @returns {Promise<number[]>} The generated embedding vector
32
- */
33
- embed(text) {
34
- return __awaiter(this, void 0, void 0, function* () {
35
- const { embedding } = yield (0, ai_1.embed)({
36
- model: this.model,
37
- value: text,
38
- });
39
- return embedding;
40
- });
41
- }
42
- /**
43
- * Generates embedding vectors for multiple texts using the AI model
44
- * @param {string[]} texts - Array of texts to embed
45
- * @returns {Promise<number[][]>} Array of generated embedding vectors
46
- */
47
- embedMany(texts) {
48
- return __awaiter(this, void 0, void 0, function* () {
49
- const { embeddings } = yield (0, ai_1.embedMany)({
50
- model: this.model,
51
- values: texts,
52
- });
53
- return embeddings;
54
- });
55
- }
56
- }
57
- exports.AIEmbeddingAdapter = AIEmbeddingAdapter;
58
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../modules/embedding/adapters/ai/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2BAAsD;AAGtD;;;;;GAKG;AACH,MAAa,kBAAkB;IAC7B;;;OAGG;IACH,YAA6B,KAA6B;QAA7B,UAAK,GAAL,KAAK,CAAwB;IAAG,CAAC;IAE9D;;;;OAIG;IACG,KAAK,CAAC,IAAY;;YACtB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,UAAK,EAAC;gBAChC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,IAAI;aACZ,CAAC,CAAC;YACH,OAAO,SAAS,CAAC;QACnB,CAAC;KAAA;IAED;;;;OAIG;IACG,SAAS,CAAC,KAAe;;YAC7B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAA,cAAS,EAAC;gBACrC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YACH,OAAO,UAAU,CAAC;QACpB,CAAC;KAAA;CACF;AAhCD,gDAgCC"}
@@ -1,36 +0,0 @@
1
- import { IEmbeddingModel, IEmbeddingModule } from "../../interfaces";
2
- /**
3
- * @module EmbeddingManager
4
- * @description A module for generating and managing text embeddings.
5
- * Provides functionality for converting text into vector representations
6
- * and calculating similarities between embeddings.
7
- * @implements {IEmbeddingModule}
8
- */
9
- export declare class EmbeddingManager implements IEmbeddingModule {
10
- private readonly embeddingModel;
11
- /**
12
- * Creates an instance of EmbeddingManager
13
- * @param {IEmbeddingModel} embeddingModel - The embedding model implementation to use
14
- */
15
- constructor(embeddingModel: IEmbeddingModel);
16
- /**
17
- * Generates an embedding vector for a single text
18
- * @param {string} text - The text to embed
19
- * @returns {Promise<number[]>} The embedding vector
20
- */
21
- embedText(text: string): Promise<number[]>;
22
- /**
23
- * Generates embedding vectors for multiple texts
24
- * @param {string[]} texts - Array of texts to embed
25
- * @returns {Promise<number[][]>} Array of embedding vectors
26
- */
27
- embedMany(texts: string[]): Promise<number[][]>;
28
- /**
29
- * Calculates the similarity score between two embeddings
30
- * @param {number[]} embedding1 - First embedding vector
31
- * @param {number[]} embedding2 - Second embedding vector
32
- * @returns {number} Similarity score between 0 and 100
33
- */
34
- calculateSimilarity(embedding1: number[], embedding2: number[]): number;
35
- }
36
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../modules/embedding/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAErE;;;;;;GAMG;AACH,qBAAa,gBAAiB,YAAW,gBAAgB;IAK3C,OAAO,CAAC,QAAQ,CAAC,cAAc;IAJ3C;;;OAGG;gBAC0B,cAAc,EAAE,eAAe;IAE5D;;;;OAIG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAIhD;;;;OAIG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAIrD;;;;;OAKG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM;CAGxE"}
@@ -1,60 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.EmbeddingManager = void 0;
13
- const ai_1 = require("ai");
14
- /**
15
- * @module EmbeddingManager
16
- * @description A module for generating and managing text embeddings.
17
- * Provides functionality for converting text into vector representations
18
- * and calculating similarities between embeddings.
19
- * @implements {IEmbeddingModule}
20
- */
21
- class EmbeddingManager {
22
- /**
23
- * Creates an instance of EmbeddingManager
24
- * @param {IEmbeddingModel} embeddingModel - The embedding model implementation to use
25
- */
26
- constructor(embeddingModel) {
27
- this.embeddingModel = embeddingModel;
28
- }
29
- /**
30
- * Generates an embedding vector for a single text
31
- * @param {string} text - The text to embed
32
- * @returns {Promise<number[]>} The embedding vector
33
- */
34
- embedText(text) {
35
- return __awaiter(this, void 0, void 0, function* () {
36
- return this.embeddingModel.embed(text);
37
- });
38
- }
39
- /**
40
- * Generates embedding vectors for multiple texts
41
- * @param {string[]} texts - Array of texts to embed
42
- * @returns {Promise<number[][]>} Array of embedding vectors
43
- */
44
- embedMany(texts) {
45
- return __awaiter(this, void 0, void 0, function* () {
46
- return this.embeddingModel.embedMany(texts);
47
- });
48
- }
49
- /**
50
- * Calculates the similarity score between two embeddings
51
- * @param {number[]} embedding1 - First embedding vector
52
- * @param {number[]} embedding2 - Second embedding vector
53
- * @returns {number} Similarity score between 0 and 100
54
- */
55
- calculateSimilarity(embedding1, embedding2) {
56
- return ((0, ai_1.cosineSimilarity)(embedding1, embedding2) + 1) * 50;
57
- }
58
- }
59
- exports.EmbeddingManager = EmbeddingManager;
60
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../modules/embedding/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2BAAsC;AAGtC;;;;;;GAMG;AACH,MAAa,gBAAgB;IAC3B;;;OAGG;IACH,YAA6B,cAA+B;QAA/B,mBAAc,GAAd,cAAc,CAAiB;IAAG,CAAC;IAEhE;;;;OAIG;IACG,SAAS,CAAC,IAAY;;YAC1B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;KAAA;IAED;;;;OAIG;IACG,SAAS,CAAC,KAAe;;YAC7B,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9C,CAAC;KAAA;IAED;;;;;OAKG;IACH,mBAAmB,CAAC,UAAoB,EAAE,UAAoB;QAC5D,OAAO,CAAC,IAAA,qBAAgB,EAAC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IAC7D,CAAC;CACF;AAlCD,4CAkCC"}
@@ -1,120 +0,0 @@
1
- import { ICronJob, IMemoryAdapter } from "../../../../interfaces";
2
- import { BaseMemoryType, CreateMemoryInput, ScheduledRequest } from "../../../../types";
3
- /**
4
- * @module InMemoryAdapter
5
- * @description In-memory implementation of the memory storage adapter.
6
- * Provides a simple Map-based storage solution
7
- * @implements {IMemoryAdapter}
8
- */
9
- export declare class InMemoryAdapter implements IMemoryAdapter {
10
- /** Internal storage using Map structure for jobs and requests */
11
- private jobs;
12
- /** Internal storage using Map structure for requests */
13
- private requests;
14
- /** Internal storage using Map structure */
15
- private storage;
16
- /**
17
- * Creates an instance of InMemoryAdapter
18
- */
19
- constructor();
20
- /**
21
- * Initializes storage for a room
22
- * @param {string} roomId - Room identifier
23
- * @returns {Promise<void>}
24
- */
25
- init(roomId: string): Promise<void>;
26
- /**
27
- * Creates a new memory entry
28
- * @param {CreateMemoryInput & { embedding?: number[] }} input - Memory data with optional embedding
29
- * @returns {Promise<BaseMemoryType | undefined>} Created memory or existing memory if duplicate
30
- */
31
- createMemory(input: CreateMemoryInput & {
32
- embedding?: number[];
33
- }): Promise<BaseMemoryType | undefined>;
34
- /**
35
- * Retrieves a memory by ID and room ID
36
- * @param {string} id - Memory identifier
37
- * @param {string} roomId - Room identifier
38
- * @returns {Promise<BaseMemoryType | null>} Memory entry or null if not found
39
- */
40
- getMemoryById(id: string, roomId: string): Promise<BaseMemoryType | null>;
41
- /**
42
- * Searches for memories based on query and options
43
- * @param {string} query - Search query
44
- * @param {Object} options - Search options
45
- * @param {string} options.roomId - Room identifier
46
- * @param {number} [options.limit] - Maximum number of results
47
- * @returns {Promise<BaseMemoryType[]>} Array of matching memories
48
- */
49
- getMemoryByIndex(query: string, options: {
50
- roomId: string;
51
- limit?: number;
52
- }): Promise<BaseMemoryType[]>;
53
- /**
54
- * Retrieves all memories for a room
55
- * @param {string} roomId - Room identifier
56
- * @returns {Promise<BaseMemoryType[]>} Array of all memories
57
- */
58
- getAllMemories(roomId: string): Promise<BaseMemoryType[]>;
59
- /**
60
- * Deletes a specific memory
61
- * @param {string} id - Memory identifier
62
- * @param {string} roomId - Room identifier
63
- * @returns {Promise<void>}
64
- */
65
- clearMemoryById(id: string, roomId: string): Promise<void>;
66
- /**
67
- * Clears all memories across all rooms
68
- * @returns {Promise<void>}
69
- */
70
- clearAllMemories(): Promise<void>;
71
- /**
72
- * Saves a job to the internal storage
73
- * @param {string} id - Job identifier
74
- * @param {ICronJob} job - Job data
75
- * @returns {Promise<void>}
76
- */
77
- saveJob(id: string, job: ICronJob): Promise<void>;
78
- /**
79
- * Saves a request to the internal storage
80
- * @param {string} id - Request identifier
81
- * @param {ScheduledRequest} request - Request data
82
- * @returns {Promise<void>}
83
- */
84
- saveRequest(id: string, request: ScheduledRequest): Promise<void>;
85
- /**
86
- * Retrieves a job by ID
87
- * @param {string} id - Job identifier
88
- * @returns {Promise<ICronJob | undefined>} Job data or undefined if not found
89
- */
90
- getJob(id: string): Promise<ICronJob | undefined>;
91
- /**
92
- * Retrieves a request by ID
93
- * @param {string} id - Request identifier
94
- * @returns {Promise<ScheduledRequest | undefined>} Request data or undefined if not found
95
- */
96
- getRequest(id: string): Promise<ScheduledRequest | undefined>;
97
- /**
98
- * Deletes a job by ID
99
- * @param {string} id - Job identifier
100
- * @returns {Promise<void>}
101
- */
102
- deleteJob(id: string): Promise<void>;
103
- /**
104
- * Deletes a request by ID
105
- * @param {string} id - Request identifier
106
- * @returns {Promise<void>}
107
- */
108
- deleteRequest(id: string): Promise<void>;
109
- /**
110
- * Retrieves all requests
111
- * @returns {Promise<ScheduledRequest[]>} Array of all requests
112
- */
113
- getAllRequests(): Promise<ScheduledRequest[]>;
114
- /**
115
- * Clears all jobs and requests
116
- * @returns {Promise<void>}
117
- */
118
- clear(): Promise<void>;
119
- }
120
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../modules/memory/adapters/in-memory/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAE3B;;;;;GAKG;AACH,qBAAa,eAAgB,YAAW,cAAc;IACpD,iEAAiE;IACjE,OAAO,CAAC,IAAI,CAAwB;IACpC,wDAAwD;IACxD,OAAO,CAAC,QAAQ,CAAgC;IAChD,2CAA2C;IAC3C,OAAO,CAAC,OAAO,CAAgC;IAE/C;;OAEG;;IAOH;;;;OAIG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMzC;;;;OAIG;IACG,YAAY,CAChB,KAAK,EAAE,iBAAiB,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAClD,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAwBtC;;;;;OAKG;IACG,aAAa,CACjB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAKjC;;;;;;;OAOG;IACG,gBAAgB,CACpB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAC1C,OAAO,CAAC,cAAc,EAAE,CAAC;IAM5B;;;;OAIG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAI/D;;;;;OAKG;IACG,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMhE;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMvC;;;;;OAKG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvD;;;;;OAKG;IACG,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIvE;;;;OAIG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAIvD;;;;OAIG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAInE;;;;OAIG;IACG,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C;;;;OAIG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C;;;OAGG;IACG,cAAc,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAInD;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAI7B"}