@cogitator-ai/memory 0.6.13 → 0.6.20
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/README.md +70 -4
- package/dist/adapters/index.d.ts +5 -3
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +15 -7
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/memory-embedding.d.ts.map +1 -1
- package/dist/adapters/memory-embedding.js +3 -6
- package/dist/adapters/memory-embedding.js.map +1 -1
- package/dist/adapters/memory.d.ts +1 -1
- package/dist/adapters/memory.d.ts.map +1 -1
- package/dist/adapters/memory.js +7 -1
- package/dist/adapters/memory.js.map +1 -1
- package/dist/adapters/mongodb.d.ts +1 -1
- package/dist/adapters/mongodb.js +1 -1
- package/dist/adapters/postgres.d.ts +1 -1
- package/dist/adapters/postgres.d.ts.map +1 -1
- package/dist/adapters/postgres.js +18 -17
- package/dist/adapters/postgres.js.map +1 -1
- package/dist/adapters/qdrant.d.ts.map +1 -1
- package/dist/adapters/qdrant.js +5 -4
- package/dist/adapters/qdrant.js.map +1 -1
- package/dist/adapters/redis.d.ts +1 -1
- package/dist/adapters/redis.js +3 -3
- package/dist/adapters/redis.js.map +1 -1
- package/dist/adapters/sqlite.d.ts +1 -1
- package/dist/adapters/sqlite.d.ts.map +1 -1
- package/dist/adapters/sqlite.js +2 -1
- package/dist/adapters/sqlite.js.map +1 -1
- package/dist/compaction.d.ts +16 -0
- package/dist/compaction.d.ts.map +1 -0
- package/dist/compaction.js +89 -0
- package/dist/compaction.js.map +1 -0
- package/dist/context-builder.d.ts +2 -0
- package/dist/context-builder.d.ts.map +1 -1
- package/dist/context-builder.js +66 -13
- package/dist/context-builder.js.map +1 -1
- package/dist/core-facts.d.ts +43 -0
- package/dist/core-facts.d.ts.map +1 -0
- package/dist/core-facts.js +99 -0
- package/dist/core-facts.js.map +1 -0
- package/dist/embedding/factory.js +3 -3
- package/dist/embedding/google.d.ts +2 -1
- package/dist/embedding/google.d.ts.map +1 -1
- package/dist/embedding/google.js +7 -3
- package/dist/embedding/google.js.map +1 -1
- package/dist/embedding/index.d.ts +4 -4
- package/dist/embedding/index.js +4 -4
- package/dist/embedding/openai.d.ts +1 -0
- package/dist/embedding/openai.d.ts.map +1 -1
- package/dist/embedding/openai.js +10 -1
- package/dist/embedding/openai.js.map +1 -1
- package/dist/index.d.ts +19 -15
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -13
- package/dist/index.js.map +1 -1
- package/dist/knowledge-graph/entity-extractor.js +1 -1
- package/dist/knowledge-graph/graph-adapter.d.ts +2 -1
- package/dist/knowledge-graph/graph-adapter.d.ts.map +1 -1
- package/dist/knowledge-graph/graph-adapter.js +72 -34
- package/dist/knowledge-graph/graph-adapter.js.map +1 -1
- package/dist/knowledge-graph/index.d.ts +10 -8
- package/dist/knowledge-graph/index.d.ts.map +1 -1
- package/dist/knowledge-graph/index.js +6 -5
- package/dist/knowledge-graph/index.js.map +1 -1
- package/dist/knowledge-graph/inference-engine.d.ts.map +1 -1
- package/dist/knowledge-graph/inference-engine.js +23 -6
- package/dist/knowledge-graph/inference-engine.js.map +1 -1
- package/dist/knowledge-graph/schema.d.ts +15 -19
- package/dist/knowledge-graph/schema.d.ts.map +1 -1
- package/dist/knowledge-graph/sqlite-graph-adapter.d.ts +48 -0
- package/dist/knowledge-graph/sqlite-graph-adapter.d.ts.map +1 -0
- package/dist/knowledge-graph/sqlite-graph-adapter.js +694 -0
- package/dist/knowledge-graph/sqlite-graph-adapter.js.map +1 -0
- package/dist/schema.d.ts +66 -4
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +40 -2
- package/dist/schema.js.map +1 -1
- package/dist/search/bm25.d.ts +1 -1
- package/dist/search/bm25.d.ts.map +1 -1
- package/dist/search/bm25.js +5 -1
- package/dist/search/bm25.js.map +1 -1
- package/dist/search/hybrid-search.d.ts +0 -1
- package/dist/search/hybrid-search.d.ts.map +1 -1
- package/dist/search/hybrid-search.js +2 -6
- package/dist/search/hybrid-search.js.map +1 -1
- package/dist/search/index.d.ts +4 -4
- package/dist/search/index.js +4 -4
- package/dist/session-manager.d.ts +19 -0
- package/dist/session-manager.d.ts.map +1 -0
- package/dist/session-manager.js +167 -0
- package/dist/session-manager.js.map +1 -0
- package/package.json +15 -4
package/dist/embedding/google.js
CHANGED
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Google AI Embedding Service
|
|
3
|
-
* Uses Gemini
|
|
3
|
+
* Uses Gemini gemini-embedding-001 model
|
|
4
4
|
*/
|
|
5
5
|
const BASE_URL = 'https://generativelanguage.googleapis.com/v1beta';
|
|
6
6
|
export class GoogleEmbeddingService {
|
|
7
7
|
model;
|
|
8
8
|
dimensions;
|
|
9
|
+
customDimensions;
|
|
9
10
|
apiKey;
|
|
10
11
|
constructor(config) {
|
|
11
12
|
this.apiKey = config.apiKey;
|
|
12
|
-
this.model = config.model ?? '
|
|
13
|
-
this.dimensions =
|
|
13
|
+
this.model = config.model ?? 'gemini-embedding-001';
|
|
14
|
+
this.dimensions = config.dimensions ?? 3072;
|
|
15
|
+
this.customDimensions = config.dimensions !== undefined;
|
|
14
16
|
}
|
|
15
17
|
async embed(text) {
|
|
16
18
|
const response = await fetch(`${BASE_URL}/models/${this.model}:embedContent?key=${this.apiKey}`, {
|
|
@@ -19,6 +21,7 @@ export class GoogleEmbeddingService {
|
|
|
19
21
|
body: JSON.stringify({
|
|
20
22
|
model: `models/${this.model}`,
|
|
21
23
|
content: { parts: [{ text }] },
|
|
24
|
+
...(this.customDimensions ? { outputDimensionality: this.dimensions } : {}),
|
|
22
25
|
}),
|
|
23
26
|
});
|
|
24
27
|
if (!response.ok) {
|
|
@@ -36,6 +39,7 @@ export class GoogleEmbeddingService {
|
|
|
36
39
|
requests: texts.map((text) => ({
|
|
37
40
|
model: `models/${this.model}`,
|
|
38
41
|
content: { parts: [{ text }] },
|
|
42
|
+
...(this.customDimensions ? { outputDimensionality: this.dimensions } : {}),
|
|
39
43
|
})),
|
|
40
44
|
}),
|
|
41
45
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google.js","sourceRoot":"","sources":["../../src/embedding/google.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,QAAQ,GAAG,kDAAkD,CAAC;AAEpE,MAAM,OAAO,sBAAsB;IACxB,KAAK,CAAS;IACd,UAAU,CAAS;
|
|
1
|
+
{"version":3,"file":"google.js","sourceRoot":"","sources":["../../src/embedding/google.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,QAAQ,GAAG,kDAAkD,CAAC;AAEpE,MAAM,OAAO,sBAAsB;IACxB,KAAK,CAAS;IACd,UAAU,CAAS;IACpB,gBAAgB,CAAU;IAE1B,MAAM,CAAS;IAEvB,YAAY,MAA+C;QACzD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,sBAAsB,CAAC;QACpD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC;QAC5C,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAY;QACtB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,QAAQ,WAAW,IAAI,CAAC,KAAK,qBAAqB,IAAI,CAAC,MAAM,EAAE,EAClE;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,KAAK,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE;gBAC7B,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;gBAC9B,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5E,CAAC;SACH,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAElC,CAAC;QAEF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAe;QAC9B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,QAAQ,WAAW,IAAI,CAAC,KAAK,2BAA2B,IAAI,CAAC,MAAM,EAAE,EACxE;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBAC7B,KAAK,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE;oBAC7B,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;oBAC9B,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5E,CAAC,CAAC;aACJ,CAAC;SACH,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,kCAAkC,KAAK,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAElC,CAAC;QAEF,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;CACF"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Embedding service exports
|
|
3
3
|
*/
|
|
4
|
-
export { OpenAIEmbeddingService } from './openai';
|
|
5
|
-
export { OllamaEmbeddingService } from './ollama';
|
|
6
|
-
export { GoogleEmbeddingService } from './google';
|
|
7
|
-
export { createEmbeddingService } from './factory';
|
|
4
|
+
export { OpenAIEmbeddingService } from './openai.js';
|
|
5
|
+
export { OllamaEmbeddingService } from './ollama.js';
|
|
6
|
+
export { GoogleEmbeddingService } from './google.js';
|
|
7
|
+
export { createEmbeddingService } from './factory.js';
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/embedding/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Embedding service exports
|
|
3
3
|
*/
|
|
4
|
-
export { OpenAIEmbeddingService } from './openai';
|
|
5
|
-
export { OllamaEmbeddingService } from './ollama';
|
|
6
|
-
export { GoogleEmbeddingService } from './google';
|
|
7
|
-
export { createEmbeddingService } from './factory';
|
|
4
|
+
export { OpenAIEmbeddingService } from './openai.js';
|
|
5
|
+
export { OllamaEmbeddingService } from './ollama.js';
|
|
6
|
+
export { GoogleEmbeddingService } from './google.js';
|
|
7
|
+
export { createEmbeddingService } from './factory.js';
|
|
8
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -5,6 +5,7 @@ import type { EmbeddingService, OpenAIEmbeddingConfig } from '@cogitator-ai/type
|
|
|
5
5
|
export declare class OpenAIEmbeddingService implements EmbeddingService {
|
|
6
6
|
readonly model: string;
|
|
7
7
|
readonly dimensions: number;
|
|
8
|
+
private customDimensions;
|
|
8
9
|
private apiKey;
|
|
9
10
|
private baseUrl;
|
|
10
11
|
constructor(config: Omit<OpenAIEmbeddingConfig, 'provider'>);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/embedding/openai.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/embedding/openai.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAQnF,qBAAa,sBAAuB,YAAW,gBAAgB;IAC7D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,gBAAgB,CAAU;IAElC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,IAAI,CAAC,qBAAqB,EAAE,UAAU,CAAC;IAQrD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IA0BtC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;CAyBvD"}
|
package/dist/embedding/openai.js
CHANGED
|
@@ -1,16 +1,23 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* OpenAI Embedding Service
|
|
3
3
|
*/
|
|
4
|
+
const DEFAULT_DIMENSIONS = {
|
|
5
|
+
'text-embedding-3-small': 1536,
|
|
6
|
+
'text-embedding-3-large': 3072,
|
|
7
|
+
'text-embedding-ada-002': 1536,
|
|
8
|
+
};
|
|
4
9
|
export class OpenAIEmbeddingService {
|
|
5
10
|
model;
|
|
6
11
|
dimensions;
|
|
12
|
+
customDimensions;
|
|
7
13
|
apiKey;
|
|
8
14
|
baseUrl;
|
|
9
15
|
constructor(config) {
|
|
10
16
|
this.apiKey = config.apiKey;
|
|
11
17
|
this.model = config.model ?? 'text-embedding-3-small';
|
|
12
18
|
this.baseUrl = config.baseUrl ?? 'https://api.openai.com/v1';
|
|
13
|
-
this.
|
|
19
|
+
this.customDimensions = config.dimensions !== undefined;
|
|
20
|
+
this.dimensions = config.dimensions ?? DEFAULT_DIMENSIONS[this.model] ?? 1536;
|
|
14
21
|
}
|
|
15
22
|
async embed(text) {
|
|
16
23
|
const response = await fetch(`${this.baseUrl}/embeddings`, {
|
|
@@ -22,6 +29,7 @@ export class OpenAIEmbeddingService {
|
|
|
22
29
|
body: JSON.stringify({
|
|
23
30
|
model: this.model,
|
|
24
31
|
input: text,
|
|
32
|
+
...(this.customDimensions ? { dimensions: this.dimensions } : {}),
|
|
25
33
|
}),
|
|
26
34
|
});
|
|
27
35
|
if (!response.ok) {
|
|
@@ -41,6 +49,7 @@ export class OpenAIEmbeddingService {
|
|
|
41
49
|
body: JSON.stringify({
|
|
42
50
|
model: this.model,
|
|
43
51
|
input: texts,
|
|
52
|
+
...(this.customDimensions ? { dimensions: this.dimensions } : {}),
|
|
44
53
|
}),
|
|
45
54
|
});
|
|
46
55
|
if (!response.ok) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/embedding/openai.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,OAAO,sBAAsB;IACxB,KAAK,CAAS;IACd,UAAU,CAAS;
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/embedding/openai.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,19 +3,23 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Memory adapters for Cogitator AI agents
|
|
5
5
|
*/
|
|
6
|
-
export { BaseMemoryAdapter, InMemoryAdapter, createMemoryAdapter, type MemoryAdapterConfigUnion, } from './adapters/index';
|
|
7
|
-
export { RedisAdapter } from './adapters/redis';
|
|
8
|
-
export { PostgresAdapter } from './adapters/postgres';
|
|
9
|
-
export { SQLiteAdapter } from './adapters/sqlite';
|
|
10
|
-
export { MongoDBAdapter } from './adapters/mongodb';
|
|
11
|
-
export { QdrantAdapter } from './adapters/qdrant';
|
|
12
|
-
export { InMemoryEmbeddingAdapter } from './adapters/memory-embedding';
|
|
13
|
-
export { HybridSearch, BM25Index, fuseSearchResults, reciprocalRankFusion, tokenize, getTermFrequency, type BM25Config, type BM25Document, type BM25Result, type RRFConfig, type TokenizerConfig, } from './search/index';
|
|
14
|
-
export { ContextBuilder, type ContextBuilderDeps, type BuildContextOptions, } from './context-builder';
|
|
15
|
-
export { countTokens, countMessageTokens, countMessagesTokens, truncateToTokens, } from './token-counter';
|
|
16
|
-
export { OpenAIEmbeddingService, OllamaEmbeddingService, GoogleEmbeddingService, createEmbeddingService, } from './embedding/index';
|
|
17
|
-
export {
|
|
18
|
-
export {
|
|
19
|
-
export
|
|
20
|
-
export
|
|
6
|
+
export { BaseMemoryAdapter, InMemoryAdapter, createMemoryAdapter, createEmbeddingAdapter, type MemoryAdapterConfigUnion, type EmbeddingAdapterConfigUnion, } from './adapters/index.js';
|
|
7
|
+
export { RedisAdapter } from './adapters/redis.js';
|
|
8
|
+
export { PostgresAdapter } from './adapters/postgres.js';
|
|
9
|
+
export { SQLiteAdapter } from './adapters/sqlite.js';
|
|
10
|
+
export { MongoDBAdapter } from './adapters/mongodb.js';
|
|
11
|
+
export { QdrantAdapter } from './adapters/qdrant.js';
|
|
12
|
+
export { InMemoryEmbeddingAdapter } from './adapters/memory-embedding.js';
|
|
13
|
+
export { HybridSearch, BM25Index, fuseSearchResults, reciprocalRankFusion, tokenize, getTermFrequency, type BM25Config, type BM25Document, type BM25Result, type RRFConfig, type TokenizerConfig, } from './search/index.js';
|
|
14
|
+
export { ContextBuilder, type ContextBuilderDeps, type BuildContextOptions, } from './context-builder.js';
|
|
15
|
+
export { countTokens, countMessageTokens, countMessagesTokens, truncateToTokens, } from './token-counter.js';
|
|
16
|
+
export { OpenAIEmbeddingService, OllamaEmbeddingService, GoogleEmbeddingService, createEmbeddingService, } from './embedding/index.js';
|
|
17
|
+
export { CoreFactsStore } from './core-facts.js';
|
|
18
|
+
export type { CoreFactsStoreConfig, FactHistoryEntry } from './core-facts.js';
|
|
19
|
+
export { SessionManager } from './session-manager.js';
|
|
20
|
+
export { CompactionService, type SummarizeFn, type CompactionServiceConfig } from './compaction.js';
|
|
21
|
+
export { MemoryProviderSchema, InMemoryConfigSchema, RedisConfigSchema, PostgresConfigSchema, SQLiteConfigSchema, MongoDBConfigSchema, QdrantConfigSchema, MemoryAdapterConfigSchema, ContextStrategySchema, ContextBuilderConfigSchema, EmbeddingProviderSchema, OpenAIEmbeddingConfigSchema, OllamaEmbeddingConfigSchema, GoogleEmbeddingConfigSchema, EmbeddingServiceConfigSchema, } from './schema.js';
|
|
22
|
+
export { PostgresGraphAdapter, SQLiteGraphAdapter, LLMEntityExtractor, GraphInferenceEngine, GraphContextBuilder, EntityTypeSchema, RelationTypeSchema, NodeSourceSchema, GraphNodeSchema, GraphEdgeSchema, ExtractedEntitySchema, ExtractedRelationSchema, ExtractionResultSchema, NodeQuerySchema, EdgeQuerySchema, TraversalDirectionSchema, TraversalOptionsSchema, GraphSemanticSearchOptionsSchema, InferencePatternSchema, InferenceConclusionSchema, InferenceRuleSchema, KnowledgeGraphExtractionConfigSchema, KnowledgeGraphInferenceConfigSchema, KnowledgeGraphContextConfigSchema, KnowledgeGraphConfigSchema, } from './knowledge-graph/index.js';
|
|
23
|
+
export type { PostgresGraphAdapterConfig, SQLiteGraphAdapterConfig, LLMEntityExtractorConfig, LLMBackendMinimal, GraphContextBuilderConfig, } from './knowledge-graph/index.js';
|
|
24
|
+
export type { SQLiteAdapterConfig, MongoDBAdapterConfig, QdrantAdapterConfig, MemoryType, Thread, MemoryEntry, Fact, Embedding, MemoryProvider, MemoryAdapterConfig, RedisAdapterConfig, PostgresAdapterConfig, InMemoryAdapterConfig, MemoryResult, MemoryQueryOptions, SemanticSearchOptions, MemoryAdapter, FactAdapter, EmbeddingAdapter, EmbeddingService, EmbeddingProvider, EmbeddingServiceConfig, OpenAIEmbeddingConfig, OllamaEmbeddingConfig, GoogleEmbeddingConfig, ContextBuilderConfig, ContextStrategy, BuiltContext, MemoryConfig, GraphAdapter, GraphNode, GraphEdge, GraphPath, GraphStats, GraphContext, GraphContextOptions, NodeQuery, EdgeQuery, TraversalOptions, TraversalResult, TraversalDirection, GraphSemanticSearchOptions, EntityType, RelationType, NodeSource, ExtractedEntity, ExtractedRelation, ExtractionResult, ExtractionContext, EntityExtractor, InferenceEngine, InferenceRule, InferencePattern, InferenceConclusion, InferredEdge, InferenceOptions, KnowledgeGraphConfig, KnowledgeGraphExtractionConfig, KnowledgeGraphInferenceConfig, KnowledgeGraphContextConfig, SearchStrategy, HybridSearchWeights, SearchFilter, SearchOptions, SearchResult, KeywordSearchOptions, KeywordSearchAdapter, HybridSearchConfig, Session, SessionManager as ISessionManager, SessionFilter, SessionStatus, SessionConfigOverrides, CompactionConfig, CompactionResult, } from '@cogitator-ai/types';
|
|
21
25
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,KAAK,wBAAwB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -3,17 +3,20 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Memory adapters for Cogitator AI agents
|
|
5
5
|
*/
|
|
6
|
-
export { BaseMemoryAdapter, InMemoryAdapter, createMemoryAdapter, } from './adapters/index';
|
|
7
|
-
export { RedisAdapter } from './adapters/redis';
|
|
8
|
-
export { PostgresAdapter } from './adapters/postgres';
|
|
9
|
-
export { SQLiteAdapter } from './adapters/sqlite';
|
|
10
|
-
export { MongoDBAdapter } from './adapters/mongodb';
|
|
11
|
-
export { QdrantAdapter } from './adapters/qdrant';
|
|
12
|
-
export { InMemoryEmbeddingAdapter } from './adapters/memory-embedding';
|
|
13
|
-
export { HybridSearch, BM25Index, fuseSearchResults, reciprocalRankFusion, tokenize, getTermFrequency, } from './search/index';
|
|
14
|
-
export { ContextBuilder, } from './context-builder';
|
|
15
|
-
export { countTokens, countMessageTokens, countMessagesTokens, truncateToTokens, } from './token-counter';
|
|
16
|
-
export { OpenAIEmbeddingService, OllamaEmbeddingService, GoogleEmbeddingService, createEmbeddingService, } from './embedding/index';
|
|
17
|
-
export {
|
|
18
|
-
export {
|
|
6
|
+
export { BaseMemoryAdapter, InMemoryAdapter, createMemoryAdapter, createEmbeddingAdapter, } from './adapters/index.js';
|
|
7
|
+
export { RedisAdapter } from './adapters/redis.js';
|
|
8
|
+
export { PostgresAdapter } from './adapters/postgres.js';
|
|
9
|
+
export { SQLiteAdapter } from './adapters/sqlite.js';
|
|
10
|
+
export { MongoDBAdapter } from './adapters/mongodb.js';
|
|
11
|
+
export { QdrantAdapter } from './adapters/qdrant.js';
|
|
12
|
+
export { InMemoryEmbeddingAdapter } from './adapters/memory-embedding.js';
|
|
13
|
+
export { HybridSearch, BM25Index, fuseSearchResults, reciprocalRankFusion, tokenize, getTermFrequency, } from './search/index.js';
|
|
14
|
+
export { ContextBuilder, } from './context-builder.js';
|
|
15
|
+
export { countTokens, countMessageTokens, countMessagesTokens, truncateToTokens, } from './token-counter.js';
|
|
16
|
+
export { OpenAIEmbeddingService, OllamaEmbeddingService, GoogleEmbeddingService, createEmbeddingService, } from './embedding/index.js';
|
|
17
|
+
export { CoreFactsStore } from './core-facts.js';
|
|
18
|
+
export { SessionManager } from './session-manager.js';
|
|
19
|
+
export { CompactionService } from './compaction.js';
|
|
20
|
+
export { MemoryProviderSchema, InMemoryConfigSchema, RedisConfigSchema, PostgresConfigSchema, SQLiteConfigSchema, MongoDBConfigSchema, QdrantConfigSchema, MemoryAdapterConfigSchema, ContextStrategySchema, ContextBuilderConfigSchema, EmbeddingProviderSchema, OpenAIEmbeddingConfigSchema, OllamaEmbeddingConfigSchema, GoogleEmbeddingConfigSchema, EmbeddingServiceConfigSchema, } from './schema.js';
|
|
21
|
+
export { PostgresGraphAdapter, SQLiteGraphAdapter, LLMEntityExtractor, GraphInferenceEngine, GraphContextBuilder, EntityTypeSchema, RelationTypeSchema, NodeSourceSchema, GraphNodeSchema, GraphEdgeSchema, ExtractedEntitySchema, ExtractedRelationSchema, ExtractionResultSchema, NodeQuerySchema, EdgeQuerySchema, TraversalDirectionSchema, TraversalOptionsSchema, GraphSemanticSearchOptionsSchema, InferencePatternSchema, InferenceConclusionSchema, InferenceRuleSchema, KnowledgeGraphExtractionConfigSchema, KnowledgeGraphInferenceConfigSchema, KnowledgeGraphContextConfigSchema, KnowledgeGraphConfigSchema, } from './knowledge-graph/index.js';
|
|
19
22
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,sBAAsB,GAGvB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,OAAO,EACL,YAAY,EACZ,SAAS,EACT,iBAAiB,EACjB,oBAAoB,EACpB,QAAQ,EACR,gBAAgB,GAMjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,cAAc,GAGf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAkD,MAAM,cAAc,CAAC;AAEjG,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,eAAe,EACf,eAAe,EACf,wBAAwB,EACxB,sBAAsB,EACtB,gCAAgC,EAChC,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,oCAAoC,EACpC,mCAAmC,EACnC,iCAAiC,EACjC,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { ExtractedEntitySchema, ExtractedRelationSchema } from './schema';
|
|
2
|
+
import { ExtractedEntitySchema, ExtractedRelationSchema } from './schema.js';
|
|
3
3
|
const ExtractionOutputSchema = z.object({
|
|
4
4
|
entities: z.array(ExtractedEntitySchema),
|
|
5
5
|
relations: z.array(ExtractedRelationSchema),
|
|
@@ -17,9 +17,10 @@ export declare class PostgresGraphAdapter implements GraphAdapter {
|
|
|
17
17
|
private pool;
|
|
18
18
|
private schema;
|
|
19
19
|
private vectorDimensions;
|
|
20
|
-
private
|
|
20
|
+
private initPromise?;
|
|
21
21
|
constructor(config: PostgresGraphAdapterConfig);
|
|
22
22
|
initialize(): Promise<void>;
|
|
23
|
+
private doInitialize;
|
|
23
24
|
private success;
|
|
24
25
|
private failure;
|
|
25
26
|
private generateId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-adapter.d.ts","sourceRoot":"","sources":["../../src/knowledge-graph/graph-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,0BAA0B,EAC1B,UAAU,EACV,YAAY,EACZ,kBAAkB,EAGnB,MAAM,qBAAqB,CAAC;AAG7B,KAAK,IAAI,GAAG;IACV,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;KAAE,CAAC,CAAC;IACtF,OAAO,IAAI,OAAO,CAAC;QAAE,OAAO,IAAI,IAAI,CAAA;KAAE,CAAC,CAAC;IACxC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,oBAAqB,YAAW,YAAY;IACvD,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"graph-adapter.d.ts","sourceRoot":"","sources":["../../src/knowledge-graph/graph-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,SAAS,EACT,0BAA0B,EAC1B,UAAU,EACV,YAAY,EACZ,kBAAkB,EAGnB,MAAM,qBAAqB,CAAC;AAG7B,KAAK,IAAI,GAAG;IACV,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;KAAE,CAAC,CAAC;IACtF,OAAO,IAAI,OAAO,CAAC;QAAE,OAAO,IAAI,IAAI,CAAA;KAAE,CAAC,CAAC;IACxC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,oBAAqB,YAAW,YAAY;IACvD,OAAO,CAAC,IAAI,CAAO;IACnB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,WAAW,CAAC,CAAgB;gBAExB,MAAM,EAAE,0BAA0B;IAgBxC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YAUnB,YAAY;IAgF1B,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,UAAU;IAIZ,OAAO,CACX,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,GAAG,WAAW,GAAG,WAAW,GAAG,gBAAgB,GAAG,aAAa,CAAC,GACzF,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAsC7B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAmBhE,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAcrF,UAAU,CACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,CACd,IAAI,CACF,SAAS,EACT,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,YAAY,GAAG,YAAY,GAAG,UAAU,GAAG,WAAW,CAC5F,CACF,GACA,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAkD7B,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAMvD,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;IAgChE,mBAAmB,CACvB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,YAAY,CAAC,CAAC,SAAS,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAC,CAAC;IAqCrD,OAAO,CACX,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,GAAG,WAAW,GAAG,WAAW,CAAC,GACtD,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAqC7B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAYhE,eAAe,CACnB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;IAa/B,UAAU,CACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,CACd,IAAI,CACF,SAAS,EACT,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAC3F,CACF,GACA,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAkD7B,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAMvD,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;IA2ChE,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YA4CnE,iBAAiB;IAuEzB,gBAAgB,CACpB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,SAAI,GACX,OAAO,CAAC,YAAY,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;IAiFpC,YAAY,CAChB,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,kBAA2B,GACrC,OAAO,CAAC,YAAY,CAAC;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAE,EAAE,CAAC,CAAC;IAuD1D,UAAU,CACd,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IA0C7B,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAMxD,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IA8CvE,OAAO,CAAC,SAAS;IAoBjB,OAAO,CAAC,SAAS;IAqBjB,OAAO,CAAC,iBAAiB;CAoB1B"}
|
|
@@ -3,15 +3,30 @@ export class PostgresGraphAdapter {
|
|
|
3
3
|
pool;
|
|
4
4
|
schema;
|
|
5
5
|
vectorDimensions;
|
|
6
|
-
|
|
6
|
+
initPromise;
|
|
7
7
|
constructor(config) {
|
|
8
8
|
this.pool = config.pool;
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
const schema = config.schema ?? 'cogitator';
|
|
10
|
+
if (!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(schema)) {
|
|
11
|
+
throw new Error(`Invalid schema name "${schema}": must be alphanumeric with underscores, starting with a letter or underscore`);
|
|
12
|
+
}
|
|
13
|
+
this.schema = schema;
|
|
14
|
+
const dims = config.vectorDimensions ?? 768;
|
|
15
|
+
if (!Number.isInteger(dims) || dims <= 0) {
|
|
16
|
+
throw new Error(`Invalid vectorDimensions: must be a positive integer`);
|
|
17
|
+
}
|
|
18
|
+
this.vectorDimensions = dims;
|
|
11
19
|
}
|
|
12
20
|
async initialize() {
|
|
13
|
-
if (this.
|
|
14
|
-
|
|
21
|
+
if (!this.initPromise) {
|
|
22
|
+
this.initPromise = this.doInitialize().catch((err) => {
|
|
23
|
+
this.initPromise = undefined;
|
|
24
|
+
throw err;
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
return this.initPromise;
|
|
28
|
+
}
|
|
29
|
+
async doInitialize() {
|
|
15
30
|
await this.pool.query(`
|
|
16
31
|
CREATE TABLE IF NOT EXISTS ${this.schema}.graph_nodes (
|
|
17
32
|
id TEXT PRIMARY KEY,
|
|
@@ -87,7 +102,6 @@ export class PostgresGraphAdapter {
|
|
|
87
102
|
`);
|
|
88
103
|
}
|
|
89
104
|
catch { }
|
|
90
|
-
this.initialized = true;
|
|
91
105
|
}
|
|
92
106
|
success(data) {
|
|
93
107
|
return { success: true, data };
|
|
@@ -204,7 +218,7 @@ export class PostgresGraphAdapter {
|
|
|
204
218
|
}
|
|
205
219
|
if (query.namePattern) {
|
|
206
220
|
sql += ` AND name ILIKE $${paramIndex++}`;
|
|
207
|
-
params.push(`%${query.namePattern}%`);
|
|
221
|
+
params.push(`%${query.namePattern.replace(/[%_\\]/g, '\\$&')}%`);
|
|
208
222
|
}
|
|
209
223
|
if (query.minConfidence !== undefined) {
|
|
210
224
|
sql += ` AND confidence >= $${paramIndex++}`;
|
|
@@ -387,11 +401,16 @@ export class PostgresGraphAdapter {
|
|
|
387
401
|
visited.add(startNode.id);
|
|
388
402
|
allNodes.push(startNode);
|
|
389
403
|
await this.traverseRecursive(startNode, [], [], 0, options, visited, visitedEdges, paths, allNodes, allEdges);
|
|
404
|
+
let actualMaxDepth = 0;
|
|
405
|
+
for (const p of paths) {
|
|
406
|
+
if (p.length > actualMaxDepth)
|
|
407
|
+
actualMaxDepth = p.length;
|
|
408
|
+
}
|
|
390
409
|
return this.success({
|
|
391
410
|
paths,
|
|
392
411
|
visitedNodes: allNodes,
|
|
393
412
|
visitedEdges: allEdges,
|
|
394
|
-
depth:
|
|
413
|
+
depth: actualMaxDepth,
|
|
395
414
|
});
|
|
396
415
|
}
|
|
397
416
|
async traverseRecursive(currentNode, pathNodes, pathEdges, currentDepth, options, visited, visitedEdges, paths, allNodes, allEdges) {
|
|
@@ -411,6 +430,7 @@ export class PostgresGraphAdapter {
|
|
|
411
430
|
const neighborsResult = await this.getNeighbors(currentNode.id, options.direction);
|
|
412
431
|
if (!neighborsResult.success)
|
|
413
432
|
return;
|
|
433
|
+
let hasUnvisitedNeighbors = false;
|
|
414
434
|
for (const { node, edge } of neighborsResult.data) {
|
|
415
435
|
if (options.edgeTypes && !options.edgeTypes.includes(edge.type))
|
|
416
436
|
continue;
|
|
@@ -423,11 +443,20 @@ export class PostgresGraphAdapter {
|
|
|
423
443
|
allEdges.push(edge);
|
|
424
444
|
}
|
|
425
445
|
if (!visited.has(node.id)) {
|
|
446
|
+
hasUnvisitedNeighbors = true;
|
|
426
447
|
visited.add(node.id);
|
|
427
448
|
allNodes.push(node);
|
|
428
449
|
await this.traverseRecursive(node, [...pathNodes, currentNode], [...pathEdges, edge], currentDepth + 1, options, visited, visitedEdges, paths, allNodes, allEdges);
|
|
429
450
|
}
|
|
430
451
|
}
|
|
452
|
+
if (!hasUnvisitedNeighbors && pathNodes.length > 0) {
|
|
453
|
+
paths.push({
|
|
454
|
+
nodes: [...pathNodes, currentNode],
|
|
455
|
+
edges: [...pathEdges],
|
|
456
|
+
totalWeight: pathEdges.reduce((sum, e) => sum + e.weight, 0),
|
|
457
|
+
length: pathEdges.length,
|
|
458
|
+
});
|
|
459
|
+
}
|
|
431
460
|
}
|
|
432
461
|
async findShortestPath(agentId, startNodeId, endNodeId, maxDepth = 5) {
|
|
433
462
|
await this.initialize();
|
|
@@ -435,27 +464,37 @@ export class PostgresGraphAdapter {
|
|
|
435
464
|
WITH RECURSIVE path_search AS (
|
|
436
465
|
SELECT
|
|
437
466
|
source_node_id as start_node,
|
|
438
|
-
|
|
439
|
-
|
|
467
|
+
CASE
|
|
468
|
+
WHEN source_node_id = $2 THEN target_node_id
|
|
469
|
+
ELSE source_node_id
|
|
470
|
+
END as end_node,
|
|
471
|
+
ARRAY[$2, CASE WHEN source_node_id = $2 THEN target_node_id ELSE source_node_id END] as path,
|
|
440
472
|
ARRAY[id] as edge_ids,
|
|
441
473
|
weight as total_weight,
|
|
442
474
|
1 as depth
|
|
443
475
|
FROM ${this.schema}.graph_edges
|
|
444
|
-
WHERE agent_id = $1
|
|
476
|
+
WHERE agent_id = $1
|
|
477
|
+
AND (source_node_id = $2 OR (target_node_id = $2 AND bidirectional = TRUE))
|
|
445
478
|
|
|
446
479
|
UNION ALL
|
|
447
480
|
|
|
448
481
|
SELECT
|
|
449
482
|
ps.start_node,
|
|
450
|
-
|
|
451
|
-
|
|
483
|
+
CASE
|
|
484
|
+
WHEN e.source_node_id = ps.end_node THEN e.target_node_id
|
|
485
|
+
ELSE e.source_node_id
|
|
486
|
+
END,
|
|
487
|
+
ps.path || CASE WHEN e.source_node_id = ps.end_node THEN e.target_node_id ELSE e.source_node_id END,
|
|
452
488
|
ps.edge_ids || e.id,
|
|
453
489
|
ps.total_weight + e.weight,
|
|
454
490
|
ps.depth + 1
|
|
455
491
|
FROM path_search ps
|
|
456
|
-
JOIN ${this.schema}.graph_edges e ON
|
|
492
|
+
JOIN ${this.schema}.graph_edges e ON (
|
|
493
|
+
e.source_node_id = ps.end_node
|
|
494
|
+
OR (e.target_node_id = ps.end_node AND e.bidirectional = TRUE)
|
|
495
|
+
)
|
|
457
496
|
WHERE e.agent_id = $1
|
|
458
|
-
AND NOT e.target_node_id = ANY(ps.path)
|
|
497
|
+
AND NOT (CASE WHEN e.source_node_id = ps.end_node THEN e.target_node_id ELSE e.source_node_id END) = ANY(ps.path)
|
|
459
498
|
AND ps.depth < $4
|
|
460
499
|
)
|
|
461
500
|
SELECT path, edge_ids, total_weight
|
|
@@ -494,40 +533,37 @@ export class PostgresGraphAdapter {
|
|
|
494
533
|
await this.initialize();
|
|
495
534
|
let sql;
|
|
496
535
|
const params = [nodeId];
|
|
536
|
+
const selectCols = `
|
|
537
|
+
n.id, n.agent_id, n.type, n.name, n.aliases, n.description,
|
|
538
|
+
n.properties, n.confidence, n.source, n.metadata,
|
|
539
|
+
n.created_at, n.updated_at, n.last_accessed_at, n.access_count,
|
|
540
|
+
e.id as edge_id, e.agent_id as edge_agent_id, e.type as edge_type,
|
|
541
|
+
e.source_node_id, e.target_node_id, e.label, e.weight, e.bidirectional,
|
|
542
|
+
e.properties as edge_properties, e.confidence as edge_confidence,
|
|
543
|
+
e.source as edge_source, e.valid_from, e.valid_until,
|
|
544
|
+
e.metadata as edge_metadata, e.created_at as edge_created_at, e.updated_at as edge_updated_at
|
|
545
|
+
`;
|
|
497
546
|
if (direction === 'outgoing') {
|
|
498
547
|
sql = `
|
|
499
|
-
SELECT
|
|
500
|
-
e.id as edge_id, e.agent_id as edge_agent_id, e.type as edge_type,
|
|
501
|
-
e.source_node_id, e.target_node_id, e.label, e.weight, e.bidirectional,
|
|
502
|
-
e.properties as edge_properties, e.confidence as edge_confidence,
|
|
503
|
-
e.source as edge_source, e.valid_from, e.valid_until,
|
|
504
|
-
e.metadata as edge_metadata, e.created_at as edge_created_at, e.updated_at as edge_updated_at
|
|
548
|
+
SELECT ${selectCols}
|
|
505
549
|
FROM ${this.schema}.graph_edges e
|
|
506
550
|
JOIN ${this.schema}.graph_nodes n ON n.id = e.target_node_id
|
|
507
551
|
WHERE e.source_node_id = $1
|
|
552
|
+
OR (e.target_node_id = $1 AND e.bidirectional = TRUE AND n.id = e.source_node_id)
|
|
508
553
|
`;
|
|
509
554
|
}
|
|
510
555
|
else if (direction === 'incoming') {
|
|
511
556
|
sql = `
|
|
512
|
-
SELECT
|
|
513
|
-
e.id as edge_id, e.agent_id as edge_agent_id, e.type as edge_type,
|
|
514
|
-
e.source_node_id, e.target_node_id, e.label, e.weight, e.bidirectional,
|
|
515
|
-
e.properties as edge_properties, e.confidence as edge_confidence,
|
|
516
|
-
e.source as edge_source, e.valid_from, e.valid_until,
|
|
517
|
-
e.metadata as edge_metadata, e.created_at as edge_created_at, e.updated_at as edge_updated_at
|
|
557
|
+
SELECT ${selectCols}
|
|
518
558
|
FROM ${this.schema}.graph_edges e
|
|
519
559
|
JOIN ${this.schema}.graph_nodes n ON n.id = e.source_node_id
|
|
520
560
|
WHERE e.target_node_id = $1
|
|
561
|
+
OR (e.source_node_id = $1 AND e.bidirectional = TRUE AND n.id = e.target_node_id)
|
|
521
562
|
`;
|
|
522
563
|
}
|
|
523
564
|
else {
|
|
524
565
|
sql = `
|
|
525
|
-
SELECT
|
|
526
|
-
e.id as edge_id, e.agent_id as edge_agent_id, e.type as edge_type,
|
|
527
|
-
e.source_node_id, e.target_node_id, e.label, e.weight, e.bidirectional,
|
|
528
|
-
e.properties as edge_properties, e.confidence as edge_confidence,
|
|
529
|
-
e.source as edge_source, e.valid_from, e.valid_until,
|
|
530
|
-
e.metadata as edge_metadata, e.created_at as edge_created_at, e.updated_at as edge_updated_at
|
|
566
|
+
SELECT ${selectCols}
|
|
531
567
|
FROM ${this.schema}.graph_edges e
|
|
532
568
|
JOIN ${this.schema}.graph_nodes n ON (
|
|
533
569
|
(e.source_node_id = $1 AND n.id = e.target_node_id) OR
|
|
@@ -545,11 +581,13 @@ export class PostgresGraphAdapter {
|
|
|
545
581
|
async mergeNodes(targetNodeId, sourceNodeIds) {
|
|
546
582
|
await this.initialize();
|
|
547
583
|
for (const sourceId of sourceNodeIds) {
|
|
584
|
+
const sourceNode = await this.getNode(sourceId);
|
|
548
585
|
await this.pool.query(`UPDATE ${this.schema}.graph_edges
|
|
549
586
|
SET source_node_id = $1 WHERE source_node_id = $2`, [targetNodeId, sourceId]);
|
|
550
587
|
await this.pool.query(`UPDATE ${this.schema}.graph_edges
|
|
551
588
|
SET target_node_id = $1 WHERE target_node_id = $2`, [targetNodeId, sourceId]);
|
|
552
|
-
|
|
589
|
+
await this.pool.query(`DELETE FROM ${this.schema}.graph_edges
|
|
590
|
+
WHERE source_node_id = target_node_id`);
|
|
553
591
|
if (sourceNode.success && sourceNode.data) {
|
|
554
592
|
await this.pool.query(`UPDATE ${this.schema}.graph_nodes
|
|
555
593
|
SET aliases = array_cat(aliases, $1::TEXT[])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-adapter.js","sourceRoot":"","sources":["../../src/knowledge-graph/graph-adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"graph-adapter.js","sourceRoot":"","sources":["../../src/knowledge-graph/graph-adapter.ts"],"names":[],"mappings":"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"}
|