@olane/o-intelligence 0.6.12 → 0.6.13

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.
@@ -1,6 +1,6 @@
1
1
  import { oAddress } from '@olane/o-core';
2
2
  import { oVirtualTool } from '@olane/o-tool';
3
- import { INTELLIGENCE_PARAMS } from './methods/intelligence.methods.js';
3
+ import { LLM_PARAMS } from './methods/llm.methods.js';
4
4
  export class AnthropicIntelligenceTool extends oVirtualTool {
5
5
  constructor(config) {
6
6
  super({
@@ -8,7 +8,7 @@ export class AnthropicIntelligenceTool extends oVirtualTool {
8
8
  address: new oAddress('o://anthropic'),
9
9
  description: 'Intelligence tool using Anthropic LLM suite of models',
10
10
  // shared parameters for all tools
11
- methods: INTELLIGENCE_PARAMS,
11
+ methods: LLM_PARAMS,
12
12
  dependencies: [],
13
13
  });
14
14
  this.defaultModel = 'claude-sonnet-4-20250514';
@@ -1,13 +1,13 @@
1
1
  import { oAddress } from '@olane/o-core';
2
2
  import { oVirtualTool } from '@olane/o-tool';
3
- import { INTELLIGENCE_PARAMS } from './methods/intelligence.methods.js';
3
+ import { LLM_PARAMS } from './methods/llm.methods.js';
4
4
  export class GeminiIntelligenceTool extends oVirtualTool {
5
5
  constructor(config) {
6
6
  super({
7
7
  ...config,
8
8
  address: new oAddress('o://gemini'),
9
9
  description: 'Intelligence tool using Google Gemini suite of models',
10
- methods: INTELLIGENCE_PARAMS,
10
+ methods: LLM_PARAMS,
11
11
  dependencies: [],
12
12
  });
13
13
  this.apiKey = process.env.GEMINI_API_KEY || '';
@@ -1,13 +1,13 @@
1
1
  import { oAddress } from '@olane/o-core';
2
2
  import { oVirtualTool } from '@olane/o-tool';
3
- import { INTELLIGENCE_PARAMS } from './methods/intelligence.methods.js';
3
+ import { LLM_PARAMS } from './methods/llm.methods.js';
4
4
  export class GrokIntelligenceTool extends oVirtualTool {
5
5
  constructor(config) {
6
6
  super({
7
7
  ...config,
8
8
  address: new oAddress('o://grok'),
9
9
  description: 'Intelligence tool using xAI Grok suite of models',
10
- methods: INTELLIGENCE_PARAMS,
10
+ methods: LLM_PARAMS,
11
11
  dependencies: [],
12
12
  });
13
13
  this.baseUrl = 'https://api.x.ai/v1';
@@ -16,6 +16,7 @@ export declare class IntelligenceTool extends oVirtualTool {
16
16
  apiKey: string;
17
17
  }>;
18
18
  getHostingProvider(): Promise<{
19
+ modelProvider: LLMProviders;
19
20
  provider: HostModelProvider;
20
21
  options: any;
21
22
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"intelligence.tool.d.ts","sourceRoot":"","sources":["../../src/intelligence.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAa,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAQ3C,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,qBAAa,gBAAiB,SAAQ,YAAY;IAChD,OAAO,CAAC,eAAe,CAAK;gBAChB,MAAM,EAAE,WAAW;IA0DzB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAmBnD,gBAAgB,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IA6DvD,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAqEtE,kBAAkB,IAAI,OAAO,CAAC;QAClC,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,OAAO,EAAE,GAAG,CAAC;KACd,CAAC;IA+BI,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC;QACxD,MAAM,EAAE,QAAQ,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,GAAG,CAAC;KACd,CAAC;IAWI,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA4C/D,2BAA2B,CAC/B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAgCvB,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC;IAkC9C,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;CAwBhE"}
1
+ {"version":3,"file":"intelligence.tool.d.ts","sourceRoot":"","sources":["../../src/intelligence.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAa,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAQ3C,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,qBAAa,gBAAiB,SAAQ,YAAY;IAChD,OAAO,CAAC,eAAe,CAAK;gBAChB,MAAM,EAAE,WAAW;IA0DzB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAmBnD,gBAAgB,IAAI,OAAO,CAAC;QAAE,QAAQ,EAAE,YAAY,CAAA;KAAE,CAAC;IA6DvD,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAqEtE,kBAAkB,IAAI,OAAO,CAAC;QAClC,aAAa,EAAE,YAAY,CAAC;QAC5B,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,OAAO,EAAE,GAAG,CAAC;KACd,CAAC;IAuCI,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC;QACxD,MAAM,EAAE,QAAQ,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,GAAG,CAAC;KACd,CAAC;IAWI,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA4C/D,2BAA2B,CAC/B,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAgCvB,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC;IAkC9C,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;CAwBhE"}
@@ -205,8 +205,14 @@ export class IntelligenceTool extends oVirtualTool {
205
205
  if (addressStored) {
206
206
  address = addressStored;
207
207
  }
208
+ const modelProviderStored = await this.getSecureValue(IntelligenceStorageKeys.MODEL_PROVIDER_PREFERENCE);
209
+ let modelProvider = modelProviderStored;
210
+ if (!modelProvider) {
211
+ modelProvider = LLMProviders.ANTHROPIC;
212
+ }
208
213
  return {
209
214
  provider: provider,
215
+ modelProvider: modelProvider,
210
216
  options: {
211
217
  token: token,
212
218
  address: address,
@@ -267,10 +273,10 @@ export class IntelligenceTool extends oVirtualTool {
267
273
  }
268
274
  async attemptUseOlaneIntelligence(request) {
269
275
  const { prompt } = request.params;
270
- const { provider: hostingProvider, options } = await this.getHostingProvider();
276
+ const { provider: hostingProvider, options, modelProvider } = await this.getHostingProvider();
271
277
  // forward to olane
272
278
  if (hostingProvider === HostModelProvider.OLANE) {
273
- const response = await this.use(new oAddress(options.address, [
279
+ const response = await this.use(new oAddress(options.address + '/' + modelProvider, [
274
280
  multiaddr(process.env.OLANE_ADDRESS ||
275
281
  '/dns4/leader.olane.com/tcp/4000/tls/ws'),
276
282
  ]), {
@@ -1 +1 @@
1
- {"version":3,"file":"intelligence.methods.d.ts","sourceRoot":"","sources":["../../../src/methods/intelligence.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;CAyJzD,CAAC"}
1
+ {"version":3,"file":"intelligence.methods.d.ts","sourceRoot":"","sources":["../../../src/methods/intelligence.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;CAoCzD,CAAC"}
@@ -20,103 +20,6 @@ export const INTELLIGENCE_PARAMS = {
20
20
  },
21
21
  ],
22
22
  },
23
- completion: {
24
- name: 'completion',
25
- description: 'Completion',
26
- dependencies: [],
27
- parameters: [
28
- {
29
- name: 'model',
30
- type: 'string',
31
- value: 'string',
32
- description: 'The model to use for generation',
33
- required: false,
34
- },
35
- {
36
- name: 'messages',
37
- type: 'array',
38
- value: 'string[]',
39
- description: 'The messages to use for generation',
40
- },
41
- {
42
- name: 'options',
43
- type: 'object',
44
- value: 'object',
45
- description: 'The options to use for generation',
46
- required: false,
47
- },
48
- ],
49
- },
50
- generate: {
51
- name: 'generate',
52
- description: 'Generate',
53
- dependencies: [],
54
- parameters: [
55
- {
56
- name: 'model',
57
- type: 'string',
58
- value: 'string',
59
- description: 'The model to use for generation',
60
- },
61
- ],
62
- },
63
- list_models: {
64
- name: 'list_models',
65
- description: 'List models',
66
- dependencies: [],
67
- parameters: [],
68
- },
69
- pull_model: {
70
- name: 'pull_model',
71
- description: 'Pull model',
72
- dependencies: [],
73
- parameters: [
74
- {
75
- name: 'model',
76
- type: 'string',
77
- value: 'string',
78
- description: 'The model to pull',
79
- },
80
- {
81
- name: 'insecure',
82
- type: 'boolean',
83
- value: 'boolean',
84
- description: 'Whether to allow insecure connections',
85
- },
86
- ],
87
- },
88
- delete_model: {
89
- name: 'delete_model',
90
- description: 'Delete model',
91
- dependencies: [],
92
- parameters: [
93
- {
94
- name: 'model',
95
- type: 'string',
96
- value: 'string',
97
- description: 'The model to delete',
98
- },
99
- ],
100
- },
101
- model_info: {
102
- name: 'model_info',
103
- description: 'Model info',
104
- dependencies: [],
105
- parameters: [
106
- {
107
- name: 'model',
108
- type: 'string',
109
- value: 'string',
110
- description: 'The model to get info for',
111
- },
112
- ],
113
- },
114
- status: {
115
- name: 'status',
116
- description: 'Status',
117
- dependencies: [],
118
- parameters: [],
119
- },
120
23
  prompt: {
121
24
  name: 'prompt',
122
25
  description: 'Generate a response using AI based on a prompt',
@@ -130,24 +33,4 @@ export const INTELLIGENCE_PARAMS = {
130
33
  },
131
34
  ],
132
35
  },
133
- search: {
134
- name: 'search',
135
- description: 'Search for information using AI search capabilities',
136
- dependencies: [],
137
- parameters: [
138
- {
139
- name: 'query',
140
- type: 'string',
141
- value: 'string',
142
- description: 'The search query to execute',
143
- },
144
- {
145
- name: 'focus',
146
- type: 'string',
147
- value: 'string',
148
- description: 'The focus area for the search',
149
- required: false,
150
- },
151
- ],
152
- },
153
36
  };
@@ -0,0 +1,5 @@
1
+ import { oMethod } from '@olane/o-protocol';
2
+ export declare const LLM_PARAMS: {
3
+ [key: string]: oMethod;
4
+ };
5
+ //# sourceMappingURL=llm.methods.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm.methods.d.ts","sourceRoot":"","sources":["../../../src/methods/llm.methods.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C,eAAO,MAAM,UAAU,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAkGhD,CAAC"}
@@ -0,0 +1,99 @@
1
+ export const LLM_PARAMS = {
2
+ completion: {
3
+ name: 'completion',
4
+ description: 'The primary method for interacting with the service',
5
+ dependencies: [],
6
+ parameters: [
7
+ {
8
+ name: 'model',
9
+ type: 'string',
10
+ value: 'string',
11
+ description: 'The model to use for generation',
12
+ required: false,
13
+ },
14
+ {
15
+ name: 'messages',
16
+ type: 'array',
17
+ value: 'string[]',
18
+ description: 'The messages to use for generation',
19
+ },
20
+ {
21
+ name: 'options',
22
+ type: 'object',
23
+ value: 'object',
24
+ description: 'The options to use for generation',
25
+ required: false,
26
+ },
27
+ ],
28
+ },
29
+ generate: {
30
+ name: 'generate',
31
+ description: 'Generate',
32
+ dependencies: [],
33
+ parameters: [
34
+ {
35
+ name: 'model',
36
+ type: 'string',
37
+ value: 'string',
38
+ description: 'The model to use for generation',
39
+ },
40
+ ],
41
+ },
42
+ list_models: {
43
+ name: 'list_models',
44
+ description: 'List models',
45
+ dependencies: [],
46
+ parameters: [],
47
+ },
48
+ pull_model: {
49
+ name: 'pull_model',
50
+ description: 'Pull model',
51
+ dependencies: [],
52
+ parameters: [
53
+ {
54
+ name: 'model',
55
+ type: 'string',
56
+ value: 'string',
57
+ description: 'The model to pull',
58
+ },
59
+ {
60
+ name: 'insecure',
61
+ type: 'boolean',
62
+ value: 'boolean',
63
+ description: 'Whether to allow insecure connections',
64
+ },
65
+ ],
66
+ },
67
+ delete_model: {
68
+ name: 'delete_model',
69
+ description: 'Delete model',
70
+ dependencies: [],
71
+ parameters: [
72
+ {
73
+ name: 'model',
74
+ type: 'string',
75
+ value: 'string',
76
+ description: 'The model to delete',
77
+ },
78
+ ],
79
+ },
80
+ model_info: {
81
+ name: 'model_info',
82
+ description: 'Model info',
83
+ dependencies: [],
84
+ parameters: [
85
+ {
86
+ name: 'model',
87
+ type: 'string',
88
+ value: 'string',
89
+ description: 'The model to get info for',
90
+ },
91
+ ],
92
+ },
93
+ status: {
94
+ name: 'status',
95
+ description: 'Status',
96
+ dependencies: [],
97
+ parameters: [],
98
+ },
99
+ };
@@ -1,13 +1,13 @@
1
1
  import { oAddress } from '@olane/o-core';
2
2
  import { oVirtualTool } from '@olane/o-tool';
3
- import { INTELLIGENCE_PARAMS } from './methods/intelligence.methods.js';
3
+ import { LLM_PARAMS } from './methods/llm.methods.js';
4
4
  export class OllamaIntelligenceTool extends oVirtualTool {
5
5
  constructor(config) {
6
6
  super({
7
7
  ...config,
8
8
  address: new oAddress('o://ollama'),
9
9
  description: 'Intelligence tool using Ollama LLM suite of models',
10
- methods: INTELLIGENCE_PARAMS,
10
+ methods: LLM_PARAMS,
11
11
  dependencies: [],
12
12
  });
13
13
  // this.baseUrl = config.ollamaUrl || 'http://localhost:11434';
@@ -1,13 +1,13 @@
1
1
  import { oAddress } from '@olane/o-core';
2
2
  import { oVirtualTool } from '@olane/o-tool';
3
- import { INTELLIGENCE_PARAMS } from './methods/intelligence.methods.js';
3
+ import { LLM_PARAMS } from './methods/llm.methods.js';
4
4
  export class OpenAIIntelligenceTool extends oVirtualTool {
5
5
  constructor(config) {
6
6
  super({
7
7
  ...config,
8
8
  address: new oAddress('o://openai'),
9
9
  description: "Open AI's suite of intelligence models.",
10
- methods: INTELLIGENCE_PARAMS,
10
+ methods: LLM_PARAMS,
11
11
  dependencies: [],
12
12
  });
13
13
  this.baseUrl = 'https://api.openai.com/v1';
@@ -1 +1 @@
1
- {"version":3,"file":"perplexity-intelligence.tool.d.ts","sourceRoot":"","sources":["../../src/perplexity-intelligence.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAqFtE,qBAAa,0BAA2B,SAAQ,YAAY;IAC1D,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,aAAa,CAA2C;gBAEpD,MAAM,EAAE,WAAW;IAU/B;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IA+F9D;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IAuG5D;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IAyC/D;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IA6E1D;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;CAgC3D"}
1
+ {"version":3,"file":"perplexity-intelligence.tool.d.ts","sourceRoot":"","sources":["../../src/perplexity-intelligence.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAqFtE,qBAAa,0BAA2B,SAAQ,YAAY;IAC1D,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,aAAa,CAA2C;gBAEpD,MAAM,EAAE,WAAW;IAW/B;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IA+F9D;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IAuG5D;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IAyC/D;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;IA6E1D;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;CAgC3D"}
@@ -1,15 +1,16 @@
1
1
  import { oAddress } from '@olane/o-core';
2
2
  import { oVirtualTool } from '@olane/o-tool';
3
- import { INTELLIGENCE_PARAMS } from './methods/intelligence.methods.js';
3
+ import { LLM_PARAMS } from './methods/llm.methods.js';
4
4
  export class PerplexityIntelligenceTool extends oVirtualTool {
5
5
  constructor(config) {
6
6
  super({
7
7
  ...config,
8
8
  address: new oAddress('o://perplexity'),
9
- description: 'Intelligence tool using Perplexity LLM suite of models',
10
- methods: INTELLIGENCE_PARAMS,
9
+ description: 'Perplexity sonar model is useful for searching the web or providing information about a wide range of topics',
10
+ methods: LLM_PARAMS,
11
11
  dependencies: [],
12
12
  });
13
+ this.defaultModel = 'sonar';
13
14
  this.defaultApiKey = process.env.SONAR_API_KEY || '';
14
15
  }
15
16
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@olane/o-intelligence",
3
- "version": "0.6.12",
3
+ "version": "0.6.13",
4
4
  "type": "module",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -56,10 +56,10 @@
56
56
  "typescript": "5.4.5"
57
57
  },
58
58
  "peerDependencies": {
59
- "@olane/o-config": "^0.6.11",
60
- "@olane/o-core": "^0.6.11",
61
- "@olane/o-protocol": "^0.6.11",
62
- "@olane/o-tool": "^0.6.11"
59
+ "@olane/o-config": "^0.6.12",
60
+ "@olane/o-core": "^0.6.12",
61
+ "@olane/o-protocol": "^0.6.12",
62
+ "@olane/o-tool": "^0.6.12"
63
63
  },
64
64
  "dependencies": {
65
65
  "debug": "^4.4.1",