@just-every/ensemble 0.1.34 → 0.2.2

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.
Files changed (205) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +62 -190
  3. package/dist/config/tool_execution.d.ts +11 -0
  4. package/dist/config/tool_execution.d.ts.map +1 -0
  5. package/dist/config/tool_execution.js +31 -0
  6. package/dist/config/tool_execution.js.map +1 -0
  7. package/dist/core/ensemble_embed.d.ts +3 -0
  8. package/dist/core/ensemble_embed.d.ts.map +1 -0
  9. package/dist/core/ensemble_embed.js +24 -0
  10. package/dist/core/ensemble_embed.js.map +1 -0
  11. package/dist/core/ensemble_image.d.ts +3 -0
  12. package/dist/core/ensemble_image.d.ts.map +1 -0
  13. package/dist/core/ensemble_image.js +10 -0
  14. package/dist/core/ensemble_image.js.map +1 -0
  15. package/dist/core/ensemble_request.d.ts +4 -0
  16. package/dist/core/ensemble_request.d.ts.map +1 -0
  17. package/dist/core/ensemble_request.js +240 -0
  18. package/dist/core/ensemble_request.js.map +1 -0
  19. package/dist/{model_data.d.ts → data/model_data.d.ts} +2 -2
  20. package/dist/data/model_data.d.ts.map +1 -0
  21. package/dist/{model_data.js → data/model_data.js} +52 -3
  22. package/dist/data/model_data.js.map +1 -0
  23. package/dist/index.d.ts +18 -35
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +18 -56
  26. package/dist/index.js.map +1 -1
  27. package/dist/model_providers/base_provider.d.ts +3 -29
  28. package/dist/model_providers/base_provider.d.ts.map +1 -1
  29. package/dist/model_providers/base_provider.js +1 -114
  30. package/dist/model_providers/base_provider.js.map +1 -1
  31. package/dist/model_providers/claude.d.ts +2 -2
  32. package/dist/model_providers/claude.d.ts.map +1 -1
  33. package/dist/model_providers/claude.js +10 -4
  34. package/dist/model_providers/claude.js.map +1 -1
  35. package/dist/model_providers/deepseek.d.ts.map +1 -1
  36. package/dist/model_providers/deepseek.js.map +1 -1
  37. package/dist/model_providers/gemini.d.ts +4 -4
  38. package/dist/model_providers/gemini.d.ts.map +1 -1
  39. package/dist/model_providers/gemini.js +31 -32
  40. package/dist/model_providers/gemini.js.map +1 -1
  41. package/dist/model_providers/grok.d.ts.map +1 -1
  42. package/dist/model_providers/grok.js.map +1 -1
  43. package/dist/model_providers/model_provider.d.ts +3 -4
  44. package/dist/model_providers/model_provider.d.ts.map +1 -1
  45. package/dist/model_providers/model_provider.js +11 -5
  46. package/dist/model_providers/model_provider.js.map +1 -1
  47. package/dist/model_providers/openai.d.ts +4 -4
  48. package/dist/model_providers/openai.d.ts.map +1 -1
  49. package/dist/model_providers/openai.js +24 -26
  50. package/dist/model_providers/openai.js.map +1 -1
  51. package/dist/model_providers/openai_chat.d.ts +3 -3
  52. package/dist/model_providers/openai_chat.d.ts.map +1 -1
  53. package/dist/model_providers/openai_chat.js +2 -2
  54. package/dist/model_providers/openai_chat.js.map +1 -1
  55. package/dist/model_providers/openrouter.d.ts.map +1 -1
  56. package/dist/model_providers/openrouter.js +3 -3
  57. package/dist/model_providers/openrouter.js.map +1 -1
  58. package/dist/model_providers/test_provider.d.ts +3 -5
  59. package/dist/model_providers/test_provider.d.ts.map +1 -1
  60. package/dist/model_providers/test_provider.js +9 -17
  61. package/dist/model_providers/test_provider.js.map +1 -1
  62. package/dist/tsconfig.tsbuildinfo +1 -1
  63. package/dist/types/api_types.d.ts +1 -1
  64. package/dist/types/api_types.d.ts.map +1 -1
  65. package/dist/types/tool_types.d.ts +1 -99
  66. package/dist/types/tool_types.d.ts.map +1 -1
  67. package/dist/types/tool_types.js +1 -10
  68. package/dist/types/tool_types.js.map +1 -1
  69. package/dist/{types.d.ts → types/types.d.ts} +82 -32
  70. package/dist/types/types.d.ts.map +1 -0
  71. package/dist/types/types.js.map +1 -0
  72. package/dist/utils/agent.d.ts +41 -0
  73. package/dist/utils/agent.d.ts.map +1 -0
  74. package/dist/utils/agent.js +342 -0
  75. package/dist/utils/agent.js.map +1 -0
  76. package/dist/utils/communication.d.ts +0 -1
  77. package/dist/utils/communication.d.ts.map +1 -1
  78. package/dist/utils/communication.js +1 -4
  79. package/dist/utils/communication.js.map +1 -1
  80. package/dist/utils/cost_tracker.d.ts +1 -1
  81. package/dist/utils/cost_tracker.d.ts.map +1 -1
  82. package/dist/utils/cost_tracker.js +1 -1
  83. package/dist/utils/cost_tracker.js.map +1 -1
  84. package/dist/utils/create_tool_function.d.ts +1 -23
  85. package/dist/utils/create_tool_function.d.ts.map +1 -1
  86. package/dist/utils/create_tool_function.js +14 -3
  87. package/dist/utils/create_tool_function.js.map +1 -1
  88. package/dist/{external_models.d.ts → utils/external_models.d.ts} +1 -2
  89. package/dist/utils/external_models.d.ts.map +1 -0
  90. package/dist/{external_models.js → utils/external_models.js} +0 -3
  91. package/dist/utils/external_models.js.map +1 -0
  92. package/dist/utils/image_to_text.d.ts.map +1 -1
  93. package/dist/utils/image_to_text.js +3 -2
  94. package/dist/utils/image_to_text.js.map +1 -1
  95. package/dist/utils/image_utils.d.ts +1 -4
  96. package/dist/utils/image_utils.d.ts.map +1 -1
  97. package/dist/utils/image_utils.js +2 -10
  98. package/dist/utils/image_utils.js.map +1 -1
  99. package/dist/utils/llm_logger.d.ts +1 -1
  100. package/dist/utils/llm_logger.d.ts.map +1 -1
  101. package/dist/utils/llm_logger.js.map +1 -1
  102. package/dist/utils/message_history.d.ts +4 -4
  103. package/dist/utils/message_history.d.ts.map +1 -1
  104. package/dist/utils/message_history.js +18 -18
  105. package/dist/utils/message_history.js.map +1 -1
  106. package/dist/utils/quota_tracker.d.ts +1 -1
  107. package/dist/utils/quota_tracker.d.ts.map +1 -1
  108. package/dist/utils/quota_tracker.js +0 -1
  109. package/dist/utils/quota_tracker.js.map +1 -1
  110. package/dist/utils/running_tool_tracker.d.ts +42 -0
  111. package/dist/utils/running_tool_tracker.d.ts.map +1 -0
  112. package/dist/utils/running_tool_tracker.js +129 -0
  113. package/dist/utils/running_tool_tracker.js.map +1 -0
  114. package/dist/utils/sequential_queue.d.ts +13 -0
  115. package/dist/utils/sequential_queue.d.ts.map +1 -0
  116. package/dist/utils/sequential_queue.js +68 -0
  117. package/dist/utils/sequential_queue.js.map +1 -0
  118. package/dist/utils/state_manager.d.ts.map +1 -1
  119. package/dist/utils/state_manager.js.map +1 -1
  120. package/dist/utils/stream_converter.d.ts +2 -13
  121. package/dist/utils/stream_converter.d.ts.map +1 -1
  122. package/dist/utils/stream_converter.js +15 -37
  123. package/dist/utils/stream_converter.js.map +1 -1
  124. package/dist/utils/test_utils.d.ts +4 -4
  125. package/dist/utils/test_utils.d.ts.map +1 -1
  126. package/dist/utils/test_utils.js +17 -17
  127. package/dist/utils/test_utils.js.map +1 -1
  128. package/dist/utils/tool_execution_manager.d.ts +7 -0
  129. package/dist/utils/tool_execution_manager.d.ts.map +1 -0
  130. package/dist/utils/tool_execution_manager.js +145 -0
  131. package/dist/utils/tool_execution_manager.js.map +1 -0
  132. package/dist/utils/tool_parameter_utils.d.ts +2 -2
  133. package/dist/utils/tool_parameter_utils.d.ts.map +1 -1
  134. package/dist/utils/tool_parameter_utils.js +8 -4
  135. package/dist/utils/tool_parameter_utils.js.map +1 -1
  136. package/dist/utils/tool_result_processor.d.ts +6 -0
  137. package/dist/utils/tool_result_processor.d.ts.map +1 -0
  138. package/dist/utils/tool_result_processor.js +69 -0
  139. package/dist/utils/tool_result_processor.js.map +1 -0
  140. package/dist/utils/verification.d.ts +7 -0
  141. package/dist/utils/verification.d.ts.map +1 -0
  142. package/dist/utils/verification.js +43 -0
  143. package/dist/utils/verification.js.map +1 -0
  144. package/package.json +11 -10
  145. package/dist/cost_tracker.d.ts +0 -2
  146. package/dist/cost_tracker.d.ts.map +0 -1
  147. package/dist/cost_tracker.js +0 -2
  148. package/dist/cost_tracker.js.map +0 -1
  149. package/dist/errors.d.ts +0 -55
  150. package/dist/errors.d.ts.map +0 -1
  151. package/dist/errors.js +0 -134
  152. package/dist/errors.js.map +0 -1
  153. package/dist/external_models.d.ts.map +0 -1
  154. package/dist/external_models.js.map +0 -1
  155. package/dist/model_data.d.ts.map +0 -1
  156. package/dist/model_data.js.map +0 -1
  157. package/dist/model_providers/refactored_openai.d.ts +0 -22
  158. package/dist/model_providers/refactored_openai.d.ts.map +0 -1
  159. package/dist/model_providers/refactored_openai.js +0 -310
  160. package/dist/model_providers/refactored_openai.js.map +0 -1
  161. package/dist/openai-compat.d.ts +0 -79
  162. package/dist/openai-compat.d.ts.map +0 -1
  163. package/dist/openai-compat.js +0 -581
  164. package/dist/openai-compat.js.map +0 -1
  165. package/dist/test.d.ts +0 -5
  166. package/dist/test.d.ts.map +0 -1
  167. package/dist/test.js +0 -2
  168. package/dist/test.js.map +0 -1
  169. package/dist/types/extended_types.d.ts +0 -43
  170. package/dist/types/extended_types.d.ts.map +0 -1
  171. package/dist/types/extended_types.js +0 -2
  172. package/dist/types/extended_types.js.map +0 -1
  173. package/dist/types.d.ts.map +0 -1
  174. package/dist/types.js.map +0 -1
  175. package/dist/unified_request.d.ts +0 -19
  176. package/dist/unified_request.d.ts.map +0 -1
  177. package/dist/unified_request.js +0 -261
  178. package/dist/unified_request.js.map +0 -1
  179. package/dist/utils/async_queue.d.ts +0 -14
  180. package/dist/utils/async_queue.d.ts.map +0 -1
  181. package/dist/utils/async_queue.js +0 -68
  182. package/dist/utils/async_queue.js.map +0 -1
  183. package/dist/utils/cache.d.ts +0 -60
  184. package/dist/utils/cache.d.ts.map +0 -1
  185. package/dist/utils/cache.js +0 -205
  186. package/dist/utils/cache.js.map +0 -1
  187. package/dist/utils/error_handler.d.ts +0 -33
  188. package/dist/utils/error_handler.d.ts.map +0 -1
  189. package/dist/utils/error_handler.js +0 -84
  190. package/dist/utils/error_handler.js.map +0 -1
  191. package/dist/utils/tool_builder.d.ts +0 -51
  192. package/dist/utils/tool_builder.d.ts.map +0 -1
  193. package/dist/utils/tool_builder.js +0 -167
  194. package/dist/utils/tool_builder.js.map +0 -1
  195. package/dist/utils/tool_utils.d.ts +0 -13
  196. package/dist/utils/tool_utils.d.ts.map +0 -1
  197. package/dist/utils/tool_utils.js +0 -52
  198. package/dist/utils/tool_utils.js.map +0 -1
  199. package/dist/validation.d.ts +0 -1789
  200. package/dist/validation.d.ts.map +0 -1
  201. package/dist/validation.js +0 -289
  202. package/dist/validation.js.map +0 -1
  203. package/test.d.ts +0 -3
  204. package/test.js +0 -4
  205. /package/dist/{types.js → types/types.js} +0 -0
@@ -40,7 +40,7 @@ function generateFootnotes(tracker) {
40
40
  .join('\n');
41
41
  return '\n\nReferences:\n' + footnotes;
42
42
  }
43
- import { costTracker } from '../cost_tracker.js';
43
+ import { costTracker } from '../index.js';
44
44
  import { log_llm_error, log_llm_request, log_llm_response, } from '../utils/llm_logger.js';
45
45
  import { isPaused } from '../utils/communication.js';
46
46
  import { extractBase64Image, resizeAndTruncateForClaude, } from '../utils/image_utils.js';
@@ -82,7 +82,8 @@ async function resolveAsyncEnums(params) {
82
82
  }
83
83
  async function convertToClaudeTools(tools) {
84
84
  return await Promise.all(tools.map(async (tool) => {
85
- if (tool.definition.function.name === 'claude_web_search' || tool.definition.function.name === 'web_search') {
85
+ if (tool.definition.function.name === 'claude_web_search' ||
86
+ tool.definition.function.name === 'web_search') {
86
87
  return {
87
88
  type: 'web_search_20250305',
88
89
  name: 'web_search',
@@ -443,7 +444,7 @@ export class ClaudeProvider {
443
444
  }
444
445
  return false;
445
446
  }
446
- async *createResponseStream(model, messages, agent) {
447
+ async *createResponseStream(messages, model, agent) {
447
448
  let totalInputTokens = 0;
448
449
  let totalOutputTokens = 0;
449
450
  let totalCacheCreationInputTokens = 0;
@@ -463,7 +464,12 @@ export class ClaudeProvider {
463
464
  case 'monologue':
464
465
  case 'reasoning':
465
466
  case 'code':
466
- if (model === 'claude-3-7-sonnet-latest') {
467
+ if ([
468
+ 'claude-3-7-sonnet-latest',
469
+ 'claude-3-7-sonnet-20250219',
470
+ 'claude-sonnet-4-20250514',
471
+ 'claude-opus-4-20250514',
472
+ ].includes(model)) {
467
473
  thinking = {
468
474
  type: 'enabled',
469
475
  budget_tokens: 16000,
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../model_providers/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../model_providers/claude.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deepseek.d.ts","sourceRoot":"","sources":["../../model_providers/deepseek.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAiD5B,qBAAa,gBAAiB,SAAQ,UAAU;;IAgB5C,iBAAiB,CACb,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC,GAC3E,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC;CAwJjE;AAGD,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
1
+ {"version":3,"file":"deepseek.d.ts","sourceRoot":"","sources":["../../model_providers/deepseek.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAiD5B,qBAAa,gBAAiB,SAAQ,UAAU;;IAgB5C,iBAAiB,CACb,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC,GAC3E,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC;CAuJjE;AAGD,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"deepseek.js","sourceRoot":"","sources":["../../model_providers/deepseek.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deepseek.js","sourceRoot":"","sources":["../../model_providers/deepseek.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  import { EmbedOpts } from './model_provider.js';
2
- import { ModelProvider, EnsembleStreamEvent, ResponseInput, EnsembleAgent, ImageGenerationOpts, ImageGenerationResult } from '../types.js';
2
+ import { ModelProvider, ProviderStreamEvent, ResponseInput, AgentDefinition, ImageGenerationOpts } from '../types/types.js';
3
3
  export declare class GeminiProvider implements ModelProvider {
4
4
  private _client?;
5
5
  private apiKey?;
6
6
  constructor(apiKey?: string);
7
7
  private get client();
8
- createEmbedding(modelId: string, input: string | string[], opts?: EmbedOpts): Promise<number[] | number[][]>;
8
+ createEmbedding(input: string | string[], model: string, opts?: EmbedOpts): Promise<number[] | number[][]>;
9
9
  private retryStreamOnIncompleteJson;
10
- createResponseStream(model: string, messages: ResponseInput, agent: EnsembleAgent): AsyncGenerator<EnsembleStreamEvent>;
11
- generateImage(prompt: string, opts?: ImageGenerationOpts): Promise<ImageGenerationResult>;
10
+ createResponseStream(messages: ResponseInput, model: string, agent: AgentDefinition): AsyncGenerator<ProviderStreamEvent>;
11
+ createImage(prompt: string, model?: string, opts?: ImageGenerationOpts): Promise<string[]>;
12
12
  private getImageCost;
13
13
  }
14
14
  export declare const geminiProvider: GeminiProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../model_providers/gemini.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EACH,aAAa,EAGb,mBAAmB,EAEnB,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,qBAAqB,EACxB,MAAM,aAAa,CAAC;AAybrB,qBAAa,cAAe,YAAW,aAAa;IAChD,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,MAAM,CAAC,EAAE,MAAM;IAQ3B,OAAO,KAAK,MAAM,GAajB;IASK,eAAe,CACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EACxB,IAAI,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC;YA+KlB,2BAA2B;IAuCnC,oBAAoB,CACvB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,aAAa,GACrB,cAAc,CAAC,mBAAmB,CAAC;IA6ahC,aAAa,CACf,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,qBAAqB,CAAC;IA+EjC,OAAO,CAAC,YAAY;CAYvB;AAGD,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
1
+ {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../model_providers/gemini.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EACH,aAAa,EAGb,mBAAmB,EAEnB,aAAa,EACb,eAAe,EACf,mBAAmB,EACtB,MAAM,mBAAmB,CAAC;AA0c3B,qBAAa,cAAe,YAAW,aAAa;IAChD,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,MAAM,CAAC,EAAE,MAAM;IAQ3B,OAAO,KAAK,MAAM,GAajB;IASK,eAAe,CACjB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EACxB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC;YA+KlB,2BAA2B;IAuCnC,oBAAoB,CACvB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,GACvB,cAAc,CAAC,mBAAmB,CAAC;IA8ahC,WAAW,CACb,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,EAAE,CAAC;IAyEpB,OAAO,CAAC,YAAY;CAWvB;AAGD,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { GoogleGenAI, Type, FunctionCallingConfigMode, } from '@google/genai';
2
2
  import { v4 as uuidv4 } from 'uuid';
3
- import { costTracker } from '../cost_tracker.js';
3
+ import { costTracker } from '../index.js';
4
4
  import { log_llm_error, log_llm_request, log_llm_response, } from '../utils/llm_logger.js';
5
5
  import { isPaused } from '../utils/communication.js';
6
6
  import { extractBase64Image, resizeAndTruncateForGemini, } from '../utils/image_utils.js';
@@ -25,7 +25,7 @@ function convertParameterToGeminiFormat(param) {
25
25
  break;
26
26
  case 'null':
27
27
  type = Type.STRING;
28
- console.warn(`Mapping 'null' type to STRING`);
28
+ console.warn("Mapping 'null' type to STRING");
29
29
  break;
30
30
  default:
31
31
  console.warn(`Unsupported parameter type '${param.type}'. Defaulting to STRING.`);
@@ -54,10 +54,15 @@ function convertParameterToGeminiFormat(param) {
54
54
  }
55
55
  else if (itemType) {
56
56
  result.items = {
57
- type: itemType === 'string' ? Type.STRING :
58
- itemType === 'number' ? Type.NUMBER :
59
- itemType === 'boolean' ? Type.BOOLEAN :
60
- itemType === 'null' ? Type.STRING : Type.STRING
57
+ type: itemType === 'string'
58
+ ? Type.STRING
59
+ : itemType === 'number'
60
+ ? Type.NUMBER
61
+ : itemType === 'boolean'
62
+ ? Type.BOOLEAN
63
+ : itemType === 'null'
64
+ ? Type.STRING
65
+ : Type.STRING,
61
66
  };
62
67
  if (itemEnum) {
63
68
  if (typeof itemEnum === 'function') {
@@ -80,7 +85,8 @@ function convertParameterToGeminiFormat(param) {
80
85
  if (param.properties && typeof param.properties === 'object') {
81
86
  result.properties = {};
82
87
  for (const [propName, propSchema] of Object.entries(param.properties)) {
83
- result.properties[propName] = convertParameterToGeminiFormat(propSchema);
88
+ result.properties[propName] =
89
+ convertParameterToGeminiFormat(propSchema);
84
90
  }
85
91
  }
86
92
  else {
@@ -133,9 +139,9 @@ async function resolveAsyncEnums(params) {
133
139
  return resolved;
134
140
  }
135
141
  async function convertToGeminiFunctionDeclarations(tools) {
136
- const declarations = await Promise.all(tools
137
- .map(async (tool) => {
138
- if (tool.definition.function.name === 'google_web_search' || tool.definition.function.name === 'web_search') {
142
+ const declarations = await Promise.all(tools.map(async (tool) => {
143
+ if (tool.definition.function.name === 'google_web_search' ||
144
+ tool.definition.function.name === 'web_search') {
139
145
  console.log('[Gemini] Enabling Google Search grounding');
140
146
  return null;
141
147
  }
@@ -348,11 +354,11 @@ export class GeminiProvider {
348
354
  }
349
355
  return this._client;
350
356
  }
351
- async createEmbedding(modelId, input, opts) {
357
+ async createEmbedding(input, model, opts) {
352
358
  try {
353
- let actualModelId = modelId.startsWith('gemini/')
354
- ? modelId.substring(7)
355
- : modelId;
359
+ let actualModelId = model.startsWith('gemini/')
360
+ ? model.substring(7)
361
+ : model;
356
362
  let thinkingConfig = null;
357
363
  for (const [suffix, budget] of Object.entries(THINKING_BUDGET_CONFIGS)) {
358
364
  if (actualModelId.endsWith(suffix)) {
@@ -402,7 +408,7 @@ export class GeminiProvider {
402
408
  }
403
409
  }
404
410
  costTracker.addUsage({
405
- model: modelId,
411
+ model: actualModelId,
406
412
  input_tokens: estimatedTokens,
407
413
  output_tokens: 0,
408
414
  metadata: {
@@ -472,8 +478,8 @@ export class GeminiProvider {
472
478
  }
473
479
  }
474
480
  }
475
- async *createResponseStream(model, messages, agent) {
476
- const tools = agent
481
+ async *createResponseStream(messages, model, agent) {
482
+ const tools = agent.getTools
477
483
  ? await agent.getTools()
478
484
  : [];
479
485
  const settings = agent?.modelSettings;
@@ -558,7 +564,8 @@ export class GeminiProvider {
558
564
  }
559
565
  let hasGoogleWebSearch = false;
560
566
  if (tools && tools.length > 0) {
561
- hasGoogleWebSearch = tools.some(tool => tool.definition.function.name === 'google_web_search' || tool.definition.function.name === 'web_search');
567
+ hasGoogleWebSearch = tools.some(tool => tool.definition.function.name === 'google_web_search' ||
568
+ tool.definition.function.name === 'web_search');
562
569
  const functionDeclarations = await convertToGeminiFunctionDeclarations(tools);
563
570
  let allowedFunctionNames = [];
564
571
  if (functionDeclarations.length > 0) {
@@ -773,9 +780,9 @@ export class GeminiProvider {
773
780
  log_llm_response(requestId, chunks);
774
781
  }
775
782
  }
776
- async generateImage(prompt, opts) {
783
+ async createImage(prompt, model, opts) {
777
784
  try {
778
- const model = opts?.model || 'imagen-3.0-generate-002';
785
+ model = model || 'imagen-3.0-generate-002';
779
786
  const numberOfImages = opts?.n || 1;
780
787
  let aspectRatio = '1:1';
781
788
  if (opts?.size === 'landscape') {
@@ -795,8 +802,8 @@ export class GeminiProvider {
795
802
  },
796
803
  });
797
804
  const images = [];
798
- let totalCost = 0;
799
- if (response.generatedImages && response.generatedImages.length > 0) {
805
+ if (response.generatedImages &&
806
+ response.generatedImages.length > 0) {
800
807
  for (const generatedImage of response.generatedImages) {
801
808
  if (generatedImage.image?.imageBytes) {
802
809
  const base64Image = `data:image/png;base64,${generatedImage.image.imageBytes}`;
@@ -804,27 +811,19 @@ export class GeminiProvider {
804
811
  }
805
812
  }
806
813
  const perImageCost = this.getImageCost(model);
807
- totalCost = perImageCost * images.length;
808
814
  costTracker.addUsage({
809
815
  model,
810
816
  image_count: images.length,
811
817
  metadata: {
812
818
  aspect_ratio: aspectRatio,
813
819
  cost_per_image: perImageCost,
814
- }
820
+ },
815
821
  });
816
822
  }
817
823
  if (images.length === 0) {
818
824
  throw new Error('No images returned from Gemini/Imagen');
819
825
  }
820
- return {
821
- images,
822
- model,
823
- usage: {
824
- prompt_tokens: Math.ceil(prompt.length / 4),
825
- total_cost: totalCost,
826
- }
827
- };
826
+ return images;
828
827
  }
829
828
  catch (error) {
830
829
  console.error('[Gemini] Error generating image:', error);
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../model_providers/gemini.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../model_providers/gemini.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"grok.d.ts","sourceRoot":"","sources":["../../model_providers/grok.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAK5B,qBAAa,YAAa,SAAQ,UAAU;;IAKxC,iBAAiB,CACb,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC,GAC3E,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC;CAoBjE;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}
1
+ {"version":3,"file":"grok.d.ts","sourceRoot":"","sources":["../../model_providers/grok.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAK5B,qBAAa,YAAa,SAAQ,UAAU;;IAKxC,iBAAiB,CACb,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC,GAC3E,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,mCAAmC;CAmBjE;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"grok.js","sourceRoot":"","sources":["../../model_providers/grok.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM9C,MAAM,OAAO,YAAa,SAAQ,UAAU;IACxC;QACI,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;IACjE,CAAC;IAED,iBAAiB,CACb,aAA0E;QAE1E,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,SAAS,CACvC,CAAC,CAAC,EAAE,CACA,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU;gBACrB,CAAS,CAAC,QAAQ,EAAE,IAAI,KAAK,YAAY,CAAC;gBAC3C,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU;oBACrB,CAAS,CAAC,QAAQ,EAAE,IAAI,KAAK,iBAAiB,CAAC,CACvD,CAAC;YACF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;gBACf,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpC,aAAqB,CAAC,iBAAiB,GAAG;oBACvC,IAAI,EAAE,IAAI;oBACV,gBAAgB,EAAE,IAAI;iBACzB,CAAC;YACN,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC;CAEJ;AAGD,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"grok.js","sourceRoot":"","sources":["../../model_providers/grok.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM9C,MAAM,OAAO,YAAa,SAAQ,UAAU;IACxC;QACI,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;IACjE,CAAC;IAED,iBAAiB,CACb,aAA0E;QAE1E,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,SAAS,CACvC,CAAC,CAAC,EAAE,CACA,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU;gBACjB,CAAS,CAAC,QAAQ,EAAE,IAAI,KAAK,YAAY,CAAC;gBAC/C,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU;oBACjB,CAAS,CAAC,QAAQ,EAAE,IAAI,KAAK,iBAAiB,CAAC,CAC3D,CAAC;YACF,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;gBACf,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpC,aAAqB,CAAC,iBAAiB,GAAG;oBACvC,IAAI,EAAE,IAAI;oBACV,gBAAgB,EAAE,IAAI;iBACzB,CAAC;YACN,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC;CACJ;AAGD,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC"}
@@ -1,12 +1,11 @@
1
- import { ModelProvider as BaseModelProvider, EmbedOpts, ImageGenerationOpts, ImageGenerationResult } from '../types.js';
1
+ import { ModelProvider as BaseModelProvider, EmbedOpts, AgentDefinition } from '../types/types.js';
2
2
  export type { EmbedOpts };
3
3
  export interface ModelProvider extends BaseModelProvider {
4
- createEmbedding?(modelId: string, input: string | string[], opts?: EmbedOpts): Promise<number[] | number[][]>;
5
- generateImage?(prompt: string, opts?: ImageGenerationOpts): Promise<ImageGenerationResult>;
6
4
  }
7
- import { ModelClassID, ModelProviderID } from '../model_data.js';
5
+ import { ModelClassID, ModelProviderID } from '../data/model_data.js';
8
6
  export declare function isProviderKeyValid(provider: ModelProviderID): boolean;
9
7
  export declare function getProviderFromModel(model: string): ModelProviderID;
8
+ export declare function getModelFromAgent(agent: AgentDefinition, defaultClass?: ModelClassID): Promise<string>;
10
9
  export declare function getModelFromClass(modelClass?: ModelClassID): Promise<string>;
11
10
  export declare function getModelProvider(model?: string): ModelProvider;
12
11
  //# sourceMappingURL=model_provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model_provider.d.ts","sourceRoot":"","sources":["../../model_providers/model_provider.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,SAAS,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGxH,YAAY,EAAE,SAAS,EAAE,CAAC;AAG1B,MAAM,WAAW,aAAc,SAAQ,iBAAiB;IAQpD,eAAe,CAAC,CACZ,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EACxB,IAAI,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC;IAQlC,aAAa,CAAC,CACV,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,qBAAqB,CAAC,CAAC;CACrC;AAYD,OAAO,EAAiB,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAkChF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAqCrE;AAKD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAgCnE;AAKD,wBAAsB,iBAAiB,CACnC,UAAU,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,MAAM,CAAC,CAiHjB;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,CA+B9D"}
1
+ {"version":3,"file":"model_provider.d.ts","sourceRoot":"","sources":["../../model_providers/model_provider.ts"],"names":[],"mappings":"AAOA,OAAO,EACH,aAAa,IAAI,iBAAiB,EAClC,SAAS,EACT,eAAe,EAClB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,SAAS,EAAE,CAAC;AAG1B,MAAM,WAAW,aAAc,SAAQ,iBAAiB;CAAG;AAiB3D,OAAO,EAEH,YAAY,EACZ,eAAe,EAClB,MAAM,uBAAuB,CAAC;AAkC/B,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAsCrE;AAKD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAgCnE;AAED,wBAAsB,iBAAiB,CACnC,KAAK,EAAE,eAAe,EACtB,YAAY,CAAC,EAAE,YAAY,GAC5B,OAAO,CAAC,MAAM,CAAC,CAKjB;AAKD,wBAAsB,iBAAiB,CACnC,UAAU,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,MAAM,CAAC,CAoHjB;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,CAiC9D"}
@@ -1,4 +1,4 @@
1
- import { isExternalModel, getExternalModel, getExternalProvider, getModelClassOverride } from '../external_models.js';
1
+ import { isExternalModel, getExternalModel, getExternalProvider, getModelClassOverride, } from '../utils/external_models.js';
2
2
  import { openaiProvider } from './openai.js';
3
3
  import { claudeProvider } from './claude.js';
4
4
  import { geminiProvider } from './gemini.js';
@@ -6,7 +6,7 @@ import { grokProvider } from './grok.js';
6
6
  import { deepSeekProvider } from './deepseek.js';
7
7
  import { testProvider } from './test_provider.js';
8
8
  import { openRouterProvider } from './openrouter.js';
9
- import { MODEL_CLASSES } from '../model_data.js';
9
+ import { MODEL_CLASSES, } from '../data/model_data.js';
10
10
  const MODEL_PROVIDER_MAP = {
11
11
  'gpt-': openaiProvider,
12
12
  o1: openaiProvider,
@@ -43,12 +43,13 @@ export function isProviderKeyValid(provider) {
43
43
  return !!process.env.OPENROUTER_API_KEY;
44
44
  case 'test':
45
45
  return true;
46
- default:
46
+ default: {
47
47
  const externalProvider = getExternalProvider(provider);
48
48
  if (externalProvider) {
49
49
  return true;
50
50
  }
51
51
  return false;
52
+ }
52
53
  }
53
54
  }
54
55
  export function getProviderFromModel(model) {
@@ -85,6 +86,10 @@ export function getProviderFromModel(model) {
85
86
  }
86
87
  return 'openrouter';
87
88
  }
89
+ export async function getModelFromAgent(agent, defaultClass) {
90
+ return (agent.model ||
91
+ (await getModelFromClass(agent.modelClass || defaultClass)));
92
+ }
88
93
  export async function getModelFromClass(modelClass) {
89
94
  const { quotaTracker } = await import('../utils/quota_tracker.js');
90
95
  const modelClassStr = modelClass;
@@ -97,11 +102,12 @@ export async function getModelFromClass(modelClass) {
97
102
  if (override) {
98
103
  modelClassConfig = {
99
104
  ...modelClassConfig,
100
- ...override
105
+ ...override,
101
106
  };
102
107
  }
103
108
  let models = [...(override?.models || modelClassConfig.models)];
104
- const shouldRandomize = override?.random ?? ('random' in modelClassConfig && modelClassConfig.random);
109
+ const shouldRandomize = override?.random ??
110
+ ('random' in modelClassConfig && modelClassConfig.random);
105
111
  if (shouldRandomize) {
106
112
  models = models.sort(() => Math.random() - 0.5);
107
113
  }