@ainetwork/adk-provider-memory-inmemory 0.1.6 → 0.2.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/index.cjs +7 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/implements/intent.memory.ts +4 -0
- package/implements/thread.memory.ts +4 -2
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -40,7 +40,7 @@ var InMemoryThread = class {
|
|
|
40
40
|
generateKey(userId, threadId) {
|
|
41
41
|
return `${userId}:${threadId}`;
|
|
42
42
|
}
|
|
43
|
-
async getThread(
|
|
43
|
+
async getThread(userId, threadId) {
|
|
44
44
|
const key = this.generateKey(userId, threadId);
|
|
45
45
|
const res = this.threads.get(key);
|
|
46
46
|
if (res) {
|
|
@@ -75,10 +75,13 @@ var InMemoryThread = class {
|
|
|
75
75
|
async addMessagesToThread(userId, threadId, messages) {
|
|
76
76
|
const key = this.generateKey(userId, threadId);
|
|
77
77
|
const thread = this.threads.get(key);
|
|
78
|
+
const messageIds = [];
|
|
78
79
|
for (const message of messages) {
|
|
79
80
|
const newMessageId = (0, import_node_crypto.randomUUID)();
|
|
80
81
|
thread?.messages.set(newMessageId, message);
|
|
82
|
+
messageIds.push(newMessageId);
|
|
81
83
|
}
|
|
84
|
+
return messageIds;
|
|
82
85
|
}
|
|
83
86
|
async deleteThread(userId, threadId) {
|
|
84
87
|
const key = this.generateKey(userId, threadId);
|
|
@@ -108,6 +111,9 @@ var InMemoryIntent = class {
|
|
|
108
111
|
async getIntent(intentId) {
|
|
109
112
|
return this.intents.get(intentId);
|
|
110
113
|
}
|
|
114
|
+
async getIntentByName(intentName) {
|
|
115
|
+
return Array.from(this.intents.values()).find((intent) => intent.name === intentName);
|
|
116
|
+
}
|
|
111
117
|
async saveIntent(intent) {
|
|
112
118
|
const newId = (0, import_node_crypto2.randomUUID)();
|
|
113
119
|
this.intents.set(newId, intent);
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../index.ts","../implements/thread.memory.ts","../implements/intent.memory.ts"],"sourcesContent":["export { InMemoryThread } from \"./implements/thread.memory\";\nexport { InMemoryIntent } from \"./implements/intent.memory\";","import { randomUUID } from \"node:crypto\";\nimport type { MessageObject, ThreadObject, ThreadMetadata, ThreadType } from \"@ainetwork/adk/types/memory\";\nimport { IThreadMemory } from \"@ainetwork/adk/modules\";\n\ntype InMemoryThreadObject = {\n type: ThreadType;\n title: string;\n messages: Map<string, MessageObject>\n}\n\ntype InMemoryThreadMetadata = {\n type: ThreadType;\n threadId: string;\n title: string;\n updatedAt: number;\n createdAt: number;\n}\n\nexport class InMemoryThread implements IThreadMemory {\n\tpublic threads: Map<string, InMemoryThreadObject> = new Map();\n public userThreadIndex: Map<string, Set<InMemoryThreadMetadata>> = new Map();\n\n public async connect(): Promise<void> {}\n public async disconnect(): Promise<void> {}\n public isConnected(): boolean {\n return true;\n }\n\n private generateKey(userId: string, threadId: string) {\n return `${userId}:${threadId}`;\n }\n\n public async getThread(\n
|
|
1
|
+
{"version":3,"sources":["../index.ts","../implements/thread.memory.ts","../implements/intent.memory.ts"],"sourcesContent":["export { InMemoryThread } from \"./implements/thread.memory\";\nexport { InMemoryIntent } from \"./implements/intent.memory\";","import { randomUUID } from \"node:crypto\";\nimport type { MessageObject, ThreadObject, ThreadMetadata, ThreadType } from \"@ainetwork/adk/types/memory\";\nimport { IThreadMemory } from \"@ainetwork/adk/modules\";\n\ntype InMemoryThreadObject = {\n type: ThreadType;\n title: string;\n messages: Map<string, MessageObject>\n}\n\ntype InMemoryThreadMetadata = {\n type: ThreadType;\n threadId: string;\n title: string;\n updatedAt: number;\n createdAt: number;\n}\n\nexport class InMemoryThread implements IThreadMemory {\n\tpublic threads: Map<string, InMemoryThreadObject> = new Map();\n public userThreadIndex: Map<string, Set<InMemoryThreadMetadata>> = new Map();\n\n public async connect(): Promise<void> {}\n public async disconnect(): Promise<void> {}\n public isConnected(): boolean {\n return true;\n }\n\n private generateKey(userId: string, threadId: string) {\n return `${userId}:${threadId}`;\n }\n\n public async getThread(\n userId: string,\n threadId: string\n ): Promise<ThreadObject | undefined> {\n const key = this.generateKey(userId, threadId);\n const res = this.threads.get(key);\n if (res) {\n const threadObject: ThreadObject = {\n type: res.type,\n title: res.title,\n messages: Object.fromEntries(res.messages)\n };\n return threadObject;\n }\n return undefined;\n };\n\n\tpublic async createThread(\n type: ThreadType,\n userId: string,\n threadId: string,\n title: string\n ): Promise<ThreadMetadata> {\n const now = Date.now();\n const key = this.generateKey(userId, threadId);\n if (!this.userThreadIndex.has(userId)) {\n this.userThreadIndex.set(userId, new Set());\n }\n if (!this.threads.has(key)) {\n this.threads.set(key, { type, title, messages: new Map() });\n const metadata: InMemoryThreadMetadata = {\n type, threadId, title, createdAt: now, updatedAt: now,\n }\n this.userThreadIndex.get(userId)?.add(metadata);\n }\n\n return { type, title, threadId, updatedAt: now };\n };\n\n\tpublic async addMessagesToThread(\n userId: string,\n threadId: string,\n messages: MessageObject[]\n ): Promise<string[]> {\n const key = this.generateKey(userId, threadId);\n const thread = this.threads.get(key);\n const messageIds: string[] = [];\n for (const message of messages) {\n const newMessageId = randomUUID();\n thread?.messages.set(newMessageId, message);\n messageIds.push(newMessageId);\n }\n return messageIds;\n };\n\n\tpublic async deleteThread(userId: string, threadId: string): Promise<void> {\n const key = this.generateKey(userId, threadId);\n this.threads.delete(key);\n this.userThreadIndex.delete(threadId);\n };\n\n\tpublic async listThreads(userId: string): Promise<ThreadMetadata[]> {\n const threads = this.userThreadIndex.get(userId);\n if (threads) {\n return Array.from(threads);\n }\n return [];\n };\n}","import { randomUUID } from \"node:crypto\";\nimport type { Intent } from \"@ainetwork/adk/types/memory\";\nimport { IIntentMemory } from \"@ainetwork/adk/modules\";\n\nexport class InMemoryIntent implements IIntentMemory {\n\tpublic intents: Map<string, Intent> = new Map();\n\n public async connect(): Promise<void> {}\n public async disconnect(): Promise<void> {}\n public isConnected(): boolean {\n return true;\n }\n\n public async getIntent(intentId: string): Promise<Intent | undefined> {\n return this.intents.get(intentId);\n };\n\n public async getIntentByName(intentName: string): Promise<Intent | undefined> {\n return Array.from(this.intents.values()).find(intent => intent.name === intentName);\n };\n\n\tpublic async saveIntent(intent: Intent): Promise<void> {\n const newId = randomUUID();\n this.intents.set(newId, intent);\n };\n\n\tpublic async updateIntent(intentId: string, intent: Intent): Promise<void> {\n this.intents.set(intentId, intent);\n };\n\n\tpublic async deleteIntent(intentId: string): Promise<void> {\n this.intents.delete(intentId);\n };\n\n\tpublic async listIntents(): Promise<Intent[]> {\n return Array.from(this.intents.values());\n };\n}"],"mappings":"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","names":["import_node_crypto"]}
|
package/dist/index.d.cts
CHANGED
|
@@ -20,9 +20,9 @@ declare class InMemoryThread implements IThreadMemory {
|
|
|
20
20
|
disconnect(): Promise<void>;
|
|
21
21
|
isConnected(): boolean;
|
|
22
22
|
private generateKey;
|
|
23
|
-
getThread(
|
|
23
|
+
getThread(userId: string, threadId: string): Promise<ThreadObject | undefined>;
|
|
24
24
|
createThread(type: ThreadType, userId: string, threadId: string, title: string): Promise<ThreadMetadata>;
|
|
25
|
-
addMessagesToThread(userId: string, threadId: string, messages: MessageObject[]): Promise<
|
|
25
|
+
addMessagesToThread(userId: string, threadId: string, messages: MessageObject[]): Promise<string[]>;
|
|
26
26
|
deleteThread(userId: string, threadId: string): Promise<void>;
|
|
27
27
|
listThreads(userId: string): Promise<ThreadMetadata[]>;
|
|
28
28
|
}
|
|
@@ -33,6 +33,7 @@ declare class InMemoryIntent implements IIntentMemory {
|
|
|
33
33
|
disconnect(): Promise<void>;
|
|
34
34
|
isConnected(): boolean;
|
|
35
35
|
getIntent(intentId: string): Promise<Intent | undefined>;
|
|
36
|
+
getIntentByName(intentName: string): Promise<Intent | undefined>;
|
|
36
37
|
saveIntent(intent: Intent): Promise<void>;
|
|
37
38
|
updateIntent(intentId: string, intent: Intent): Promise<void>;
|
|
38
39
|
deleteIntent(intentId: string): Promise<void>;
|
package/dist/index.d.ts
CHANGED
|
@@ -20,9 +20,9 @@ declare class InMemoryThread implements IThreadMemory {
|
|
|
20
20
|
disconnect(): Promise<void>;
|
|
21
21
|
isConnected(): boolean;
|
|
22
22
|
private generateKey;
|
|
23
|
-
getThread(
|
|
23
|
+
getThread(userId: string, threadId: string): Promise<ThreadObject | undefined>;
|
|
24
24
|
createThread(type: ThreadType, userId: string, threadId: string, title: string): Promise<ThreadMetadata>;
|
|
25
|
-
addMessagesToThread(userId: string, threadId: string, messages: MessageObject[]): Promise<
|
|
25
|
+
addMessagesToThread(userId: string, threadId: string, messages: MessageObject[]): Promise<string[]>;
|
|
26
26
|
deleteThread(userId: string, threadId: string): Promise<void>;
|
|
27
27
|
listThreads(userId: string): Promise<ThreadMetadata[]>;
|
|
28
28
|
}
|
|
@@ -33,6 +33,7 @@ declare class InMemoryIntent implements IIntentMemory {
|
|
|
33
33
|
disconnect(): Promise<void>;
|
|
34
34
|
isConnected(): boolean;
|
|
35
35
|
getIntent(intentId: string): Promise<Intent | undefined>;
|
|
36
|
+
getIntentByName(intentName: string): Promise<Intent | undefined>;
|
|
36
37
|
saveIntent(intent: Intent): Promise<void>;
|
|
37
38
|
updateIntent(intentId: string, intent: Intent): Promise<void>;
|
|
38
39
|
deleteIntent(intentId: string): Promise<void>;
|
package/dist/index.js
CHANGED
|
@@ -13,7 +13,7 @@ var InMemoryThread = class {
|
|
|
13
13
|
generateKey(userId, threadId) {
|
|
14
14
|
return `${userId}:${threadId}`;
|
|
15
15
|
}
|
|
16
|
-
async getThread(
|
|
16
|
+
async getThread(userId, threadId) {
|
|
17
17
|
const key = this.generateKey(userId, threadId);
|
|
18
18
|
const res = this.threads.get(key);
|
|
19
19
|
if (res) {
|
|
@@ -48,10 +48,13 @@ var InMemoryThread = class {
|
|
|
48
48
|
async addMessagesToThread(userId, threadId, messages) {
|
|
49
49
|
const key = this.generateKey(userId, threadId);
|
|
50
50
|
const thread = this.threads.get(key);
|
|
51
|
+
const messageIds = [];
|
|
51
52
|
for (const message of messages) {
|
|
52
53
|
const newMessageId = randomUUID();
|
|
53
54
|
thread?.messages.set(newMessageId, message);
|
|
55
|
+
messageIds.push(newMessageId);
|
|
54
56
|
}
|
|
57
|
+
return messageIds;
|
|
55
58
|
}
|
|
56
59
|
async deleteThread(userId, threadId) {
|
|
57
60
|
const key = this.generateKey(userId, threadId);
|
|
@@ -81,6 +84,9 @@ var InMemoryIntent = class {
|
|
|
81
84
|
async getIntent(intentId) {
|
|
82
85
|
return this.intents.get(intentId);
|
|
83
86
|
}
|
|
87
|
+
async getIntentByName(intentName) {
|
|
88
|
+
return Array.from(this.intents.values()).find((intent) => intent.name === intentName);
|
|
89
|
+
}
|
|
84
90
|
async saveIntent(intent) {
|
|
85
91
|
const newId = randomUUID2();
|
|
86
92
|
this.intents.set(newId, intent);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../implements/thread.memory.ts","../implements/intent.memory.ts"],"sourcesContent":["import { randomUUID } from \"node:crypto\";\nimport type { MessageObject, ThreadObject, ThreadMetadata, ThreadType } from \"@ainetwork/adk/types/memory\";\nimport { IThreadMemory } from \"@ainetwork/adk/modules\";\n\ntype InMemoryThreadObject = {\n type: ThreadType;\n title: string;\n messages: Map<string, MessageObject>\n}\n\ntype InMemoryThreadMetadata = {\n type: ThreadType;\n threadId: string;\n title: string;\n updatedAt: number;\n createdAt: number;\n}\n\nexport class InMemoryThread implements IThreadMemory {\n\tpublic threads: Map<string, InMemoryThreadObject> = new Map();\n public userThreadIndex: Map<string, Set<InMemoryThreadMetadata>> = new Map();\n\n public async connect(): Promise<void> {}\n public async disconnect(): Promise<void> {}\n public isConnected(): boolean {\n return true;\n }\n\n private generateKey(userId: string, threadId: string) {\n return `${userId}:${threadId}`;\n }\n\n public async getThread(\n
|
|
1
|
+
{"version":3,"sources":["../implements/thread.memory.ts","../implements/intent.memory.ts"],"sourcesContent":["import { randomUUID } from \"node:crypto\";\nimport type { MessageObject, ThreadObject, ThreadMetadata, ThreadType } from \"@ainetwork/adk/types/memory\";\nimport { IThreadMemory } from \"@ainetwork/adk/modules\";\n\ntype InMemoryThreadObject = {\n type: ThreadType;\n title: string;\n messages: Map<string, MessageObject>\n}\n\ntype InMemoryThreadMetadata = {\n type: ThreadType;\n threadId: string;\n title: string;\n updatedAt: number;\n createdAt: number;\n}\n\nexport class InMemoryThread implements IThreadMemory {\n\tpublic threads: Map<string, InMemoryThreadObject> = new Map();\n public userThreadIndex: Map<string, Set<InMemoryThreadMetadata>> = new Map();\n\n public async connect(): Promise<void> {}\n public async disconnect(): Promise<void> {}\n public isConnected(): boolean {\n return true;\n }\n\n private generateKey(userId: string, threadId: string) {\n return `${userId}:${threadId}`;\n }\n\n public async getThread(\n userId: string,\n threadId: string\n ): Promise<ThreadObject | undefined> {\n const key = this.generateKey(userId, threadId);\n const res = this.threads.get(key);\n if (res) {\n const threadObject: ThreadObject = {\n type: res.type,\n title: res.title,\n messages: Object.fromEntries(res.messages)\n };\n return threadObject;\n }\n return undefined;\n };\n\n\tpublic async createThread(\n type: ThreadType,\n userId: string,\n threadId: string,\n title: string\n ): Promise<ThreadMetadata> {\n const now = Date.now();\n const key = this.generateKey(userId, threadId);\n if (!this.userThreadIndex.has(userId)) {\n this.userThreadIndex.set(userId, new Set());\n }\n if (!this.threads.has(key)) {\n this.threads.set(key, { type, title, messages: new Map() });\n const metadata: InMemoryThreadMetadata = {\n type, threadId, title, createdAt: now, updatedAt: now,\n }\n this.userThreadIndex.get(userId)?.add(metadata);\n }\n\n return { type, title, threadId, updatedAt: now };\n };\n\n\tpublic async addMessagesToThread(\n userId: string,\n threadId: string,\n messages: MessageObject[]\n ): Promise<string[]> {\n const key = this.generateKey(userId, threadId);\n const thread = this.threads.get(key);\n const messageIds: string[] = [];\n for (const message of messages) {\n const newMessageId = randomUUID();\n thread?.messages.set(newMessageId, message);\n messageIds.push(newMessageId);\n }\n return messageIds;\n };\n\n\tpublic async deleteThread(userId: string, threadId: string): Promise<void> {\n const key = this.generateKey(userId, threadId);\n this.threads.delete(key);\n this.userThreadIndex.delete(threadId);\n };\n\n\tpublic async listThreads(userId: string): Promise<ThreadMetadata[]> {\n const threads = this.userThreadIndex.get(userId);\n if (threads) {\n return Array.from(threads);\n }\n return [];\n };\n}","import { randomUUID } from \"node:crypto\";\nimport type { Intent } from \"@ainetwork/adk/types/memory\";\nimport { IIntentMemory } from \"@ainetwork/adk/modules\";\n\nexport class InMemoryIntent implements IIntentMemory {\n\tpublic intents: Map<string, Intent> = new Map();\n\n public async connect(): Promise<void> {}\n public async disconnect(): Promise<void> {}\n public isConnected(): boolean {\n return true;\n }\n\n public async getIntent(intentId: string): Promise<Intent | undefined> {\n return this.intents.get(intentId);\n };\n\n public async getIntentByName(intentName: string): Promise<Intent | undefined> {\n return Array.from(this.intents.values()).find(intent => intent.name === intentName);\n };\n\n\tpublic async saveIntent(intent: Intent): Promise<void> {\n const newId = randomUUID();\n this.intents.set(newId, intent);\n };\n\n\tpublic async updateIntent(intentId: string, intent: Intent): Promise<void> {\n this.intents.set(intentId, intent);\n };\n\n\tpublic async deleteIntent(intentId: string): Promise<void> {\n this.intents.delete(intentId);\n };\n\n\tpublic async listIntents(): Promise<Intent[]> {\n return Array.from(this.intents.values());\n };\n}"],"mappings":"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","names":["randomUUID"]}
|
|
@@ -15,6 +15,10 @@ export class InMemoryIntent implements IIntentMemory {
|
|
|
15
15
|
return this.intents.get(intentId);
|
|
16
16
|
};
|
|
17
17
|
|
|
18
|
+
public async getIntentByName(intentName: string): Promise<Intent | undefined> {
|
|
19
|
+
return Array.from(this.intents.values()).find(intent => intent.name === intentName);
|
|
20
|
+
};
|
|
21
|
+
|
|
18
22
|
public async saveIntent(intent: Intent): Promise<void> {
|
|
19
23
|
const newId = randomUUID();
|
|
20
24
|
this.intents.set(newId, intent);
|
|
@@ -31,7 +31,6 @@ export class InMemoryThread implements IThreadMemory {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
public async getThread(
|
|
34
|
-
type: ThreadType,
|
|
35
34
|
userId: string,
|
|
36
35
|
threadId: string
|
|
37
36
|
): Promise<ThreadObject | undefined> {
|
|
@@ -74,13 +73,16 @@ export class InMemoryThread implements IThreadMemory {
|
|
|
74
73
|
userId: string,
|
|
75
74
|
threadId: string,
|
|
76
75
|
messages: MessageObject[]
|
|
77
|
-
): Promise<
|
|
76
|
+
): Promise<string[]> {
|
|
78
77
|
const key = this.generateKey(userId, threadId);
|
|
79
78
|
const thread = this.threads.get(key);
|
|
79
|
+
const messageIds: string[] = [];
|
|
80
80
|
for (const message of messages) {
|
|
81
81
|
const newMessageId = randomUUID();
|
|
82
82
|
thread?.messages.set(newMessageId, message);
|
|
83
|
+
messageIds.push(newMessageId);
|
|
83
84
|
}
|
|
85
|
+
return messageIds;
|
|
84
86
|
};
|
|
85
87
|
|
|
86
88
|
public async deleteThread(userId: string, threadId: string): Promise<void> {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ainetwork/adk-provider-memory-inmemory",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"author": "AI Network (https://ainetwork.ai)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
"clean": "rm -rf dist"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@ainetwork/adk": "^0.1
|
|
24
|
+
"@ainetwork/adk": "^0.2.1"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"typescript": "^5.0.0"
|
|
@@ -30,5 +30,5 @@
|
|
|
30
30
|
"publishConfig": {
|
|
31
31
|
"access": "public"
|
|
32
32
|
},
|
|
33
|
-
"gitHead": "
|
|
33
|
+
"gitHead": "caccd8175754d166971b8bd566644b3ac6598793"
|
|
34
34
|
}
|