n8n-nodes-smart-memory 1.0.32 → 1.0.34
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/SmartMemory.node.d.ts +1 -0
- package/dist/SmartMemory.node.d.ts.map +1 -1
- package/dist/SmartMemory.node.js +1 -0
- package/dist/SmartMemory.node.js.map +1 -1
- package/dist/SmartMemoryChain.node.d.ts +11 -0
- package/dist/SmartMemoryChain.node.d.ts.map +1 -0
- package/dist/SmartMemoryChain.node.js +247 -0
- package/dist/SmartMemoryChain.node.js.map +1 -0
- package/dist/SmartMemoryLangChain.d.ts +69 -0
- package/dist/SmartMemoryLangChain.d.ts.map +1 -0
- package/dist/SmartMemoryLangChain.js +193 -0
- package/dist/SmartMemoryLangChain.js.map +1 -0
- package/dist/adapters/LangChainAdapter.d.ts +43 -0
- package/dist/adapters/LangChainAdapter.d.ts.map +1 -0
- package/dist/adapters/LangChainAdapter.js +191 -0
- package/dist/adapters/LangChainAdapter.js.map +1 -0
- package/dist/interfaces/ChainInterfaces.d.ts +77 -0
- package/dist/interfaces/ChainInterfaces.d.ts.map +1 -0
- package/dist/interfaces/ChainInterfaces.js +6 -0
- package/dist/interfaces/ChainInterfaces.js.map +1 -0
- package/dist/interfaces/MemoryInterfaces.d.ts +1 -1
- package/dist/interfaces/MemoryInterfaces.d.ts.map +1 -1
- package/package.json +10 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartMemory.node.d.ts","sourceRoot":"","sources":["../src/SmartMemory.node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EAAE,oBAAoB,EAAuB,MAAM,+BAA+B,CAAC;AAK1F,qBAAa,WAAY,YAAW,SAAS;IAC3C,WAAW,EAAE,oBAAoB,CAgT/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;IA+FvE,OAAO,CAAC,MAAM,CAAC,aAAa;IAW5B,OAAO,CAAC,MAAM,CAAC,WAAW;IAwD1B,OAAO,CAAC,MAAM,CAAC,cAAc;IAoE7B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAuBhC,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM;CAIhE"}
|
|
1
|
+
{"version":3,"file":"SmartMemory.node.d.ts","sourceRoot":"","sources":["../src/SmartMemory.node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AAIvC,OAAO,EAAE,oBAAoB,EAAuB,MAAM,+BAA+B,CAAC;AAK1F,qBAAa,WAAY,YAAW,SAAS;IAC3C,WAAW,EAAE,oBAAoB,CAgT/B;IAEI,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;IA+FvE,OAAO,CAAC,MAAM,CAAC,aAAa;IAW5B,OAAO,CAAC,MAAM,CAAC,WAAW;IAwD1B,OAAO,CAAC,MAAM,CAAC,cAAc;IAoE7B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAuBhC,MAAM,CAAC,kBAAkB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM;CAIhE;AAED,eAAe,WAAW,CAAC"}
|
package/dist/SmartMemory.node.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SmartMemory.node.js","sourceRoot":"","sources":["../src/SmartMemory.node.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SmartMemory.node.js","sourceRoot":"","sources":["../src/SmartMemory.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Smart Memory Chain Sub-Node
|
|
3
|
+
* LangChain-compatible memory node for n8n AI chains
|
|
4
|
+
*/
|
|
5
|
+
import { INodeType, INodeTypeDescription, ISupplyDataFunctions, SupplyData } from 'n8n-workflow';
|
|
6
|
+
export declare class SmartMemoryChain implements INodeType {
|
|
7
|
+
description: INodeTypeDescription;
|
|
8
|
+
supplyData(this: ISupplyDataFunctions, itemIndex: number): Promise<SupplyData>;
|
|
9
|
+
}
|
|
10
|
+
export default SmartMemoryChain;
|
|
11
|
+
//# sourceMappingURL=SmartMemoryChain.node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SmartMemoryChain.node.d.ts","sourceRoot":"","sources":["../src/SmartMemoryChain.node.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,oBAAoB,EACpB,UAAU,EACX,MAAM,cAAc,CAAC;AAOtB,qBAAa,gBAAiB,YAAW,SAAS;IAChD,WAAW,EAAE,oBAAoB,CAwI/B;IAEI,UAAU,CAAC,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;CAmErF;AAED,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Smart Memory Chain Sub-Node
|
|
4
|
+
* LangChain-compatible memory node for n8n AI chains
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.SmartMemoryChain = void 0;
|
|
41
|
+
const SmartMemoryLangChain_1 = require("./SmartMemoryLangChain");
|
|
42
|
+
const LangChainAdapter_1 = require("./adapters/LangChainAdapter");
|
|
43
|
+
const InMemoryStorage_1 = require("./storage/InMemoryStorage");
|
|
44
|
+
class SmartMemoryChain {
|
|
45
|
+
constructor() {
|
|
46
|
+
this.description = {
|
|
47
|
+
displayName: 'Smart Memory',
|
|
48
|
+
name: 'smartMemoryChain',
|
|
49
|
+
icon: 'file:smartmemory.svg',
|
|
50
|
+
group: ['transform'],
|
|
51
|
+
version: 1,
|
|
52
|
+
description: 'Advanced conversational memory with storage backend support',
|
|
53
|
+
defaults: {
|
|
54
|
+
name: 'Smart Memory',
|
|
55
|
+
},
|
|
56
|
+
codex: {
|
|
57
|
+
categories: ['AI'],
|
|
58
|
+
subcategories: {
|
|
59
|
+
AI: ['Memory'],
|
|
60
|
+
},
|
|
61
|
+
resources: {
|
|
62
|
+
primaryDocumentation: [
|
|
63
|
+
{
|
|
64
|
+
url: 'https://github.com/yourusername/n8n-nodes-smart-memory',
|
|
65
|
+
},
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
// eslint-disable-next-line n8n-nodes-base/node-class-description-inputs-wrong-regular-node
|
|
70
|
+
inputs: [],
|
|
71
|
+
// eslint-disable-next-line n8n-nodes-base/node-class-description-outputs-wrong
|
|
72
|
+
outputs: [],
|
|
73
|
+
outputNames: [],
|
|
74
|
+
credentials: [
|
|
75
|
+
{
|
|
76
|
+
name: 'postgres',
|
|
77
|
+
required: false,
|
|
78
|
+
displayOptions: {
|
|
79
|
+
show: {
|
|
80
|
+
storageBackend: ['postgres'],
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
name: 'redis',
|
|
86
|
+
required: false,
|
|
87
|
+
displayOptions: {
|
|
88
|
+
show: {
|
|
89
|
+
storageBackend: ['redis'],
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
],
|
|
94
|
+
properties: [
|
|
95
|
+
{
|
|
96
|
+
displayName: 'Session Key',
|
|
97
|
+
name: 'sessionKey',
|
|
98
|
+
type: 'string',
|
|
99
|
+
default: 'chat_history',
|
|
100
|
+
description: 'Key to use for storing the memory in workflow data. Use the same key across workflow executions to maintain conversation context.',
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
displayName: 'Memory Window Size',
|
|
104
|
+
name: 'memoryWindowSize',
|
|
105
|
+
type: 'number',
|
|
106
|
+
default: 15,
|
|
107
|
+
description: 'Maximum number of recent messages to keep in memory. Older messages are automatically removed.',
|
|
108
|
+
typeOptions: {
|
|
109
|
+
minValue: 5,
|
|
110
|
+
maxValue: 100,
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
displayName: 'Storage Backend',
|
|
115
|
+
name: 'storageBackend',
|
|
116
|
+
type: 'options',
|
|
117
|
+
options: [
|
|
118
|
+
{
|
|
119
|
+
name: 'Memory (Volatile)',
|
|
120
|
+
value: 'memory',
|
|
121
|
+
description: 'Store in memory - data is lost when workflow stops',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: 'PostgreSQL',
|
|
125
|
+
value: 'postgres',
|
|
126
|
+
description: 'Store in PostgreSQL database - persistent across restarts',
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
name: 'Redis',
|
|
130
|
+
value: 'redis',
|
|
131
|
+
description: 'Store in Redis - fast persistent storage',
|
|
132
|
+
},
|
|
133
|
+
],
|
|
134
|
+
default: 'memory',
|
|
135
|
+
description: 'Where to store conversation memory',
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
displayName: 'Options',
|
|
139
|
+
name: 'options',
|
|
140
|
+
type: 'collection',
|
|
141
|
+
placeholder: 'Add Option',
|
|
142
|
+
default: {},
|
|
143
|
+
options: [
|
|
144
|
+
{
|
|
145
|
+
displayName: 'Include Timestamps',
|
|
146
|
+
name: 'includeTimestamp',
|
|
147
|
+
type: 'boolean',
|
|
148
|
+
default: false,
|
|
149
|
+
description: 'Whether to include timestamps on each message',
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
displayName: 'Include Token Estimate',
|
|
153
|
+
name: 'includeTokenEstimate',
|
|
154
|
+
type: 'boolean',
|
|
155
|
+
default: false,
|
|
156
|
+
description: 'Whether to estimate token count for context size planning',
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
displayName: 'Include Message IDs',
|
|
160
|
+
name: 'includeMessageId',
|
|
161
|
+
type: 'boolean',
|
|
162
|
+
default: false,
|
|
163
|
+
description: 'Whether to include unique message identifiers',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
displayName: 'User Role',
|
|
167
|
+
name: 'userRole',
|
|
168
|
+
type: 'string',
|
|
169
|
+
default: 'user',
|
|
170
|
+
description: 'Role label for user messages',
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
displayName: 'Assistant Role',
|
|
174
|
+
name: 'assistantRole',
|
|
175
|
+
type: 'string',
|
|
176
|
+
default: 'assistant',
|
|
177
|
+
description: 'Role label for assistant/AI messages',
|
|
178
|
+
},
|
|
179
|
+
],
|
|
180
|
+
},
|
|
181
|
+
],
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
async supplyData(itemIndex) {
|
|
185
|
+
// Get configuration from node parameters
|
|
186
|
+
const sessionKey = this.getNodeParameter('sessionKey', itemIndex, 'chat_history');
|
|
187
|
+
const memoryWindowSize = this.getNodeParameter('memoryWindowSize', itemIndex, 15);
|
|
188
|
+
const storageBackend = this.getNodeParameter('storageBackend', itemIndex, 'memory');
|
|
189
|
+
const options = this.getNodeParameter('options', itemIndex, {});
|
|
190
|
+
// Build configuration
|
|
191
|
+
const config = {
|
|
192
|
+
sessionKey,
|
|
193
|
+
memoryWindowSize,
|
|
194
|
+
storageBackend,
|
|
195
|
+
includeTimestamp: options.includeTimestamp ?? false,
|
|
196
|
+
includeTokenEstimate: options.includeTokenEstimate ?? false,
|
|
197
|
+
includeMessageId: options.includeMessageId ?? false,
|
|
198
|
+
userRole: options.userRole ?? 'user',
|
|
199
|
+
assistantRole: options.assistantRole ?? 'assistant',
|
|
200
|
+
};
|
|
201
|
+
// Extract session ID from workflow context
|
|
202
|
+
const workflowData = this.getWorkflowStaticData('global');
|
|
203
|
+
const executionId = this.getExecutionId();
|
|
204
|
+
const sessionId = LangChainAdapter_1.LangChainAdapter.extractSessionId({ workflowData, executionId }, sessionKey);
|
|
205
|
+
// Initialize storage backend
|
|
206
|
+
let storage;
|
|
207
|
+
if (storageBackend === 'memory') {
|
|
208
|
+
storage = new InMemoryStorage_1.InMemoryStorage();
|
|
209
|
+
}
|
|
210
|
+
else if (storageBackend === 'postgres') {
|
|
211
|
+
// PostgreSQL storage will be initialized with credentials
|
|
212
|
+
const { PostgresStorage } = await Promise.resolve().then(() => __importStar(require('./storage/PostgresStorage')));
|
|
213
|
+
const credentials = await this.getCredentials('postgres');
|
|
214
|
+
const sslValue = credentials.ssl;
|
|
215
|
+
storage = new PostgresStorage({
|
|
216
|
+
host: credentials.host,
|
|
217
|
+
port: credentials.port,
|
|
218
|
+
database: credentials.database,
|
|
219
|
+
user: credentials.user,
|
|
220
|
+
password: credentials.password,
|
|
221
|
+
ssl: sslValue !== undefined ? sslValue : false,
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
else if (storageBackend === 'redis') {
|
|
225
|
+
// Redis storage will be initialized with credentials
|
|
226
|
+
const { RedisStorage } = await Promise.resolve().then(() => __importStar(require('./storage/RedisStorage')));
|
|
227
|
+
const credentials = await this.getCredentials('redis');
|
|
228
|
+
const passwordValue = credentials.password;
|
|
229
|
+
const databaseValue = credentials.database;
|
|
230
|
+
storage = new RedisStorage({
|
|
231
|
+
host: credentials.host,
|
|
232
|
+
port: credentials.port,
|
|
233
|
+
password: passwordValue || '',
|
|
234
|
+
database: databaseValue || 0,
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
// Create Smart Memory instance
|
|
238
|
+
const memory = new SmartMemoryLangChain_1.SmartMemoryLangChain(config, sessionId, storage);
|
|
239
|
+
// Return memory instance for LangChain
|
|
240
|
+
return {
|
|
241
|
+
response: memory,
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
exports.SmartMemoryChain = SmartMemoryChain;
|
|
246
|
+
exports.default = SmartMemoryChain;
|
|
247
|
+
//# sourceMappingURL=SmartMemoryChain.node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SmartMemoryChain.node.js","sourceRoot":"","sources":["../src/SmartMemoryChain.node.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LangChain-compatible memory class for Smart Memory
|
|
3
|
+
* Integrates Smart Memory capabilities with n8n AI chains
|
|
4
|
+
*/
|
|
5
|
+
import { BaseMemory, InputValues, OutputValues, MemoryVariables } from '@langchain/core/memory';
|
|
6
|
+
import { BaseMessage } from '@langchain/core/messages';
|
|
7
|
+
import { SmartMemoryChainConfig } from './interfaces/ChainInterfaces';
|
|
8
|
+
import { MemoryStorage } from './storage/MemoryStorage';
|
|
9
|
+
/**
|
|
10
|
+
* Smart Memory implementation for LangChain chains
|
|
11
|
+
* Provides advanced memory management with storage backend support
|
|
12
|
+
*/
|
|
13
|
+
export declare class SmartMemoryLangChain extends BaseMemory {
|
|
14
|
+
private memoryManager;
|
|
15
|
+
private sessionId;
|
|
16
|
+
private config;
|
|
17
|
+
memoryKeys: string[];
|
|
18
|
+
memoryKey: string;
|
|
19
|
+
inputKey?: string;
|
|
20
|
+
outputKey?: string;
|
|
21
|
+
returnMessages: boolean;
|
|
22
|
+
constructor(config: SmartMemoryChainConfig, sessionId: string, storage?: MemoryStorage);
|
|
23
|
+
/**
|
|
24
|
+
* Load memory variables for the chain
|
|
25
|
+
* Called by LangChain before chain execution
|
|
26
|
+
*/
|
|
27
|
+
loadMemoryVariables(_values: InputValues): Promise<MemoryVariables>;
|
|
28
|
+
/**
|
|
29
|
+
* Save context after chain execution
|
|
30
|
+
* Called by LangChain after chain completes
|
|
31
|
+
*/
|
|
32
|
+
saveContext(inputValues: InputValues, outputValues: OutputValues): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Clear all memory for this session
|
|
35
|
+
*/
|
|
36
|
+
clear(): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Get chat messages in LangChain format
|
|
39
|
+
* Alternative method for accessing messages
|
|
40
|
+
*/
|
|
41
|
+
getChatMessages(): Promise<BaseMessage[]>;
|
|
42
|
+
/**
|
|
43
|
+
* Add a single message to memory
|
|
44
|
+
* Useful for manual message injection
|
|
45
|
+
*/
|
|
46
|
+
addMessage(message: BaseMessage): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Get memory statistics
|
|
49
|
+
*/
|
|
50
|
+
getStats(): Promise<{
|
|
51
|
+
messageCount: number;
|
|
52
|
+
tokenEstimate?: number;
|
|
53
|
+
windowSize: number;
|
|
54
|
+
}>;
|
|
55
|
+
/**
|
|
56
|
+
* Prepare message for storage
|
|
57
|
+
* Converts various input formats to Smart Memory format
|
|
58
|
+
*/
|
|
59
|
+
private prepareMessage;
|
|
60
|
+
/**
|
|
61
|
+
* Get the session ID for this memory instance
|
|
62
|
+
*/
|
|
63
|
+
getSessionId(): string;
|
|
64
|
+
/**
|
|
65
|
+
* Get the current configuration
|
|
66
|
+
*/
|
|
67
|
+
getConfig(): SmartMemoryChainConfig;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=SmartMemoryLangChain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SmartMemoryLangChain.d.ts","sourceRoot":"","sources":["../src/SmartMemoryLangChain.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,UAAU;IAClD,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAyB;IAGvC,UAAU,WAAe;IACzB,SAAS,SAAa;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,UAAQ;gBAGpB,MAAM,EAAE,sBAAsB,EAC9B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa;IA2BzB;;;OAGG;IACG,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAgCzE;;;OAGG;IACG,WAAW,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BtF;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAU/C;;;OAGG;IACG,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAWrD;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IA2BF;;;OAGG;IACH,OAAO,CAAC,cAAc;IA8BtB;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,SAAS,IAAI,sBAAsB;CAGpC"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* LangChain-compatible memory class for Smart Memory
|
|
4
|
+
* Integrates Smart Memory capabilities with n8n AI chains
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.SmartMemoryLangChain = void 0;
|
|
8
|
+
const memory_1 = require("@langchain/core/memory");
|
|
9
|
+
const SmartMemory_1 = require("./SmartMemory");
|
|
10
|
+
const LangChainAdapter_1 = require("./adapters/LangChainAdapter");
|
|
11
|
+
/**
|
|
12
|
+
* Smart Memory implementation for LangChain chains
|
|
13
|
+
* Provides advanced memory management with storage backend support
|
|
14
|
+
*/
|
|
15
|
+
class SmartMemoryLangChain extends memory_1.BaseMemory {
|
|
16
|
+
constructor(config, sessionId, storage) {
|
|
17
|
+
super();
|
|
18
|
+
// LangChain memory keys
|
|
19
|
+
this.memoryKeys = ['history'];
|
|
20
|
+
this.memoryKey = 'history';
|
|
21
|
+
this.returnMessages = true;
|
|
22
|
+
this.config = config;
|
|
23
|
+
this.sessionId = sessionId;
|
|
24
|
+
// Build MemoryManagerConfig from SmartMemoryChainConfig
|
|
25
|
+
const managerConfig = {
|
|
26
|
+
memoryWindowSize: config.memoryWindowSize,
|
|
27
|
+
storageBackend: config.storageBackend,
|
|
28
|
+
identityFieldMapping: {
|
|
29
|
+
displayName: 'displayName',
|
|
30
|
+
username: 'username',
|
|
31
|
+
},
|
|
32
|
+
assistantRole: config.assistantRole || 'assistant',
|
|
33
|
+
includeReplyContext: false, // Not applicable in chain context
|
|
34
|
+
includeReplyDisplayName: false,
|
|
35
|
+
includeReplyUsername: false,
|
|
36
|
+
includeReplyMessage: false,
|
|
37
|
+
includeReplyMessageId: false,
|
|
38
|
+
includeTimestamp: config.includeTimestamp || false,
|
|
39
|
+
includeMessageId: config.includeMessageId || false,
|
|
40
|
+
};
|
|
41
|
+
this.memoryManager = new SmartMemory_1.PureMemoryManager(managerConfig, storage);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Load memory variables for the chain
|
|
45
|
+
* Called by LangChain before chain execution
|
|
46
|
+
*/
|
|
47
|
+
async loadMemoryVariables(_values) {
|
|
48
|
+
try {
|
|
49
|
+
const memory = await this.memoryManager.getMemory(this.sessionId);
|
|
50
|
+
if (!memory) {
|
|
51
|
+
return {
|
|
52
|
+
[this.memoryKey]: [],
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
// Convert Smart Memory format to LangChain messages
|
|
56
|
+
const messages = LangChainAdapter_1.LangChainAdapter.toLangChainMessages(memory);
|
|
57
|
+
const result = {
|
|
58
|
+
[this.memoryKey]: messages,
|
|
59
|
+
};
|
|
60
|
+
// Add optional metadata
|
|
61
|
+
if (this.config.includeTokenEstimate) {
|
|
62
|
+
const totalChars = memory.messages.reduce((sum, msg) => sum + msg.content.length, 0);
|
|
63
|
+
result.tokenEstimate = Math.ceil(totalChars / 4);
|
|
64
|
+
}
|
|
65
|
+
return result;
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
console.error('Error loading memory variables:', error);
|
|
69
|
+
return {
|
|
70
|
+
[this.memoryKey]: [],
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Save context after chain execution
|
|
76
|
+
* Called by LangChain after chain completes
|
|
77
|
+
*/
|
|
78
|
+
async saveContext(inputValues, outputValues) {
|
|
79
|
+
try {
|
|
80
|
+
// Extract input and output keys
|
|
81
|
+
const inputKey = this.inputKey ?? Object.keys(inputValues)[0];
|
|
82
|
+
const outputKey = this.outputKey ?? Object.keys(outputValues)[0];
|
|
83
|
+
if (!inputKey || !outputKey) {
|
|
84
|
+
throw new Error('Could not determine input/output keys for memory');
|
|
85
|
+
}
|
|
86
|
+
const input = inputValues[inputKey];
|
|
87
|
+
const output = outputValues[outputKey];
|
|
88
|
+
// Convert and save user message
|
|
89
|
+
if (input) {
|
|
90
|
+
const userMessage = this.prepareMessage(input, false);
|
|
91
|
+
await this.memoryManager.insertMessage(userMessage, 'append');
|
|
92
|
+
}
|
|
93
|
+
// Convert and save AI response
|
|
94
|
+
if (output) {
|
|
95
|
+
const aiMessage = this.prepareMessage(output, true);
|
|
96
|
+
await this.memoryManager.insertMessage(aiMessage, 'append');
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
catch (error) {
|
|
100
|
+
console.error('Error saving context:', error);
|
|
101
|
+
throw error;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Clear all memory for this session
|
|
106
|
+
*/
|
|
107
|
+
async clear() {
|
|
108
|
+
try {
|
|
109
|
+
await this.memoryManager.clearMemory(this.sessionId);
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
console.error('Error clearing memory:', error);
|
|
113
|
+
throw error;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Get chat messages in LangChain format
|
|
118
|
+
* Alternative method for accessing messages
|
|
119
|
+
*/
|
|
120
|
+
async getChatMessages() {
|
|
121
|
+
const memory = await this.memoryManager.getMemory(this.sessionId);
|
|
122
|
+
if (!memory) {
|
|
123
|
+
return [];
|
|
124
|
+
}
|
|
125
|
+
return LangChainAdapter_1.LangChainAdapter.toLangChainMessages(memory);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Add a single message to memory
|
|
129
|
+
* Useful for manual message injection
|
|
130
|
+
*/
|
|
131
|
+
async addMessage(message) {
|
|
132
|
+
const inputData = LangChainAdapter_1.LangChainAdapter.fromLangChainMessage(message, this.sessionId, this.config.userRole || 'user', this.config.assistantRole || 'assistant');
|
|
133
|
+
await this.memoryManager.insertMessage(inputData, 'append');
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Get memory statistics
|
|
137
|
+
*/
|
|
138
|
+
async getStats() {
|
|
139
|
+
const memory = await this.memoryManager.getMemory(this.sessionId);
|
|
140
|
+
if (!memory) {
|
|
141
|
+
return {
|
|
142
|
+
messageCount: 0,
|
|
143
|
+
windowSize: this.config.memoryWindowSize,
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
const stats = {
|
|
147
|
+
messageCount: memory.messages.length,
|
|
148
|
+
windowSize: this.config.memoryWindowSize,
|
|
149
|
+
};
|
|
150
|
+
if (this.config.includeTokenEstimate) {
|
|
151
|
+
const totalChars = memory.messages.reduce((sum, msg) => sum + msg.content.length, 0);
|
|
152
|
+
stats.tokenEstimate = Math.ceil(totalChars / 4);
|
|
153
|
+
}
|
|
154
|
+
return stats;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Prepare message for storage
|
|
158
|
+
* Converts various input formats to Smart Memory format
|
|
159
|
+
*/
|
|
160
|
+
prepareMessage(message, isAI) {
|
|
161
|
+
// Handle BaseMessage
|
|
162
|
+
if (LangChainAdapter_1.LangChainAdapter.isValidLangChainMessage(message)) {
|
|
163
|
+
return LangChainAdapter_1.LangChainAdapter.fromLangChainMessage(message, this.sessionId, this.config.userRole || 'user', this.config.assistantRole || 'assistant');
|
|
164
|
+
}
|
|
165
|
+
// Handle string content
|
|
166
|
+
const content = typeof message === 'string' ? message : String(message);
|
|
167
|
+
return {
|
|
168
|
+
message: {
|
|
169
|
+
chat: {
|
|
170
|
+
id: this.sessionId,
|
|
171
|
+
type: 'private',
|
|
172
|
+
},
|
|
173
|
+
text: content,
|
|
174
|
+
},
|
|
175
|
+
bot_response: isAI ? content : undefined,
|
|
176
|
+
userRole: isAI ? (this.config.assistantRole || 'assistant') : (this.config.userRole || 'user'),
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Get the session ID for this memory instance
|
|
181
|
+
*/
|
|
182
|
+
getSessionId() {
|
|
183
|
+
return this.sessionId;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Get the current configuration
|
|
187
|
+
*/
|
|
188
|
+
getConfig() {
|
|
189
|
+
return { ...this.config };
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
exports.SmartMemoryLangChain = SmartMemoryLangChain;
|
|
193
|
+
//# sourceMappingURL=SmartMemoryLangChain.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SmartMemoryLangChain.js","sourceRoot":"","sources":["../src/SmartMemoryLangChain.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapter for converting between Smart Memory format and LangChain format
|
|
3
|
+
*/
|
|
4
|
+
import { BaseMessage } from '@langchain/core/messages';
|
|
5
|
+
import { CleanMemoryStructure } from '../interfaces/MemoryInterfaces';
|
|
6
|
+
export declare class LangChainAdapter {
|
|
7
|
+
/**
|
|
8
|
+
* Convert Smart Memory format to LangChain messages
|
|
9
|
+
* @param memory Smart Memory structure
|
|
10
|
+
* @returns Array of LangChain BaseMessage objects
|
|
11
|
+
*/
|
|
12
|
+
static toLangChainMessages(memory: CleanMemoryStructure): BaseMessage[];
|
|
13
|
+
/**
|
|
14
|
+
* Convert LangChain message to Smart Memory input format
|
|
15
|
+
* @param message LangChain message
|
|
16
|
+
* @param sessionId Session/chat identifier
|
|
17
|
+
* @param userRole Optional custom user role
|
|
18
|
+
* @param assistantRole Optional custom assistant role
|
|
19
|
+
* @returns Smart Memory input data
|
|
20
|
+
*/
|
|
21
|
+
static fromLangChainMessage(message: BaseMessage, sessionId: string, userRole?: string, assistantRole?: string): Record<string, unknown>;
|
|
22
|
+
/**
|
|
23
|
+
* Extract session ID from chain context
|
|
24
|
+
* @param context Chain execution context
|
|
25
|
+
* @param sessionKey Session key parameter
|
|
26
|
+
* @returns Session identifier
|
|
27
|
+
*/
|
|
28
|
+
static extractSessionId(context: Record<string, unknown>, sessionKey: string): string;
|
|
29
|
+
/**
|
|
30
|
+
* Format memory for LangChain context
|
|
31
|
+
* @param memory Smart Memory structure
|
|
32
|
+
* @param includeTokenEstimate Whether to include token estimate
|
|
33
|
+
* @returns Memory variables for LangChain
|
|
34
|
+
*/
|
|
35
|
+
static formatMemoryVariables(memory: CleanMemoryStructure | null, includeTokenEstimate?: boolean): Record<string, unknown>;
|
|
36
|
+
/**
|
|
37
|
+
* Validate LangChain message format
|
|
38
|
+
* @param message Message to validate
|
|
39
|
+
* @returns True if valid
|
|
40
|
+
*/
|
|
41
|
+
static isValidLangChainMessage(message: unknown): message is BaseMessage;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=LangChainAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LangChainAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/LangChainAdapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAA0C,MAAM,0BAA0B,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,qBAAa,gBAAgB;IAC3B;;;;OAIG;IACH,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,oBAAoB,GAAG,WAAW,EAAE;IA+CvE;;;;;;;OAOG;IACH,MAAM,CAAC,oBAAoB,CACzB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,MAAe,EACzB,aAAa,GAAE,MAAoB,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAkE1B;;;;;OAKG;IACH,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAkBrF;;;;;OAKG;IACH,MAAM,CAAC,qBAAqB,CAC1B,MAAM,EAAE,oBAAoB,GAAG,IAAI,EACnC,oBAAoB,GAAE,OAAe,GACpC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAuB1B;;;;OAIG;IACH,MAAM,CAAC,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,IAAI,WAAW;CAYzE"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Adapter for converting between Smart Memory format and LangChain format
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.LangChainAdapter = void 0;
|
|
7
|
+
const messages_1 = require("@langchain/core/messages");
|
|
8
|
+
class LangChainAdapter {
|
|
9
|
+
/**
|
|
10
|
+
* Convert Smart Memory format to LangChain messages
|
|
11
|
+
* @param memory Smart Memory structure
|
|
12
|
+
* @returns Array of LangChain BaseMessage objects
|
|
13
|
+
*/
|
|
14
|
+
static toLangChainMessages(memory) {
|
|
15
|
+
return memory.messages.map(msg => {
|
|
16
|
+
const content = msg.content;
|
|
17
|
+
const additionalKwargs = {};
|
|
18
|
+
// Add metadata if available
|
|
19
|
+
if (msg.messageId) {
|
|
20
|
+
additionalKwargs.messageId = msg.messageId;
|
|
21
|
+
}
|
|
22
|
+
if (msg.timestamp) {
|
|
23
|
+
additionalKwargs.timestamp = msg.timestamp;
|
|
24
|
+
}
|
|
25
|
+
if (msg.userInfo) {
|
|
26
|
+
additionalKwargs.userInfo = msg.userInfo;
|
|
27
|
+
}
|
|
28
|
+
if (msg.replyTo) {
|
|
29
|
+
additionalKwargs.replyTo = msg.replyTo;
|
|
30
|
+
}
|
|
31
|
+
// Determine message type based on role
|
|
32
|
+
const role = msg.role.toLowerCase();
|
|
33
|
+
if (role === 'user' || role === 'human') {
|
|
34
|
+
return new messages_1.HumanMessage({
|
|
35
|
+
content,
|
|
36
|
+
additional_kwargs: additionalKwargs,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
else if (role === 'assistant' || role === 'ai') {
|
|
40
|
+
return new messages_1.AIMessage({
|
|
41
|
+
content,
|
|
42
|
+
additional_kwargs: additionalKwargs,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
else if (role === 'system') {
|
|
46
|
+
return new messages_1.SystemMessage({
|
|
47
|
+
content,
|
|
48
|
+
additional_kwargs: additionalKwargs,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
// Default to HumanMessage for unknown roles
|
|
53
|
+
return new messages_1.HumanMessage({
|
|
54
|
+
content,
|
|
55
|
+
additional_kwargs: { ...additionalKwargs, originalRole: role },
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Convert LangChain message to Smart Memory input format
|
|
62
|
+
* @param message LangChain message
|
|
63
|
+
* @param sessionId Session/chat identifier
|
|
64
|
+
* @param userRole Optional custom user role
|
|
65
|
+
* @param assistantRole Optional custom assistant role
|
|
66
|
+
* @returns Smart Memory input data
|
|
67
|
+
*/
|
|
68
|
+
static fromLangChainMessage(message, sessionId, userRole = 'user', assistantRole = 'assistant') {
|
|
69
|
+
const messageType = message._getType();
|
|
70
|
+
const isAI = messageType === 'ai';
|
|
71
|
+
const isSystem = messageType === 'system';
|
|
72
|
+
// Extract content (handle both string and array formats)
|
|
73
|
+
let content;
|
|
74
|
+
if (typeof message.content === 'string') {
|
|
75
|
+
content = message.content;
|
|
76
|
+
}
|
|
77
|
+
else if (Array.isArray(message.content)) {
|
|
78
|
+
// For complex content, join text parts
|
|
79
|
+
content = message.content
|
|
80
|
+
.filter((part) => {
|
|
81
|
+
return typeof part === 'object' && part !== null && 'text' in part && typeof part.text === 'string';
|
|
82
|
+
})
|
|
83
|
+
.map((part) => part.text)
|
|
84
|
+
.join('\n');
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
content = String(message.content);
|
|
88
|
+
}
|
|
89
|
+
// Extract metadata from additional_kwargs
|
|
90
|
+
const additionalKwargs = message.additional_kwargs || {};
|
|
91
|
+
const messageId = additionalKwargs.messageId;
|
|
92
|
+
const userInfo = additionalKwargs.userInfo;
|
|
93
|
+
// Build input data structure
|
|
94
|
+
const inputData = {
|
|
95
|
+
message: {
|
|
96
|
+
chat: {
|
|
97
|
+
id: sessionId,
|
|
98
|
+
type: 'private', // Default to private for chain context
|
|
99
|
+
},
|
|
100
|
+
text: content,
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
// Add message ID if available
|
|
104
|
+
if (messageId) {
|
|
105
|
+
inputData.message.message_id = messageId;
|
|
106
|
+
}
|
|
107
|
+
// Handle different message types
|
|
108
|
+
if (isAI) {
|
|
109
|
+
inputData.bot_response = content;
|
|
110
|
+
inputData.userRole = assistantRole;
|
|
111
|
+
}
|
|
112
|
+
else if (isSystem) {
|
|
113
|
+
// System messages treated as special user messages
|
|
114
|
+
inputData.userRole = 'system';
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
// Human/user messages
|
|
118
|
+
inputData.userRole = userRole;
|
|
119
|
+
// Add user info if available
|
|
120
|
+
if (userInfo) {
|
|
121
|
+
inputData.message.from = {
|
|
122
|
+
id: userInfo.userId || 'unknown',
|
|
123
|
+
displayName: userInfo.displayName,
|
|
124
|
+
username: userInfo.username,
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return inputData;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Extract session ID from chain context
|
|
132
|
+
* @param context Chain execution context
|
|
133
|
+
* @param sessionKey Session key parameter
|
|
134
|
+
* @returns Session identifier
|
|
135
|
+
*/
|
|
136
|
+
static extractSessionId(context, sessionKey) {
|
|
137
|
+
// Try to get session ID from various sources
|
|
138
|
+
const workflowData = context.workflowData;
|
|
139
|
+
if (workflowData && sessionKey in workflowData) {
|
|
140
|
+
return String(workflowData[sessionKey]);
|
|
141
|
+
}
|
|
142
|
+
// Fallback to execution ID
|
|
143
|
+
const executionId = context.executionId;
|
|
144
|
+
if (executionId) {
|
|
145
|
+
return executionId;
|
|
146
|
+
}
|
|
147
|
+
// Last resort: generate a session ID
|
|
148
|
+
return `session_${Date.now()}_${Math.random().toString(36).substring(7)}`;
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Format memory for LangChain context
|
|
152
|
+
* @param memory Smart Memory structure
|
|
153
|
+
* @param includeTokenEstimate Whether to include token estimate
|
|
154
|
+
* @returns Memory variables for LangChain
|
|
155
|
+
*/
|
|
156
|
+
static formatMemoryVariables(memory, includeTokenEstimate = false) {
|
|
157
|
+
if (!memory) {
|
|
158
|
+
return {
|
|
159
|
+
history: [],
|
|
160
|
+
messageCount: 0,
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
const messages = this.toLangChainMessages(memory);
|
|
164
|
+
const result = {
|
|
165
|
+
history: messages,
|
|
166
|
+
messageCount: messages.length,
|
|
167
|
+
};
|
|
168
|
+
if (includeTokenEstimate) {
|
|
169
|
+
// Simple token estimation: ~4 chars per token
|
|
170
|
+
const totalChars = memory.messages.reduce((sum, msg) => sum + msg.content.length, 0);
|
|
171
|
+
result.tokenEstimate = Math.ceil(totalChars / 4);
|
|
172
|
+
}
|
|
173
|
+
return result;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Validate LangChain message format
|
|
177
|
+
* @param message Message to validate
|
|
178
|
+
* @returns True if valid
|
|
179
|
+
*/
|
|
180
|
+
static isValidLangChainMessage(message) {
|
|
181
|
+
if (!message || typeof message !== 'object') {
|
|
182
|
+
return false;
|
|
183
|
+
}
|
|
184
|
+
const msg = message;
|
|
185
|
+
return ('content' in msg &&
|
|
186
|
+
'_getType' in msg &&
|
|
187
|
+
typeof msg._getType === 'function');
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
exports.LangChainAdapter = LangChainAdapter;
|
|
191
|
+
//# sourceMappingURL=LangChainAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LangChainAdapter.js","sourceRoot":"","sources":["../../src/adapters/LangChainAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chain-specific interfaces for Smart Memory LangChain integration
|
|
3
|
+
*/
|
|
4
|
+
import { BaseMessage } from '@langchain/core/messages';
|
|
5
|
+
/**
|
|
6
|
+
* Configuration for Smart Memory Chain sub-node
|
|
7
|
+
*/
|
|
8
|
+
export interface SmartMemoryChainConfig {
|
|
9
|
+
/** Key to store memory in workflow data */
|
|
10
|
+
sessionKey: string;
|
|
11
|
+
/** Maximum number of messages to keep in memory window */
|
|
12
|
+
memoryWindowSize: number;
|
|
13
|
+
/** Storage backend to use */
|
|
14
|
+
storageBackend: 'memory' | 'postgres' | 'redis';
|
|
15
|
+
/** Whether to include timestamps on messages */
|
|
16
|
+
includeTimestamp?: boolean;
|
|
17
|
+
/** Whether to include token estimates in output */
|
|
18
|
+
includeTokenEstimate?: boolean;
|
|
19
|
+
/** Whether to include message IDs */
|
|
20
|
+
includeMessageId?: boolean;
|
|
21
|
+
/** Default role for assistant messages */
|
|
22
|
+
assistantRole?: string;
|
|
23
|
+
/** Default role for user messages */
|
|
24
|
+
userRole?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Context for chain memory operations
|
|
28
|
+
*/
|
|
29
|
+
export interface ChainMemoryContext {
|
|
30
|
+
/** Session identifier for this chain execution */
|
|
31
|
+
sessionId: string;
|
|
32
|
+
/** Workflow execution data */
|
|
33
|
+
workflowData: Record<string, unknown>;
|
|
34
|
+
/** Optional metadata to attach to messages */
|
|
35
|
+
metadata?: Record<string, unknown>;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* LangChain-compatible message format
|
|
39
|
+
*/
|
|
40
|
+
export interface ChainMessage {
|
|
41
|
+
/** Message type (human, ai, system, etc.) */
|
|
42
|
+
type: string;
|
|
43
|
+
/** Message content */
|
|
44
|
+
content: string;
|
|
45
|
+
/** Optional additional data */
|
|
46
|
+
additional_kwargs?: Record<string, unknown>;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Memory variables returned to LangChain
|
|
50
|
+
*/
|
|
51
|
+
export interface MemoryVariables {
|
|
52
|
+
/** Chat history as LangChain messages */
|
|
53
|
+
history: BaseMessage[];
|
|
54
|
+
/** Optional token count estimate */
|
|
55
|
+
tokenEstimate?: number;
|
|
56
|
+
/** Optional message count */
|
|
57
|
+
messageCount?: number;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Input values from LangChain chain
|
|
61
|
+
*/
|
|
62
|
+
export interface ChainInputValues {
|
|
63
|
+
/** User input message */
|
|
64
|
+
input: string | BaseMessage;
|
|
65
|
+
/** Optional additional inputs */
|
|
66
|
+
[key: string]: unknown;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Output values from LangChain chain
|
|
70
|
+
*/
|
|
71
|
+
export interface ChainOutputValues {
|
|
72
|
+
/** AI response message */
|
|
73
|
+
output: string | BaseMessage;
|
|
74
|
+
/** Optional additional outputs */
|
|
75
|
+
[key: string]: unknown;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=ChainInterfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChainInterfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces/ChainInterfaces.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAC;IAEnB,0DAA0D;IAC1D,gBAAgB,EAAE,MAAM,CAAC;IAEzB,6BAA6B;IAC7B,cAAc,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAEhD,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,mDAAmD;IACnD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,0CAA0C;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAC;IAElB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEtC,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IAEb,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC;IAEhB,+BAA+B;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,OAAO,EAAE,WAAW,EAAE,CAAC;IAEvB,oCAAoC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,6BAA6B;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB;IACzB,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;IAE5B,iCAAiC;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,0BAA0B;IAC1B,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC;IAE7B,kCAAkC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChainInterfaces.js","sourceRoot":"","sources":["../../src/interfaces/ChainInterfaces.ts"],"names":[],"mappings":";AAAA;;GAEG"}
|
|
@@ -37,7 +37,7 @@ export interface MemoryManagerConfig {
|
|
|
37
37
|
/** Maximum number of messages to keep in memory window */
|
|
38
38
|
memoryWindowSize: number;
|
|
39
39
|
/** Storage backend to use for persistence */
|
|
40
|
-
storageBackend: 'memory';
|
|
40
|
+
storageBackend: 'memory' | 'postgres' | 'redis';
|
|
41
41
|
/**
|
|
42
42
|
* Field mappings for extracting identity information from message data.
|
|
43
43
|
* These are the actual field names used in the identity settings.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoryInterfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces/MemoryInterfaces.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IAEnC,QAAQ,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,YAAY,GAAG,SAAS,CAAC;QAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;QAElB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IAGF,QAAQ,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QAEnB,QAAQ,CAAC,EAAE;YACT,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;QAEF,OAAO,CAAC,EAAE;YACR,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,CAAC,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,0DAA0D;IAC1D,gBAAgB,EAAE,MAAM,CAAC;IAEzB,6CAA6C;IAC7C,cAAc,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"MemoryInterfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces/MemoryInterfaces.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "n8n-nodes-smart-memory",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"description": "Flexible memory management node for n8n with support for multiple storage backends",
|
|
3
|
+
"version": "1.0.34",
|
|
4
|
+
"description": "Flexible memory management node for n8n with support for multiple storage backends and AI chain integration",
|
|
5
5
|
"main": "dist/SmartMemory.node.js",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"build": "rimraf dist && tsc",
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
"n8n": {
|
|
17
17
|
"n8nNodesApiVersion": 1,
|
|
18
18
|
"nodes": [
|
|
19
|
-
"dist/SmartMemory.node.js"
|
|
19
|
+
"dist/SmartMemory.node.js",
|
|
20
|
+
"dist/SmartMemoryChain.node.js"
|
|
20
21
|
]
|
|
21
22
|
},
|
|
22
23
|
"keywords": [
|
|
@@ -26,9 +27,14 @@
|
|
|
26
27
|
"memory",
|
|
27
28
|
"chatbot",
|
|
28
29
|
"llm",
|
|
29
|
-
"telegram"
|
|
30
|
+
"telegram",
|
|
31
|
+
"langchain",
|
|
32
|
+
"ai-chain"
|
|
30
33
|
],
|
|
31
34
|
"license": "MIT",
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"@langchain/core": "^0.1.63"
|
|
37
|
+
},
|
|
32
38
|
"devDependencies": {
|
|
33
39
|
"@types/jest": "^29.5.12",
|
|
34
40
|
"@types/node": "^20.12.7",
|