memo-grafter 0.1.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/.env.example +3 -0
- package/LICENSE +21 -0
- package/README.md +182 -0
- package/USER_GUIDE.md +702 -0
- package/dist/MemoGrafter.d.ts +29 -0
- package/dist/MemoGrafter.d.ts.map +1 -0
- package/dist/MemoGrafter.js +106 -0
- package/dist/MemoGrafter.js.map +1 -0
- package/dist/MemoGrafterAgent.d.ts +18 -0
- package/dist/MemoGrafterAgent.d.ts.map +1 -0
- package/dist/MemoGrafterAgent.js +55 -0
- package/dist/MemoGrafterAgent.js.map +1 -0
- package/dist/adapters/OpenAIAdapter.d.ts +14 -0
- package/dist/adapters/OpenAIAdapter.d.ts.map +1 -0
- package/dist/adapters/OpenAIAdapter.js +37 -0
- package/dist/adapters/OpenAIAdapter.js.map +1 -0
- package/dist/adapters/types.d.ts +2 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +2 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/fleet/ConductorAgent.d.ts +15 -0
- package/dist/fleet/ConductorAgent.d.ts.map +1 -0
- package/dist/fleet/ConductorAgent.js +41 -0
- package/dist/fleet/ConductorAgent.js.map +1 -0
- package/dist/fleet/FleetStore.d.ts +12 -0
- package/dist/fleet/FleetStore.d.ts.map +1 -0
- package/dist/fleet/FleetStore.js +30 -0
- package/dist/fleet/FleetStore.js.map +1 -0
- package/dist/fleet/MemoGrafterFleet.d.ts +20 -0
- package/dist/fleet/MemoGrafterFleet.d.ts.map +1 -0
- package/dist/fleet/MemoGrafterFleet.js +49 -0
- package/dist/fleet/MemoGrafterFleet.js.map +1 -0
- package/dist/fleet/WorkerAgent.d.ts +30 -0
- package/dist/fleet/WorkerAgent.d.ts.map +1 -0
- package/dist/fleet/WorkerAgent.js +95 -0
- package/dist/fleet/WorkerAgent.js.map +1 -0
- package/dist/fleet/types.d.ts +38 -0
- package/dist/fleet/types.d.ts.map +1 -0
- package/dist/fleet/types.js +2 -0
- package/dist/fleet/types.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/pipeline/GrafterPipeline.d.ts +16 -0
- package/dist/pipeline/GrafterPipeline.d.ts.map +1 -0
- package/dist/pipeline/GrafterPipeline.js +58 -0
- package/dist/pipeline/GrafterPipeline.js.map +1 -0
- package/dist/pipeline/IngestPipeline.d.ts +19 -0
- package/dist/pipeline/IngestPipeline.d.ts.map +1 -0
- package/dist/pipeline/IngestPipeline.js +44 -0
- package/dist/pipeline/IngestPipeline.js.map +1 -0
- package/dist/pipeline/SegmentProcessor.d.ts +19 -0
- package/dist/pipeline/SegmentProcessor.d.ts.map +1 -0
- package/dist/pipeline/SegmentProcessor.js +92 -0
- package/dist/pipeline/SegmentProcessor.js.map +1 -0
- package/dist/pipeline/TopicDriftDetector.d.ts +22 -0
- package/dist/pipeline/TopicDriftDetector.d.ts.map +1 -0
- package/dist/pipeline/TopicDriftDetector.js +96 -0
- package/dist/pipeline/TopicDriftDetector.js.map +1 -0
- package/dist/queue/IngestQueue.d.ts +16 -0
- package/dist/queue/IngestQueue.d.ts.map +1 -0
- package/dist/queue/IngestQueue.js +103 -0
- package/dist/queue/IngestQueue.js.map +1 -0
- package/dist/store/GraphStore.d.ts +71 -0
- package/dist/store/GraphStore.d.ts.map +1 -0
- package/dist/store/GraphStore.js +577 -0
- package/dist/store/GraphStore.js.map +1 -0
- package/dist/types.d.ts +84 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/drift/cosineSimilarity.d.ts +2 -0
- package/dist/utils/drift/cosineSimilarity.d.ts.map +1 -0
- package/dist/utils/drift/cosineSimilarity.js +12 -0
- package/dist/utils/drift/cosineSimilarity.js.map +1 -0
- package/dist/utils/drift/vectorAvg.d.ts +2 -0
- package/dist/utils/drift/vectorAvg.d.ts.map +1 -0
- package/dist/utils/drift/vectorAvg.js +11 -0
- package/dist/utils/drift/vectorAvg.js.map +1 -0
- package/dist/utils/normalizeText.d.ts +2 -0
- package/dist/utils/normalizeText.d.ts.map +1 -0
- package/dist/utils/normalizeText.js +14 -0
- package/dist/utils/normalizeText.js.map +1 -0
- package/dist/utils/vectorLiteral.d.ts +3 -0
- package/dist/utils/vectorLiteral.d.ts.map +1 -0
- package/dist/utils/vectorLiteral.js +18 -0
- package/dist/utils/vectorLiteral.js.map +1 -0
- package/package.json +55 -0
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
export interface Message {
|
|
2
|
+
role: "user" | "assistant";
|
|
3
|
+
content: string;
|
|
4
|
+
}
|
|
5
|
+
export type DriftMode = "window" | "intent";
|
|
6
|
+
export interface TopicNode {
|
|
7
|
+
id: string;
|
|
8
|
+
sessionId: string;
|
|
9
|
+
segmentId: string;
|
|
10
|
+
label: string;
|
|
11
|
+
summary: string;
|
|
12
|
+
embedding: number[];
|
|
13
|
+
messageRange: [number, number];
|
|
14
|
+
topicOrder: number;
|
|
15
|
+
driftScore: number;
|
|
16
|
+
agentColor: string | null;
|
|
17
|
+
fleetId: string | null;
|
|
18
|
+
agentId: string | null;
|
|
19
|
+
createdAt: Date;
|
|
20
|
+
}
|
|
21
|
+
export interface TopicEdge {
|
|
22
|
+
srcId: string;
|
|
23
|
+
dstId: string;
|
|
24
|
+
weight: number;
|
|
25
|
+
type: string;
|
|
26
|
+
}
|
|
27
|
+
export interface TopicSegment {
|
|
28
|
+
id: string;
|
|
29
|
+
sessionId: string;
|
|
30
|
+
startIndex: number;
|
|
31
|
+
endIndex: number;
|
|
32
|
+
topicOrder: number;
|
|
33
|
+
driftScore: number;
|
|
34
|
+
createdAt: Date;
|
|
35
|
+
}
|
|
36
|
+
export interface InjectionResult {
|
|
37
|
+
systemPrompt: string;
|
|
38
|
+
nodes: TopicNode[];
|
|
39
|
+
tokenCount: number;
|
|
40
|
+
}
|
|
41
|
+
export interface AbsorbFromAgentOptions {
|
|
42
|
+
topicIds?: string[];
|
|
43
|
+
prompt?: string;
|
|
44
|
+
minSimilarity?: number;
|
|
45
|
+
limit?: number;
|
|
46
|
+
}
|
|
47
|
+
export interface LLMAdapter {
|
|
48
|
+
complete(messages: Message[], system?: string): Promise<string>;
|
|
49
|
+
}
|
|
50
|
+
export interface EmbedAdapter {
|
|
51
|
+
embed(text: string): Promise<number[]>;
|
|
52
|
+
}
|
|
53
|
+
export interface MemoGrafterDriftConfig {
|
|
54
|
+
mode?: DriftMode;
|
|
55
|
+
windowSize?: number;
|
|
56
|
+
threshold?: number;
|
|
57
|
+
minSegmentMessages?: number;
|
|
58
|
+
}
|
|
59
|
+
export interface MemoGrafterGraphConfig {
|
|
60
|
+
topK?: number;
|
|
61
|
+
hopDepth?: number;
|
|
62
|
+
}
|
|
63
|
+
export interface MemoGrafterInjectConfig {
|
|
64
|
+
bufferSize?: number;
|
|
65
|
+
tokenBudget?: number;
|
|
66
|
+
}
|
|
67
|
+
export interface MemoGrafterQueueConfig {
|
|
68
|
+
redisUrl: string;
|
|
69
|
+
queueName?: string;
|
|
70
|
+
removeOnComplete?: boolean | number;
|
|
71
|
+
removeOnFail?: boolean | number;
|
|
72
|
+
}
|
|
73
|
+
export interface MemoGrafterConfig {
|
|
74
|
+
db: {
|
|
75
|
+
connectionString: string;
|
|
76
|
+
};
|
|
77
|
+
llm: LLMAdapter;
|
|
78
|
+
embedder: EmbedAdapter;
|
|
79
|
+
drift?: MemoGrafterDriftConfig;
|
|
80
|
+
graph?: MemoGrafterGraphConfig;
|
|
81
|
+
inject?: MemoGrafterInjectConfig;
|
|
82
|
+
queue?: MemoGrafterQueueConfig;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cosineSimilarity.d.ts","sourceRoot":"","sources":["../../../src/utils/drift/cosineSimilarity.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,GAAI,SAAS,MAAM,EAAE,EAAE,SAAS,MAAM,EAAE,KAAG,MAYvE,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export const cosineSimilarity = (vectorA, vectorB) => {
|
|
2
|
+
let dot = 0;
|
|
3
|
+
let normA = 0;
|
|
4
|
+
let normB = 0;
|
|
5
|
+
for (let i = 0; i < vectorA.length; i += 1) {
|
|
6
|
+
dot += vectorA[i] * vectorB[i];
|
|
7
|
+
normA += vectorA[i] * vectorA[i];
|
|
8
|
+
normB += vectorB[i] * vectorB[i];
|
|
9
|
+
}
|
|
10
|
+
return dot / (Math.sqrt(normA) * Math.sqrt(normB));
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=cosineSimilarity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cosineSimilarity.js","sourceRoot":"","sources":["../../../src/utils/drift/cosineSimilarity.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAiB,EAAE,OAAiB,EAAU,EAAE;IAC/E,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,GAAG,IAAI,OAAO,CAAC,CAAC,CAAE,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;QACjC,KAAK,IAAI,OAAO,CAAC,CAAC,CAAE,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;QACnC,KAAK,IAAI,OAAO,CAAC,CAAC,CAAE,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;IACrC,CAAC;IAED,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACrD,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vectorAvg.d.ts","sourceRoot":"","sources":["../../../src/utils/drift/vectorAvg.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,GAAG,GAAI,QAAQ,MAAM,EAAE,EAAE,KAAG,MAAM,EAW9C,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export const avg = (vector) => {
|
|
2
|
+
const len = vector[0].length;
|
|
3
|
+
const result = new Array(len).fill(0);
|
|
4
|
+
for (const vec of vector) {
|
|
5
|
+
for (let i = 0; i < vec.length; i += 1) {
|
|
6
|
+
result[i] = (result[i] ?? 0) + vec[i];
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
return result.map((v) => v / vector.length);
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=vectorAvg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vectorAvg.js","sourceRoot":"","sources":["../../../src/utils/drift/vectorAvg.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAkB,EAAY,EAAE;IAClD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC;IAC9B,MAAM,MAAM,GAAG,IAAI,KAAK,CAAS,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAE9C,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC;QACzC,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalizeText.d.ts","sourceRoot":"","sources":["../../src/utils/normalizeText.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,IAarD,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const normalizeText = (text) => {
|
|
2
|
+
if (!text)
|
|
3
|
+
return "";
|
|
4
|
+
let content = text.trim();
|
|
5
|
+
content = content.replace(/\n+/g, " ");
|
|
6
|
+
content = content.replace(/\s+/g, " ");
|
|
7
|
+
if (content.length < 3)
|
|
8
|
+
return null;
|
|
9
|
+
const junk = ["ok", "yes", "no", ".", "..."];
|
|
10
|
+
if (junk.includes(content.toLowerCase()))
|
|
11
|
+
return null;
|
|
12
|
+
return content;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=normalizeText.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"normalizeText.js","sourceRoot":"","sources":["../../src/utils/normalizeText.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAiB,EAAE;IAC3D,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,IAAI,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAE1B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEvC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAEtD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vectorLiteral.d.ts","sourceRoot":"","sources":["../../src/utils/vectorLiteral.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,GAAI,WAAW,MAAM,EAAE,KAAG,MAMrD,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,KAAG,MAAM,EASnE,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const toVectorLiteral = (embedding) => {
|
|
2
|
+
if (!embedding.every((value) => Number.isFinite(value))) {
|
|
3
|
+
throw new Error("Embedding must contain only finite numbers.");
|
|
4
|
+
}
|
|
5
|
+
return `[${embedding.join(",")}]`;
|
|
6
|
+
};
|
|
7
|
+
export const parseVector = (value) => {
|
|
8
|
+
if (!value)
|
|
9
|
+
return [];
|
|
10
|
+
if (Array.isArray(value))
|
|
11
|
+
return value;
|
|
12
|
+
return value
|
|
13
|
+
.replace(/^\[|\]$/g, "")
|
|
14
|
+
.split(",")
|
|
15
|
+
.filter(Boolean)
|
|
16
|
+
.map(Number);
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=vectorLiteral.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vectorLiteral.js","sourceRoot":"","sources":["../../src/utils/vectorLiteral.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,SAAmB,EAAU,EAAE;IAC7D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAA+B,EAAY,EAAE;IACvE,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEvC,OAAO,KAAK;SACT,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,MAAM,CAAC,CAAC;AACjB,CAAC,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "memo-grafter",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Structured conversational memory for LLM chatbot applications",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": {
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"import": "./dist/index.js",
|
|
11
|
+
"default": "./dist/index.js"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist",
|
|
16
|
+
".env.example",
|
|
17
|
+
"README.md",
|
|
18
|
+
"USER_GUIDE.md",
|
|
19
|
+
"LICENSE"
|
|
20
|
+
],
|
|
21
|
+
"scripts": {
|
|
22
|
+
"build": "tsc -b",
|
|
23
|
+
"prepublishOnly": "npm run build",
|
|
24
|
+
"test": "npm run test:core && npm run test:fleet",
|
|
25
|
+
"test:core": "tsx --env-file=.env tests/core/run.ts",
|
|
26
|
+
"test:fleet": "tsx --env-file=.env tests/fleet/run.ts"
|
|
27
|
+
},
|
|
28
|
+
"keywords": ["llm", "memory", "chatbot", "rag", "knowledge-graph", "langchain", "openai"],
|
|
29
|
+
"author": "Sarthak Chaturvedi <sarthakchat2018@gmail.com>",
|
|
30
|
+
"license": "MIT",
|
|
31
|
+
"type": "module",
|
|
32
|
+
"engines": {
|
|
33
|
+
"node": ">=18.0.0"
|
|
34
|
+
},
|
|
35
|
+
"dependencies": {
|
|
36
|
+
"bullmq": "^5.0.0",
|
|
37
|
+
"ioredis": "^5.0.0",
|
|
38
|
+
"postgres": "^3.4.9"
|
|
39
|
+
},
|
|
40
|
+
"devDependencies": {
|
|
41
|
+
"@types/node": "^25.6.0",
|
|
42
|
+
"dotenv": "^17.4.2",
|
|
43
|
+
"openai": "^4.0.0",
|
|
44
|
+
"tsx": "^4.0.0",
|
|
45
|
+
"typescript": "^6.0.2"
|
|
46
|
+
},
|
|
47
|
+
"peerDependencies": {
|
|
48
|
+
"openai": "^4.0.0"
|
|
49
|
+
},
|
|
50
|
+
"peerDependenciesMeta": {
|
|
51
|
+
"openai": {
|
|
52
|
+
"optional": true
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|