@olane/o-tool-registry 0.5.1 → 0.6.1
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/auth/index.d.ts +4 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +3 -0
- package/dist/auth/interfaces/index.d.ts +4 -0
- package/dist/auth/interfaces/index.d.ts.map +1 -0
- package/dist/auth/interfaces/index.js +3 -0
- package/dist/auth/interfaces/oAuth-tokens.interface.d.ts +9 -0
- package/dist/auth/interfaces/oAuth-tokens.interface.d.ts.map +1 -0
- package/dist/auth/interfaces/oAuth-tokens.interface.js +1 -0
- package/dist/auth/interfaces/oAuth-user-info.interface.d.ts +8 -0
- package/dist/auth/interfaces/oAuth-user-info.interface.d.ts.map +1 -0
- package/dist/auth/interfaces/oAuth-user-info.interface.js +1 -0
- package/dist/auth/interfaces/oAuth.config.d.ts +14 -0
- package/dist/auth/interfaces/oAuth.config.d.ts.map +1 -0
- package/dist/auth/interfaces/oAuth.config.js +1 -0
- package/dist/auth/methods/auth.methods.d.ts +5 -0
- package/dist/auth/methods/auth.methods.d.ts.map +1 -0
- package/dist/auth/methods/auth.methods.js +302 -0
- package/dist/auth/oAuth.tool.d.ts +20 -0
- package/dist/auth/oAuth.tool.d.ts.map +1 -0
- package/dist/auth/oAuth.tool.js +419 -0
- package/dist/embeddings/embeddings.tool.d.ts +6 -0
- package/dist/embeddings/embeddings.tool.d.ts.map +1 -0
- package/dist/embeddings/embeddings.tool.js +11 -0
- package/dist/embeddings/huggingface-text-embeddings.tool.d.ts +9 -0
- package/dist/embeddings/huggingface-text-embeddings.tool.d.ts.map +1 -0
- package/dist/embeddings/huggingface-text-embeddings.tool.js +21 -0
- package/dist/embeddings/index.d.ts +4 -0
- package/dist/embeddings/index.d.ts.map +1 -0
- package/dist/embeddings/index.js +3 -0
- package/dist/embeddings/methods/text-embeddings.method.d.ts +5 -0
- package/dist/embeddings/methods/text-embeddings.method.d.ts.map +1 -0
- package/dist/embeddings/methods/text-embeddings.method.js +29 -0
- package/dist/embeddings/text-embeddings.tool.d.ts +9 -0
- package/dist/embeddings/text-embeddings.tool.d.ts.map +1 -0
- package/dist/embeddings/text-embeddings.tool.js +13 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/init.d.ts +3 -0
- package/dist/init.d.ts.map +1 -0
- package/dist/init.js +36 -0
- package/dist/intelligence/anthropic-intelligence.tool.d.ts +224 -0
- package/dist/intelligence/anthropic-intelligence.tool.d.ts.map +1 -0
- package/dist/intelligence/anthropic-intelligence.tool.js +477 -0
- package/dist/intelligence/gemini-intelligence.tool.d.ts +29 -0
- package/dist/intelligence/gemini-intelligence.tool.d.ts.map +1 -0
- package/dist/intelligence/gemini-intelligence.tool.js +267 -0
- package/dist/intelligence/index.d.ts +6 -0
- package/dist/intelligence/index.d.ts.map +1 -0
- package/dist/intelligence/index.js +5 -0
- package/dist/intelligence/intelligence.tool.d.ts +11 -0
- package/dist/intelligence/intelligence.tool.d.ts.map +1 -0
- package/dist/intelligence/intelligence.tool.js +120 -0
- package/dist/intelligence/methods/intelligence.methods.d.ts +5 -0
- package/dist/intelligence/methods/intelligence.methods.d.ts.map +1 -0
- package/dist/intelligence/methods/intelligence.methods.js +98 -0
- package/dist/intelligence/ollama-intelligence.tool.d.ts +36 -0
- package/dist/intelligence/ollama-intelligence.tool.d.ts.map +1 -0
- package/dist/intelligence/ollama-intelligence.tool.js +312 -0
- package/dist/intelligence/openai-intelligence.tool.d.ts +30 -0
- package/dist/intelligence/openai-intelligence.tool.d.ts.map +1 -0
- package/dist/intelligence/openai-intelligence.tool.js +255 -0
- package/dist/intelligence/perplexity-intelligence.tool.d.ts +27 -0
- package/dist/intelligence/perplexity-intelligence.tool.d.ts.map +1 -0
- package/dist/intelligence/perplexity-intelligence.tool.js +309 -0
- package/dist/mcp/index.d.ts +3 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +2 -0
- package/dist/mcp/mcp-bridge.tool.d.ts +12 -0
- package/dist/mcp/mcp-bridge.tool.d.ts.map +1 -0
- package/dist/mcp/mcp-bridge.tool.js +126 -0
- package/dist/mcp/mcp.tool.d.ts +14 -0
- package/dist/mcp/mcp.tool.d.ts.map +1 -0
- package/dist/mcp/mcp.tool.js +83 -0
- package/dist/mcp/methods/mcp-bridge.methods.d.ts +5 -0
- package/dist/mcp/methods/mcp-bridge.methods.d.ts.map +1 -0
- package/dist/mcp/methods/mcp-bridge.methods.js +79 -0
- package/dist/nlp/index.d.ts +2 -0
- package/dist/nlp/index.d.ts.map +1 -0
- package/dist/nlp/index.js +1 -0
- package/dist/nlp/methods/nlp.methods.d.ts +5 -0
- package/dist/nlp/methods/nlp.methods.d.ts.map +1 -0
- package/dist/nlp/methods/nlp.methods.js +15 -0
- package/dist/nlp/ner.tool.d.ts +7 -0
- package/dist/nlp/ner.tool.d.ts.map +1 -0
- package/dist/nlp/ner.tool.js +25 -0
- package/dist/src/embeddings/huggingface-text-embeddings.tool.d.ts.map +1 -1
- package/dist/src/embeddings/huggingface-text-embeddings.tool.js +0 -1
- package/dist/src/index.d.ts +0 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +0 -2
- package/dist/src/init.d.ts.map +1 -1
- package/dist/src/init.js +2 -2
- package/dist/src/vector-store/langchain-memory.vector-store.tool.d.ts.map +1 -1
- package/dist/src/vector-store/langchain-memory.vector-store.tool.js +0 -2
- package/dist/test/methods.spec.js +1 -10
- package/dist/vector-store/index.d.ts +3 -0
- package/dist/vector-store/index.d.ts.map +1 -0
- package/dist/vector-store/index.js +2 -0
- package/dist/vector-store/langchain-memory.vector-store.tool.d.ts +14 -0
- package/dist/vector-store/langchain-memory.vector-store.tool.d.ts.map +1 -0
- package/dist/vector-store/langchain-memory.vector-store.tool.js +60 -0
- package/dist/vector-store/methods/vector-store.methods.d.ts +5 -0
- package/dist/vector-store/methods/vector-store.methods.d.ts.map +1 -0
- package/dist/vector-store/methods/vector-store.methods.js +60 -0
- package/dist/vector-store/vector-memory.tool.d.ts +11 -0
- package/dist/vector-store/vector-memory.tool.d.ts.map +1 -0
- package/dist/vector-store/vector-memory.tool.js +13 -0
- package/package.json +15 -12
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { oToolConfig, oVirtualTool, ToolResult } from '@olane/o-tool';
|
|
2
|
+
import { oRequest } from '@olane/o-core';
|
|
3
|
+
export declare class NERTool extends oVirtualTool {
|
|
4
|
+
constructor(config: oToolConfig);
|
|
5
|
+
_tool_extract(request: oRequest): Promise<ToolResult>;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=ner.tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ner.tool.d.ts","sourceRoot":"","sources":["../../src/nlp/ner.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGnD,qBAAa,OAAQ,SAAQ,YAAY;gBAC3B,MAAM,EAAE,WAAW;IASzB,aAAa,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;CAa5D"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { oVirtualTool } from '@olane/o-tool';
|
|
2
|
+
import { oAddress } from '@olane/o-core';
|
|
3
|
+
import { NLP_PARAMS } from './methods/nlp.methods.js';
|
|
4
|
+
export class NERTool extends oVirtualTool {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
super({
|
|
7
|
+
...config,
|
|
8
|
+
address: new oAddress('o://ner'),
|
|
9
|
+
methods: NLP_PARAMS,
|
|
10
|
+
description: 'Tool to extract named entities from text',
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
async _tool_extract(request) {
|
|
14
|
+
const params = request.params;
|
|
15
|
+
const { text } = params;
|
|
16
|
+
this.logger.debug('Extracting entities from text', text);
|
|
17
|
+
const response = await this.use(new oAddress('o://intelligence'), {
|
|
18
|
+
method: 'prompt',
|
|
19
|
+
params: {
|
|
20
|
+
prompt: `Extract named entities and their metadata from the following text: ${text}`,
|
|
21
|
+
},
|
|
22
|
+
});
|
|
23
|
+
return response.result;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"huggingface-text-embeddings.tool.d.ts","sourceRoot":"","sources":["../../../src/embeddings/huggingface-text-embeddings.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,qBAAa,6BAA8B,SAAQ,kBAAkB;IACnE,OAAO,CAAC,KAAK,CAAqC;IAE5C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3B,qBAAqB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAM7D,iBAAiB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"huggingface-text-embeddings.tool.d.ts","sourceRoot":"","sources":["../../../src/embeddings/huggingface-text-embeddings.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG/D,qBAAa,6BAA8B,SAAQ,kBAAkB;IACnE,OAAO,CAAC,KAAK,CAAqC;IAE5C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3B,qBAAqB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAM7D,iBAAiB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAK9D"}
|
|
@@ -14,7 +14,6 @@ export class HuggingfaceTextEmbeddingsTool extends TextEmbeddingsTool {
|
|
|
14
14
|
}
|
|
15
15
|
async _tool_embed_query(request) {
|
|
16
16
|
const { query } = request.params;
|
|
17
|
-
console.log('Embedding query: ', request.params);
|
|
18
17
|
const result = await this.model.embedQuery(query);
|
|
19
18
|
return result;
|
|
20
19
|
}
|
package/dist/src/index.d.ts
CHANGED
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC"}
|
package/dist/src/index.js
CHANGED
package/dist/src/init.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAI7C,eAAO,MAAM,iBAAiB,UAAW,YAAY,KAAG,IA8BvD,CAAC"}
|
package/dist/src/init.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { NERTool } from './nlp/ner.tool.js';
|
|
2
2
|
import { HuggingfaceTextEmbeddingsTool } from './embeddings/index.js';
|
|
3
3
|
import { LangchainMemoryVectorStoreTool } from './vector-store/index.js';
|
|
4
|
-
import { IntelligenceTool } from '
|
|
5
|
-
import { McpBridgeTool } from '
|
|
4
|
+
import { IntelligenceTool } from '@olane/o-intelligence';
|
|
5
|
+
import { McpBridgeTool } from '@olane/o-mcp';
|
|
6
6
|
export const initRegistryTools = (oNode) => {
|
|
7
7
|
const params = {
|
|
8
8
|
parent: oNode.address,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"langchain-memory.vector-store.tool.d.ts","sourceRoot":"","sources":["../../../src/vector-store/langchain-memory.vector-store.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAKlE,qBAAa,8BAA+B,SAAQ,uBAAuB;IACzE,OAAO,CAAC,WAAW,CAAqB;gBAE5B,MAAM,EAAE,WAAW;IAO/B,OAAO,CAAC,cAAc;
|
|
1
|
+
{"version":3,"file":"langchain-memory.vector-store.tool.d.ts","sourceRoot":"","sources":["../../../src/vector-store/langchain-memory.vector-store.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAKlE,qBAAa,8BAA+B,SAAQ,uBAAuB;IACzE,OAAO,CAAC,WAAW,CAAqB;gBAE5B,MAAM,EAAE,WAAW;IAO/B,OAAO,CAAC,cAAc;IAuBhB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,mBAAmB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAOpD,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvD,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvD,oBAAoB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;CAO5D"}
|
|
@@ -22,7 +22,6 @@ export class LangchainMemoryVectorStoreTool extends VectorMemoryStorageTool {
|
|
|
22
22
|
return response.result.data;
|
|
23
23
|
},
|
|
24
24
|
embedQuery: async (document) => {
|
|
25
|
-
console.log('Embedding query: ', document);
|
|
26
25
|
const response = await this.use(new oAddress('o://embeddings-text'), {
|
|
27
26
|
method: 'embed_query',
|
|
28
27
|
params: {
|
|
@@ -51,7 +50,6 @@ export class LangchainMemoryVectorStoreTool extends VectorMemoryStorageTool {
|
|
|
51
50
|
}
|
|
52
51
|
async _tool_search_similar(request) {
|
|
53
52
|
const params = request.params;
|
|
54
|
-
console.log('Search similar params: ', params);
|
|
55
53
|
const query = params.query;
|
|
56
54
|
const limit = params.limit;
|
|
57
55
|
const results = await this.vectorStore.similaritySearch(query, limit);
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { expect } from 'chai';
|
|
2
2
|
import { OAuthTool } from '../src/auth/oAuth.tool.js';
|
|
3
3
|
import { EmbeddingsTool } from '../src/embeddings/embeddings.tool.js';
|
|
4
|
-
import { IntelligenceTool } from '../src/intelligence/intelligence.tool.js';
|
|
5
|
-
import { McpBridgeTool } from '../src/mcp/mcp-bridge.tool.js';
|
|
6
4
|
import { NERTool } from '../src/nlp/ner.tool.js';
|
|
7
5
|
import { LangchainMemoryVectorStoreTool } from '../src/vector-store/index.js';
|
|
6
|
+
import { IntelligenceTool } from '@olane/o-intelligence';
|
|
8
7
|
function checkMethods(tool, methods) {
|
|
9
8
|
const tools = tool.myTools();
|
|
10
9
|
for (const tool of tools) {
|
|
@@ -36,14 +35,6 @@ describe('registry tool metadata tests', () => {
|
|
|
36
35
|
});
|
|
37
36
|
checkMethods(intelligenceTool, intelligenceTool.methods);
|
|
38
37
|
});
|
|
39
|
-
it('should verify mcp method metadata is present', async () => {
|
|
40
|
-
const mcpTool = new McpBridgeTool({
|
|
41
|
-
description: 'MCP tool',
|
|
42
|
-
leader: null,
|
|
43
|
-
parent: null,
|
|
44
|
-
});
|
|
45
|
-
checkMethods(mcpTool, mcpTool.methods);
|
|
46
|
-
});
|
|
47
38
|
it('should verify nlp method metadata is present', async () => {
|
|
48
39
|
const nlpTool = new NERTool({
|
|
49
40
|
description: 'NLP tool',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector-store/index.ts"],"names":[],"mappings":"AAAA,cAAc,yCAAyC,CAAC;AACxD,cAAc,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { oRequest } from '@olane/o-core';
|
|
2
|
+
import { oToolConfig } from '@olane/o-tool';
|
|
3
|
+
import { VectorMemoryStorageTool } from './vector-memory.tool.js';
|
|
4
|
+
export declare class LangchainMemoryVectorStoreTool extends VectorMemoryStorageTool {
|
|
5
|
+
private vectorStore;
|
|
6
|
+
constructor(config: oToolConfig);
|
|
7
|
+
private embeddingsTool;
|
|
8
|
+
initialize(): Promise<void>;
|
|
9
|
+
_tool_add_documents(request: oRequest): Promise<any>;
|
|
10
|
+
_tool_delete_documents(request: oRequest): Promise<any>;
|
|
11
|
+
_tool_update_documents(request: oRequest): Promise<any>;
|
|
12
|
+
_tool_search_similar(request: oRequest): Promise<any>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=langchain-memory.vector-store.tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"langchain-memory.vector-store.tool.d.ts","sourceRoot":"","sources":["../../src/vector-store/langchain-memory.vector-store.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAKlE,qBAAa,8BAA+B,SAAQ,uBAAuB;IACzE,OAAO,CAAC,WAAW,CAAqB;gBAE5B,MAAM,EAAE,WAAW;IAO/B,OAAO,CAAC,cAAc;IAwBhB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,mBAAmB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAOpD,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvD,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvD,oBAAoB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;CAQ5D"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { MemoryVectorStore } from 'langchain/vectorstores/memory';
|
|
2
|
+
import { oAddress } from '@olane/o-core';
|
|
3
|
+
import { VectorMemoryStorageTool } from './vector-memory.tool.js';
|
|
4
|
+
import { Document } from '@langchain/core/documents';
|
|
5
|
+
import { VECTOR_STORE_PARAMS } from './methods/vector-store.methods.js';
|
|
6
|
+
export class LangchainMemoryVectorStoreTool extends VectorMemoryStorageTool {
|
|
7
|
+
constructor(config) {
|
|
8
|
+
super({
|
|
9
|
+
...config,
|
|
10
|
+
methods: VECTOR_STORE_PARAMS,
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
embeddingsTool() {
|
|
14
|
+
return {
|
|
15
|
+
embedDocuments: async (documents) => {
|
|
16
|
+
const response = await this.use(new oAddress('o://embeddings-text'), {
|
|
17
|
+
method: 'embed_documents',
|
|
18
|
+
params: {
|
|
19
|
+
documents,
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
return response.result.data;
|
|
23
|
+
},
|
|
24
|
+
embedQuery: async (document) => {
|
|
25
|
+
console.log('Embedding query: ', document);
|
|
26
|
+
const response = await this.use(new oAddress('o://embeddings-text'), {
|
|
27
|
+
method: 'embed_query',
|
|
28
|
+
params: {
|
|
29
|
+
query: document,
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
return response.result.data;
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
async initialize() {
|
|
37
|
+
await super.initialize();
|
|
38
|
+
this.vectorStore = new MemoryVectorStore(this.embeddingsTool());
|
|
39
|
+
}
|
|
40
|
+
async _tool_add_documents(request) {
|
|
41
|
+
const { documents } = request.params;
|
|
42
|
+
const docs = documents.map((doc) => new Document(doc));
|
|
43
|
+
const result = await this.vectorStore.addDocuments(docs);
|
|
44
|
+
return result;
|
|
45
|
+
}
|
|
46
|
+
async _tool_delete_documents(request) {
|
|
47
|
+
throw new Error('Not implemented');
|
|
48
|
+
}
|
|
49
|
+
async _tool_update_documents(request) {
|
|
50
|
+
throw new Error('Not implemented');
|
|
51
|
+
}
|
|
52
|
+
async _tool_search_similar(request) {
|
|
53
|
+
const params = request.params;
|
|
54
|
+
console.log('Search similar params: ', params);
|
|
55
|
+
const query = params.query;
|
|
56
|
+
const limit = params.limit;
|
|
57
|
+
const results = await this.vectorStore.similaritySearch(query, limit);
|
|
58
|
+
return results;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vector-store.methods.d.ts","sourceRoot":"","sources":["../../../src/vector-store/methods/vector-store.methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,eAAO,MAAM,mBAAmB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CA2DzD,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export const VECTOR_STORE_PARAMS = {
|
|
2
|
+
add_documents: {
|
|
3
|
+
name: 'add_documents',
|
|
4
|
+
description: 'Add documents to the store',
|
|
5
|
+
dependencies: [],
|
|
6
|
+
parameters: [
|
|
7
|
+
{
|
|
8
|
+
name: 'documents',
|
|
9
|
+
type: 'array',
|
|
10
|
+
value: '{pageContent: string, metadata: object}',
|
|
11
|
+
description: 'The documents to add',
|
|
12
|
+
},
|
|
13
|
+
],
|
|
14
|
+
},
|
|
15
|
+
delete_documents: {
|
|
16
|
+
name: 'delete_documents',
|
|
17
|
+
description: 'Delete documents from the store',
|
|
18
|
+
dependencies: [],
|
|
19
|
+
parameters: [
|
|
20
|
+
{
|
|
21
|
+
name: 'documents',
|
|
22
|
+
type: 'array',
|
|
23
|
+
value: 'object[]',
|
|
24
|
+
description: 'The documents to update',
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
},
|
|
28
|
+
search_similar: {
|
|
29
|
+
name: 'search_similar',
|
|
30
|
+
description: 'Search for similar documents in the store',
|
|
31
|
+
dependencies: [],
|
|
32
|
+
parameters: [
|
|
33
|
+
{
|
|
34
|
+
name: 'query',
|
|
35
|
+
type: 'string',
|
|
36
|
+
value: 'string',
|
|
37
|
+
description: 'The query to search for',
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
name: 'limit',
|
|
41
|
+
type: 'number',
|
|
42
|
+
value: 'number',
|
|
43
|
+
description: 'The limit of documents to return',
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
},
|
|
47
|
+
update_documents: {
|
|
48
|
+
name: 'update_documents',
|
|
49
|
+
description: 'Update documents in the store',
|
|
50
|
+
dependencies: [],
|
|
51
|
+
parameters: [
|
|
52
|
+
{
|
|
53
|
+
name: 'documents',
|
|
54
|
+
type: 'array',
|
|
55
|
+
value: 'object[]',
|
|
56
|
+
description: 'The documents to update',
|
|
57
|
+
},
|
|
58
|
+
],
|
|
59
|
+
},
|
|
60
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { oVirtualTool, ToolResult } from '@olane/o-tool';
|
|
2
|
+
import { oRequest } from '@olane/o-core';
|
|
3
|
+
import { oToolConfig } from '@olane/o-tool';
|
|
4
|
+
export declare abstract class VectorMemoryStorageTool extends oVirtualTool {
|
|
5
|
+
constructor(config: oToolConfig);
|
|
6
|
+
abstract _tool_search_similar(request: oRequest): Promise<ToolResult>;
|
|
7
|
+
abstract _tool_add_documents(request: oRequest): Promise<ToolResult>;
|
|
8
|
+
abstract _tool_delete_documents(request: oRequest): Promise<ToolResult>;
|
|
9
|
+
abstract _tool_update_documents(request: oRequest): Promise<ToolResult>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=vector-memory.tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vector-memory.tool.d.ts","sourceRoot":"","sources":["../../src/vector-store/vector-memory.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,8BAAsB,uBAAwB,SAAQ,YAAY;gBACpD,MAAM,EAAE,WAAW;IAS/B,QAAQ,CAAC,oBAAoB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IACrE,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IACpE,QAAQ,CAAC,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IACvE,QAAQ,CAAC,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;CACxE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { oVirtualTool } from '@olane/o-tool';
|
|
2
|
+
import { oAddress } from '@olane/o-core';
|
|
3
|
+
import { VECTOR_STORE_PARAMS } from './methods/vector-store.methods.js';
|
|
4
|
+
export class VectorMemoryStorageTool extends oVirtualTool {
|
|
5
|
+
constructor(config) {
|
|
6
|
+
super({
|
|
7
|
+
...config,
|
|
8
|
+
address: new oAddress('o://vector-store'),
|
|
9
|
+
methods: VECTOR_STORE_PARAMS,
|
|
10
|
+
description: 'Vector store tool for storing and searching documents',
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@olane/o-tool-registry",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/src/index.js",
|
|
6
6
|
"types": "dist/src/index.d.ts",
|
|
@@ -35,13 +35,15 @@
|
|
|
35
35
|
"license": "ISC",
|
|
36
36
|
"description": "oLane Core",
|
|
37
37
|
"devDependencies": {
|
|
38
|
+
"@olane/o-config": "file:../o-config",
|
|
39
|
+
"@olane/o-core": "file:../..",
|
|
40
|
+
"@olane/o-protocol": "file:../o-protocol",
|
|
41
|
+
"@olane/o-tool": "file:../o-tool",
|
|
42
|
+
"@olane/o-tools-common": "file:../o-tools-common",
|
|
43
|
+
"@olane/o-mcp": "file:../o-mcp",
|
|
44
|
+
"@olane/o-intelligence": "file:../o-intelligence",
|
|
38
45
|
"@eslint/eslintrc": "^3.3.1",
|
|
39
46
|
"@eslint/js": "^9.29.0",
|
|
40
|
-
"@olane/o-config": "0.5.1",
|
|
41
|
-
"@olane/o-core": "0.5.1",
|
|
42
|
-
"@olane/o-protocol": "0.5.1",
|
|
43
|
-
"@olane/o-tool": "0.5.1",
|
|
44
|
-
"@olane/o-tools-common": "0.5.1",
|
|
45
47
|
"@tsconfig/node20": "^20.1.6",
|
|
46
48
|
"@types/jest": "^30.0.0",
|
|
47
49
|
"@typescript-eslint/eslint-plugin": "^8.34.1",
|
|
@@ -59,17 +61,18 @@
|
|
|
59
61
|
"typescript": "5.4.5"
|
|
60
62
|
},
|
|
61
63
|
"peerDependencies": {
|
|
62
|
-
"@olane/o-config": "^0.
|
|
63
|
-
"@olane/o-core": "^0.
|
|
64
|
-
"@olane/o-protocol": "^0.
|
|
65
|
-
"@olane/o-tool": "^0.
|
|
66
|
-
"@olane/o-tools-common": "^0.
|
|
64
|
+
"@olane/o-config": "^0.6.1",
|
|
65
|
+
"@olane/o-core": "^0.6.1",
|
|
66
|
+
"@olane/o-protocol": "^0.6.1",
|
|
67
|
+
"@olane/o-tool": "^0.6.1",
|
|
68
|
+
"@olane/o-tools-common": "^0.6.1",
|
|
69
|
+
"@olane/o-mcp": "^0.6.1",
|
|
70
|
+
"@olane/o-intelligence": "^0.6.1"
|
|
67
71
|
},
|
|
68
72
|
"dependencies": {
|
|
69
73
|
"@huggingface/transformers": "^3.5.2",
|
|
70
74
|
"@langchain/community": "^0.3.47",
|
|
71
75
|
"@langchain/core": "^0.3.61",
|
|
72
|
-
"@modelcontextprotocol/sdk": "^1.13.0",
|
|
73
76
|
"debug": "^4.4.1",
|
|
74
77
|
"dotenv": "^16.5.0",
|
|
75
78
|
"langchain": "^0.3.29"
|