@stackbilt/llm-providers 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +112 -85
  3. package/dist/errors.d.ts +18 -1
  4. package/dist/errors.d.ts.map +1 -1
  5. package/dist/errors.js +12 -4
  6. package/dist/errors.js.map +1 -1
  7. package/dist/factory.d.ts +62 -4
  8. package/dist/factory.d.ts.map +1 -1
  9. package/dist/factory.js +630 -92
  10. package/dist/factory.js.map +1 -1
  11. package/dist/image/index.d.ts +5 -0
  12. package/dist/image/index.d.ts.map +1 -0
  13. package/dist/image/index.js +3 -0
  14. package/dist/image/index.js.map +1 -0
  15. package/dist/image/provider.d.ts +44 -0
  16. package/dist/image/provider.d.ts.map +1 -0
  17. package/dist/image/provider.js +182 -0
  18. package/dist/image/provider.js.map +1 -0
  19. package/dist/image/types.d.ts +45 -0
  20. package/dist/image/types.d.ts.map +1 -0
  21. package/dist/image/types.js +83 -0
  22. package/dist/image/types.js.map +1 -0
  23. package/dist/index.d.ts +46 -12
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +73 -14
  26. package/dist/index.js.map +1 -1
  27. package/dist/providers/anthropic.d.ts +5 -2
  28. package/dist/providers/anthropic.d.ts.map +1 -1
  29. package/dist/providers/anthropic.js +118 -43
  30. package/dist/providers/anthropic.js.map +1 -1
  31. package/dist/providers/base.d.ts +18 -2
  32. package/dist/providers/base.d.ts.map +1 -1
  33. package/dist/providers/base.js +107 -5
  34. package/dist/providers/base.js.map +1 -1
  35. package/dist/providers/cerebras.d.ts +0 -0
  36. package/dist/providers/cerebras.d.ts.map +1 -1
  37. package/dist/providers/cerebras.js +21 -13
  38. package/dist/providers/cerebras.js.map +1 -1
  39. package/dist/providers/cloudflare.d.ts +0 -0
  40. package/dist/providers/cloudflare.d.ts.map +1 -1
  41. package/dist/providers/cloudflare.js +12 -8
  42. package/dist/providers/cloudflare.js.map +1 -1
  43. package/dist/providers/groq.d.ts +2 -1
  44. package/dist/providers/groq.d.ts.map +1 -1
  45. package/dist/providers/groq.js +95 -15
  46. package/dist/providers/groq.js.map +1 -1
  47. package/dist/providers/openai.d.ts +2 -0
  48. package/dist/providers/openai.d.ts.map +1 -1
  49. package/dist/providers/openai.js +56 -24
  50. package/dist/providers/openai.js.map +1 -1
  51. package/dist/types.d.ts +114 -4
  52. package/dist/types.d.ts.map +1 -1
  53. package/dist/types.js +0 -0
  54. package/dist/types.js.map +0 -0
  55. package/dist/utils/circuit-breaker.d.ts +5 -2
  56. package/dist/utils/circuit-breaker.d.ts.map +1 -1
  57. package/dist/utils/circuit-breaker.js +18 -13
  58. package/dist/utils/circuit-breaker.js.map +1 -1
  59. package/dist/utils/cost-tracker.d.ts +9 -2
  60. package/dist/utils/cost-tracker.d.ts.map +1 -1
  61. package/dist/utils/cost-tracker.js +20 -9
  62. package/dist/utils/cost-tracker.js.map +1 -1
  63. package/dist/utils/credit-ledger.d.ts +3 -0
  64. package/dist/utils/credit-ledger.d.ts.map +1 -1
  65. package/dist/utils/credit-ledger.js +5 -2
  66. package/dist/utils/credit-ledger.js.map +1 -1
  67. package/dist/utils/exhaustion.d.ts +38 -0
  68. package/dist/utils/exhaustion.d.ts.map +1 -0
  69. package/dist/utils/exhaustion.js +74 -0
  70. package/dist/utils/exhaustion.js.map +1 -0
  71. package/dist/utils/hooks.d.ts +113 -0
  72. package/dist/utils/hooks.d.ts.map +1 -0
  73. package/dist/utils/hooks.js +44 -0
  74. package/dist/utils/hooks.js.map +1 -0
  75. package/dist/utils/latency-histogram.d.ts +38 -0
  76. package/dist/utils/latency-histogram.d.ts.map +1 -0
  77. package/dist/utils/latency-histogram.js +81 -0
  78. package/dist/utils/latency-histogram.js.map +1 -0
  79. package/dist/utils/logger.d.ts +18 -0
  80. package/dist/utils/logger.d.ts.map +1 -0
  81. package/dist/utils/logger.js +22 -0
  82. package/dist/utils/logger.js.map +1 -0
  83. package/dist/utils/retry.d.ts +4 -2
  84. package/dist/utils/retry.d.ts.map +1 -1
  85. package/dist/utils/retry.js +12 -8
  86. package/dist/utils/retry.js.map +1 -1
  87. package/package.json +2 -2
@@ -3,15 +3,21 @@
3
3
  * Implementation for Groq fast inference models (OpenAI-compatible API)
4
4
  */
5
5
  import { BaseProvider } from './base';
6
- import { LLMErrorFactory, AuthenticationError } from '../errors';
6
+ import { LLMErrorFactory, AuthenticationError, ConfigurationError } from '../errors';
7
+ // Models that support tool calling
8
+ const TOOL_CAPABLE_MODELS = new Set([
9
+ 'openai/gpt-oss-120b',
10
+ 'llama-3.3-70b-versatile',
11
+ ]);
7
12
  export class GroqProvider extends BaseProvider {
8
13
  name = 'groq';
9
14
  models = [
10
15
  'llama-3.3-70b-versatile',
11
- 'llama-3.1-8b-instant'
16
+ 'llama-3.1-8b-instant',
17
+ 'openai/gpt-oss-120b',
12
18
  ];
13
19
  supportsStreaming = true;
14
- supportsTools = false;
20
+ supportsTools = true;
15
21
  supportsBatching = false;
16
22
  apiKey;
17
23
  baseUrl;
@@ -29,7 +35,7 @@ export class GroqProvider extends BaseProvider {
29
35
  try {
30
36
  const response = await this.executeWithResiliency(async () => {
31
37
  const groqRequest = this.formatRequest(request);
32
- const httpResponse = await this.makeGroqRequest('/chat/completions', groqRequest);
38
+ const httpResponse = await this.makeGroqRequest('/chat/completions', groqRequest, 'POST', request);
33
39
  if (!httpResponse.ok) {
34
40
  throw await LLMErrorFactory.fromFetchResponse('groq', httpResponse);
35
41
  }
@@ -71,12 +77,20 @@ export class GroqProvider extends BaseProvider {
71
77
  return false;
72
78
  }
73
79
  }
80
+ async getProviderBalance() {
81
+ return {
82
+ provider: this.name,
83
+ status: 'unavailable',
84
+ source: 'not_supported',
85
+ message: 'Groq does not expose a public billing or credit-balance API; use CreditLedger reporting for local quota state.'
86
+ };
87
+ }
74
88
  getModelCapabilities() {
75
89
  return {
76
90
  'llama-3.3-70b-versatile': {
77
91
  maxContextLength: 128000,
78
92
  supportsStreaming: true,
79
- supportsTools: false,
93
+ supportsTools: true,
80
94
  supportsBatching: false,
81
95
  inputTokenCost: 0.00059, // $0.59 per 1M tokens
82
96
  outputTokenCost: 0.00079, // $0.79 per 1M tokens
@@ -90,6 +104,15 @@ export class GroqProvider extends BaseProvider {
90
104
  inputTokenCost: 0.00005, // $0.05 per 1M tokens
91
105
  outputTokenCost: 0.00008, // $0.08 per 1M tokens
92
106
  description: 'Llama 3.1 8B Instant - Ultra-fast inference on Groq'
107
+ },
108
+ 'openai/gpt-oss-120b': {
109
+ maxContextLength: 128000,
110
+ supportsStreaming: true,
111
+ supportsTools: true,
112
+ supportsBatching: false,
113
+ inputTokenCost: 0.00015, // $0.15 per 1M tokens (cached: $0.075/MTok)
114
+ outputTokenCost: 0.0006, // $0.60 per 1M tokens
115
+ description: 'GPT-OSS 120B - OpenAI-compatible tool calling on Groq'
93
116
  }
94
117
  };
95
118
  }
@@ -102,7 +125,7 @@ export class GroqProvider extends BaseProvider {
102
125
  return new ReadableStream({
103
126
  start: async (controller) => {
104
127
  try {
105
- const response = await this.makeGroqRequest('/chat/completions', groqRequest);
128
+ const response = await this.makeGroqRequest('/chat/completions', groqRequest, 'POST', request);
106
129
  if (!response.ok) {
107
130
  throw await LLMErrorFactory.fromFetchResponse('groq', response);
108
131
  }
@@ -133,8 +156,8 @@ export class GroqProvider extends BaseProvider {
133
156
  controller.enqueue(content);
134
157
  }
135
158
  }
136
- catch (error) {
137
- console.warn('Failed to parse SSE data:', error);
159
+ catch {
160
+ // Malformed SSE chunk — skip silently
138
161
  }
139
162
  }
140
163
  }
@@ -147,10 +170,11 @@ export class GroqProvider extends BaseProvider {
147
170
  }
148
171
  });
149
172
  }
150
- async makeGroqRequest(endpoint, body, method = 'POST') {
173
+ async makeGroqRequest(endpoint, body, method = 'POST', request) {
151
174
  const headers = {
152
175
  'Authorization': `Bearer ${this.apiKey}`,
153
- 'Content-Type': 'application/json'
176
+ 'Content-Type': 'application/json',
177
+ ...this.getAIGatewayHeaders(request)
154
178
  };
155
179
  const options = {
156
180
  method,
@@ -163,32 +187,77 @@ export class GroqProvider extends BaseProvider {
163
187
  }
164
188
  formatRequest(request) {
165
189
  const messages = [];
190
+ const model = request.model || 'llama-3.3-70b-versatile';
191
+ const usesTools = (request.tools?.length ?? 0) > 0 ||
192
+ request.messages.some(message => (message.toolCalls?.length ?? 0) > 0 || (message.toolResults?.length ?? 0) > 0);
193
+ const jsonMode = request.response_format?.type === 'json_object';
194
+ const jsonInstruction = '\n\nYou must respond with valid JSON only. No markdown fences, no commentary, no text outside the JSON.';
195
+ if (usesTools && !TOOL_CAPABLE_MODELS.has(model)) {
196
+ throw new ConfigurationError(this.name, `Model '${model}' does not support tool calling on Groq`);
197
+ }
166
198
  if (request.systemPrompt) {
167
199
  messages.push({
168
200
  role: 'system',
169
- content: request.systemPrompt
201
+ content: jsonMode ? request.systemPrompt + jsonInstruction : request.systemPrompt
202
+ });
203
+ }
204
+ else if (jsonMode) {
205
+ messages.push({
206
+ role: 'system',
207
+ content: jsonInstruction.trimStart()
170
208
  });
171
209
  }
172
210
  for (const message of request.messages) {
173
211
  if (message.role === 'system' && request.systemPrompt) {
174
212
  continue;
175
213
  }
176
- messages.push({
214
+ const msg = {
177
215
  role: message.role,
178
216
  content: message.content
179
- });
217
+ };
218
+ // Carry tool calls for multi-turn tool conversations
219
+ if (message.toolCalls) {
220
+ msg.tool_calls = message.toolCalls.map(tc => ({
221
+ id: tc.id,
222
+ type: 'function',
223
+ function: { name: tc.function.name, arguments: tc.function.arguments }
224
+ }));
225
+ }
226
+ if (message.toolResults) {
227
+ // Tool results come as separate messages in OpenAI format
228
+ for (const tr of message.toolResults) {
229
+ messages.push({ role: 'tool', content: tr.output, tool_call_id: tr.id });
230
+ }
231
+ continue; // Don't push the original message — tool results replace it
232
+ }
233
+ messages.push(msg);
180
234
  }
181
235
  const groqRequest = {
182
- model: request.model || 'llama-3.3-70b-versatile',
236
+ model,
183
237
  messages,
184
238
  temperature: request.temperature,
185
239
  max_tokens: request.maxTokens,
186
- stream: request.stream
240
+ stream: request.stream,
241
+ seed: request.seed
187
242
  };
188
243
  // Pass through response_format if provided
189
244
  if (request.response_format) {
190
245
  groqRequest.response_format = request.response_format;
191
246
  }
247
+ // Add tools if provided. Unsupported tool models are rejected above.
248
+ if (request.tools && request.tools.length > 0) {
249
+ groqRequest.tools = request.tools.map(t => ({
250
+ type: 'function',
251
+ function: {
252
+ name: t.function.name,
253
+ description: t.function.description,
254
+ parameters: t.function.parameters,
255
+ }
256
+ }));
257
+ if (request.toolChoice) {
258
+ groqRequest.tool_choice = request.toolChoice;
259
+ }
260
+ }
192
261
  return groqRequest;
193
262
  }
194
263
  formatResponse(data, responseTime) {
@@ -203,6 +272,16 @@ export class GroqProvider extends BaseProvider {
203
272
  totalTokens: data.usage.total_tokens,
204
273
  cost: this.calculateCost(data.usage.prompt_tokens, data.usage.completion_tokens, data.model)
205
274
  };
275
+ // Extract tool calls if present (validated at provider boundary)
276
+ let toolCalls;
277
+ if (choice.message.tool_calls && choice.message.tool_calls.length > 0) {
278
+ const raw = choice.message.tool_calls.map(tc => ({
279
+ id: tc.id,
280
+ type: 'function',
281
+ function: { name: tc.function.name, arguments: tc.function.arguments }
282
+ }));
283
+ toolCalls = this.validateToolCalls(raw);
284
+ }
206
285
  return {
207
286
  id: data.id,
208
287
  message: content,
@@ -212,6 +291,7 @@ export class GroqProvider extends BaseProvider {
212
291
  provider: this.name,
213
292
  responseTime,
214
293
  finishReason: choice.finish_reason,
294
+ toolCalls,
215
295
  metadata: {
216
296
  systemFingerprint: data.system_fingerprint,
217
297
  created: data.created
@@ -1 +1 @@
1
- {"version":3,"file":"groq.js","sourceRoot":"","sources":["../../src/providers/groq.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"groq.js","sourceRoot":"","sources":["../../src/providers/groq.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export declare class OpenAIProvider extends BaseProvider {
10
10
  supportsStreaming: boolean;
11
11
  supportsTools: boolean;
12
12
  supportsBatching: boolean;
13
+ supportsVision: boolean;
13
14
  private apiKey;
14
15
  private baseUrl;
15
16
  private organization?;
@@ -23,6 +24,7 @@ export declare class OpenAIProvider extends BaseProvider {
23
24
  protected getModelCapabilities(): Record<string, ModelCapabilities>;
24
25
  private makeOpenAIRequest;
25
26
  private formatRequest;
27
+ private formatMessageContent;
26
28
  private formatResponse;
27
29
  /**
28
30
  * Stream response support
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAkDtC,qBAAa,cAAe,SAAQ,YAAY;IAC9C,IAAI,SAAY;IAChB,MAAM,WAQJ;IACF,iBAAiB,UAAQ;IACzB,aAAa,UAAQ;IACrB,gBAAgB,UAAQ;IAExB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,OAAO,CAAC,CAAS;gBAEb,MAAM,EAAE,YAAY;IAa1B,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IA8BjE,cAAc,IAAI,OAAO;IAIzB,SAAS,IAAI,MAAM,EAAE;IAIrB,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM;IAenC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IASrC,SAAS,CAAC,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC;YA2DrD,iBAAiB;IA8B/B,OAAO,CAAC,aAAa;IA+DrB,OAAO,CAAC,cAAc;IAgDtB;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IA8D1E;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CAwBnE"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAkB,MAAM,UAAU,CAAC;AACzG,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AA0EtC,qBAAa,cAAe,SAAQ,YAAY;IAC9C,IAAI,SAAY;IAChB,MAAM,WAQJ;IACF,iBAAiB,UAAQ;IACzB,aAAa,UAAQ;IACrB,gBAAgB,UAAS;IACzB,cAAc,UAAQ;IAEtB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAC,CAAS;IAC9B,OAAO,CAAC,OAAO,CAAC,CAAS;gBAEb,MAAM,EAAE,YAAY;IAa1B,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IA8BjE,cAAc,IAAI,OAAO;IAIzB,SAAS,IAAI,MAAM,EAAE;IAIrB,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM;IAenC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IASrC,SAAS,CAAC,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC;YA6DrD,iBAAiB;IAgC/B,OAAO,CAAC,aAAa;IA6ErB,OAAO,CAAC,oBAAoB;IAmB5B,OAAO,CAAC,cAAc;IAiDtB;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IA8D1E;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CAwBnE"}
@@ -17,7 +17,8 @@ export class OpenAIProvider extends BaseProvider {
17
17
  ];
18
18
  supportsStreaming = true;
19
19
  supportsTools = true;
20
- supportsBatching = true;
20
+ supportsBatching = false;
21
+ supportsVision = true;
21
22
  apiKey;
22
23
  baseUrl;
23
24
  organization;
@@ -38,7 +39,7 @@ export class OpenAIProvider extends BaseProvider {
38
39
  try {
39
40
  const response = await this.executeWithResiliency(async () => {
40
41
  const openaiRequest = this.formatRequest(request);
41
- const httpResponse = await this.makeOpenAIRequest('/chat/completions', openaiRequest);
42
+ const httpResponse = await this.makeOpenAIRequest('/chat/completions', openaiRequest, 'POST', request);
42
43
  if (!httpResponse.ok) {
43
44
  throw await LLMErrorFactory.fromFetchResponse('openai', httpResponse);
44
45
  }
@@ -63,7 +64,7 @@ export class OpenAIProvider extends BaseProvider {
63
64
  return [...this.models];
64
65
  }
65
66
  estimateCost(request) {
66
- const model = request.model || 'gpt-3.5-turbo';
67
+ const model = request.model || 'gpt-4o-mini';
67
68
  const capabilities = this.getModelCapabilities()[model];
68
69
  if (!capabilities)
69
70
  return 0;
@@ -87,7 +88,8 @@ export class OpenAIProvider extends BaseProvider {
87
88
  maxContextLength: 128000,
88
89
  supportsStreaming: true,
89
90
  supportsTools: true,
90
- supportsBatching: true,
91
+ supportsVision: true,
92
+ supportsBatching: false,
91
93
  inputTokenCost: 0.005, // $5 per 1M tokens
92
94
  outputTokenCost: 0.015, // $15 per 1M tokens
93
95
  description: 'GPT-4 Omni - Latest multimodal model'
@@ -96,7 +98,8 @@ export class OpenAIProvider extends BaseProvider {
96
98
  maxContextLength: 128000,
97
99
  supportsStreaming: true,
98
100
  supportsTools: true,
99
- supportsBatching: true,
101
+ supportsVision: true,
102
+ supportsBatching: false,
100
103
  inputTokenCost: 0.00015, // $0.15 per 1M tokens
101
104
  outputTokenCost: 0.0006, // $0.60 per 1M tokens
102
105
  description: 'GPT-4 Omni Mini - Cost-effective version'
@@ -105,7 +108,7 @@ export class OpenAIProvider extends BaseProvider {
105
108
  maxContextLength: 128000,
106
109
  supportsStreaming: true,
107
110
  supportsTools: true,
108
- supportsBatching: true,
111
+ supportsBatching: false,
109
112
  inputTokenCost: 0.01, // $10 per 1M tokens
110
113
  outputTokenCost: 0.03, // $30 per 1M tokens
111
114
  description: 'GPT-4 Turbo - High performance model'
@@ -114,7 +117,7 @@ export class OpenAIProvider extends BaseProvider {
114
117
  maxContextLength: 8192,
115
118
  supportsStreaming: true,
116
119
  supportsTools: true,
117
- supportsBatching: true,
120
+ supportsBatching: false,
118
121
  inputTokenCost: 0.03, // $30 per 1M tokens
119
122
  outputTokenCost: 0.06, // $60 per 1M tokens
120
123
  description: 'GPT-4 - Original high-capability model'
@@ -123,7 +126,7 @@ export class OpenAIProvider extends BaseProvider {
123
126
  maxContextLength: 16385,
124
127
  supportsStreaming: true,
125
128
  supportsTools: true,
126
- supportsBatching: true,
129
+ supportsBatching: false,
127
130
  inputTokenCost: 0.0005, // $0.50 per 1M tokens
128
131
  outputTokenCost: 0.0015, // $1.50 per 1M tokens
129
132
  description: 'GPT-3.5 Turbo - Fast and cost-effective'
@@ -132,17 +135,18 @@ export class OpenAIProvider extends BaseProvider {
132
135
  maxContextLength: 16385,
133
136
  supportsStreaming: true,
134
137
  supportsTools: true,
135
- supportsBatching: true,
138
+ supportsBatching: false,
136
139
  inputTokenCost: 0.001, // $1 per 1M tokens
137
140
  outputTokenCost: 0.002, // $2 per 1M tokens
138
141
  description: 'GPT-3.5 Turbo 16k - Extended context'
139
142
  }
140
143
  };
141
144
  }
142
- async makeOpenAIRequest(endpoint, body, method = 'POST') {
145
+ async makeOpenAIRequest(endpoint, body, method = 'POST', request) {
143
146
  const headers = {
144
147
  'Authorization': `Bearer ${this.apiKey}`,
145
- 'Content-Type': 'application/json'
148
+ 'Content-Type': 'application/json',
149
+ ...this.getAIGatewayHeaders(request)
146
150
  };
147
151
  if (this.organization) {
148
152
  headers['OpenAI-Organization'] = this.organization;
@@ -175,7 +179,7 @@ export class OpenAIProvider extends BaseProvider {
175
179
  }
176
180
  const openaiMessage = {
177
181
  role: message.role,
178
- content: message.content
182
+ content: this.formatMessageContent(message.content, message.role === 'user' ? request.images : undefined)
179
183
  };
180
184
  // Add tool calls if present
181
185
  if (message.toolCalls && message.toolCalls.length > 0) {
@@ -186,14 +190,27 @@ export class OpenAIProvider extends BaseProvider {
186
190
  }));
187
191
  openaiMessage.content = null; // Content must be null when tool_calls present
188
192
  }
193
+ if (message.toolResults && message.toolResults.length > 0) {
194
+ for (const toolResult of message.toolResults) {
195
+ messages.push({
196
+ role: 'tool',
197
+ content: toolResult.error
198
+ ? JSON.stringify({ output: toolResult.output, error: toolResult.error })
199
+ : toolResult.output,
200
+ tool_call_id: toolResult.id
201
+ });
202
+ }
203
+ continue;
204
+ }
189
205
  messages.push(openaiMessage);
190
206
  }
191
207
  const openaiRequest = {
192
- model: request.model || 'gpt-3.5-turbo',
208
+ model: request.model || 'gpt-4o-mini',
193
209
  messages,
194
210
  temperature: request.temperature,
195
211
  max_tokens: request.maxTokens,
196
- stream: request.stream
212
+ stream: request.stream,
213
+ seed: request.seed
197
214
  };
198
215
  // Add tools if provided
199
216
  if (request.tools && request.tools.length > 0) {
@@ -211,6 +228,20 @@ export class OpenAIProvider extends BaseProvider {
211
228
  }
212
229
  return openaiRequest;
213
230
  }
231
+ formatMessageContent(text, images) {
232
+ if (!images || images.length === 0) {
233
+ return text;
234
+ }
235
+ return [
236
+ { type: 'text', text },
237
+ ...images.map(image => ({
238
+ type: 'image_url',
239
+ image_url: {
240
+ url: image.url || `data:${image.mimeType};base64,${image.data}`
241
+ }
242
+ }))
243
+ ];
244
+ }
214
245
  formatResponse(data, responseTime) {
215
246
  const choice = data.choices[0];
216
247
  if (!choice) {
@@ -237,13 +268,14 @@ export class OpenAIProvider extends BaseProvider {
237
268
  created: data.created
238
269
  }
239
270
  };
240
- // Add tool calls if present
271
+ // Add tool calls if present (validated at provider boundary)
241
272
  if (choice.message.tool_calls && choice.message.tool_calls.length > 0) {
242
- response.toolCalls = choice.message.tool_calls.map(tc => ({
273
+ const raw = choice.message.tool_calls.map(tc => ({
243
274
  id: tc.id,
244
275
  type: tc.type,
245
276
  function: tc.function
246
277
  }));
278
+ response.toolCalls = this.validateToolCalls(raw);
247
279
  }
248
280
  return response;
249
281
  }
@@ -256,7 +288,7 @@ export class OpenAIProvider extends BaseProvider {
256
288
  return new ReadableStream({
257
289
  start: async (controller) => {
258
290
  try {
259
- const response = await this.makeOpenAIRequest('/chat/completions', openaiRequest);
291
+ const response = await this.makeOpenAIRequest('/chat/completions', openaiRequest, 'POST', request);
260
292
  if (!response.ok) {
261
293
  throw await LLMErrorFactory.fromFetchResponse('openai', response);
262
294
  }
@@ -282,13 +314,13 @@ export class OpenAIProvider extends BaseProvider {
282
314
  }
283
315
  try {
284
316
  const parsed = JSON.parse(data);
285
- const content = parsed.choices?.[0]?.delta?.content;
286
- if (content) {
287
- controller.enqueue(content);
317
+ const sseContent = parsed.choices?.[0]?.delta?.content;
318
+ if (sseContent) {
319
+ controller.enqueue(sseContent);
288
320
  }
289
321
  }
290
- catch (error) {
291
- console.warn('Failed to parse SSE data:', error);
322
+ catch {
323
+ // Malformed SSE chunk — skip silently
292
324
  }
293
325
  }
294
326
  }
@@ -317,8 +349,8 @@ export class OpenAIProvider extends BaseProvider {
317
349
  // Handle individual request failures
318
350
  responses.push({
319
351
  message: '',
320
- usage: { inputTokens: 0, outputTokens: 0, totalTokens: 0 },
321
- model: request.model || 'gpt-3.5-turbo',
352
+ usage: { inputTokens: 0, outputTokens: 0, totalTokens: 0, cost: 0 },
353
+ model: request.model || 'gpt-4o-mini',
322
354
  provider: this.name,
323
355
  responseTime: 0,
324
356
  metadata: { error: error.message }
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EACL,eAAe,EACf,mBAAmB,EAGpB,MAAM,WAAW,CAAC;AA4CnB,MAAM,OAAO,cAAe,SAAQ,YAAY;IAC9C,IAAI,GAAG,QAAQ,CAAC;IAChB,MAAM,GAAG;QACP,QAAQ;QACR,aAAa;QACb,aAAa;QACb,qBAAqB;QACrB,OAAO;QACP,eAAe;QACf,mBAAmB;KACpB,CAAC;IACF,iBAAiB,GAAG,IAAI,CAAC;IACzB,aAAa,GAAG,IAAI,CAAC;IACrB,gBAAgB,GAAG,IAAI,CAAC;IAEhB,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,YAAY,CAAU;IACtB,OAAO,CAAU;IAEzB,YAAY,MAAoB;QAC9B,KAAK,CAAC,MAAM,CAAC,CAAC;QAEd,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,IAAI,mBAAmB,CAAC,QAAQ,EAAE,4BAA4B,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,2BAA2B,CAAC;QAC7D,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAmB;QACxC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAE9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,KAAK,IAAI,EAAE;gBAC3D,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAClD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;gBAEtF,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;oBACrB,MAAM,MAAM,eAAe,CAAC,iBAAiB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACxE,CAAC;gBAED,MAAM,IAAI,GAAmB,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;gBACvD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEnC,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YAC5C,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YACxC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,EAAE,KAAc,CAAC,CAAC;YACpD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,SAAS;QACP,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC;IAED,YAAY,CAAC,OAAmB;QAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,eAAe,CAAC;QAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC,KAAK,CAAC,CAAC;QAExD,IAAI,CAAC,YAAY;YAAE,OAAO,CAAC,CAAC;QAE5B,8CAA8C;QAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACvD,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAC3C,CAAC;QACF,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC;QAE/C,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;YACtE,OAAO,QAAQ,CAAC,EAAE,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAES,oBAAoB;QAC5B,OAAO;YACL,QAAQ,EAAE;gBACR,gBAAgB,EAAE,MAAM;gBACxB,iBAAiB,EAAE,IAAI;gBACvB,aAAa,EAAE,IAAI;gBACnB,gBAAgB,EAAE,IAAI;gBACtB,cAAc,EAAE,KAAK,EAAE,mBAAmB;gBAC1C,eAAe,EAAE,KAAK,EAAE,oBAAoB;gBAC5C,WAAW,EAAE,sCAAsC;aACpD;YACD,aAAa,EAAE;gBACb,gBAAgB,EAAE,MAAM;gBACxB,iBAAiB,EAAE,IAAI;gBACvB,aAAa,EAAE,IAAI;gBACnB,gBAAgB,EAAE,IAAI;gBACtB,cAAc,EAAE,OAAO,EAAE,sBAAsB;gBAC/C,eAAe,EAAE,MAAM,EAAE,sBAAsB;gBAC/C,WAAW,EAAE,0CAA0C;aACxD;YACD,aAAa,EAAE;gBACb,gBAAgB,EAAE,MAAM;gBACxB,iBAAiB,EAAE,IAAI;gBACvB,aAAa,EAAE,IAAI;gBACnB,gBAAgB,EAAE,IAAI;gBACtB,cAAc,EAAE,IAAI,EAAE,oBAAoB;gBAC1C,eAAe,EAAE,IAAI,EAAE,oBAAoB;gBAC3C,WAAW,EAAE,sCAAsC;aACpD;YACD,OAAO,EAAE;gBACP,gBAAgB,EAAE,IAAI;gBACtB,iBAAiB,EAAE,IAAI;gBACvB,aAAa,EAAE,IAAI;gBACnB,gBAAgB,EAAE,IAAI;gBACtB,cAAc,EAAE,IAAI,EAAE,oBAAoB;gBAC1C,eAAe,EAAE,IAAI,EAAE,oBAAoB;gBAC3C,WAAW,EAAE,wCAAwC;aACtD;YACD,eAAe,EAAE;gBACf,gBAAgB,EAAE,KAAK;gBACvB,iBAAiB,EAAE,IAAI;gBACvB,aAAa,EAAE,IAAI;gBACnB,gBAAgB,EAAE,IAAI;gBACtB,cAAc,EAAE,MAAM,EAAE,sBAAsB;gBAC9C,eAAe,EAAE,MAAM,EAAE,sBAAsB;gBAC/C,WAAW,EAAE,yCAAyC;aACvD;YACD,mBAAmB,EAAE;gBACnB,gBAAgB,EAAE,KAAK;gBACvB,iBAAiB,EAAE,IAAI;gBACvB,aAAa,EAAE,IAAI;gBACnB,gBAAgB,EAAE,IAAI;gBACtB,cAAc,EAAE,KAAK,EAAE,mBAAmB;gBAC1C,eAAe,EAAE,KAAK,EAAE,mBAAmB;gBAC3C,WAAW,EAAE,sCAAsC;aACpD;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,QAAgB,EAChB,IAAS,EACT,SAAiB,MAAM;QAEvB,MAAM,OAAO,GAA2B;YACtC,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;YACxC,cAAc,EAAE,kBAAkB;SACnC,CAAC;QAEF,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;QACrD,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QAC3C,CAAC;QAED,MAAM,OAAO,GAAgB;YAC3B,MAAM;YACN,OAAO;SACR,CAAC;QAEF,IAAI,IAAI,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAEO,aAAa,CAAC,OAAmB;QACvC,MAAM,QAAQ,GAAoB,EAAE,CAAC;QAErC,gCAAgC;QAChC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,OAAO,CAAC,YAAY;aAC9B,CAAC,CAAC;QACL,CAAC;QAED,mBAAmB;QACnB,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBACtD,SAAS,CAAC,sCAAsC;YAClD,CAAC;YAED,MAAM,aAAa,GAAkB;gBACnC,IAAI,EAAE,OAAO,CAAC,IAAW;gBACzB,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC;YAEF,4BAA4B;YAC5B,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtD,aAAa,CAAC,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBACtD,EAAE,EAAE,EAAE,CAAC,EAAE;oBACT,IAAI,EAAE,EAAE,CAAC,IAAI;oBACb,QAAQ,EAAE,EAAE,CAAC,QAAQ;iBACtB,CAAC,CAAC,CAAC;gBACJ,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,+CAA+C;YAC/E,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,aAAa,GAAkB;YACnC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,eAAe;YACvC,QAAQ;YACR,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,UAAU,EAAE,OAAO,CAAC,SAAS;YAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC;QAEF,wBAAwB;QACxB,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,aAAa,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC/C,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAC,CAAC;YAEJ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBACvB,aAAa,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;YACjD,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC5B,aAAa,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;QAC1D,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAEO,cAAc,CACpB,IAAoB,EACpB,YAAoB;QAEpB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG;YACZ,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa;YACrC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB;YAC1C,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;YACpC,IAAI,EAAE,IAAI,CAAC,aAAa,CACtB,IAAI,CAAC,KAAK,CAAC,aAAa,EACxB,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAC5B,IAAI,CAAC,KAAK,CACX;SACF,CAAC;QAEF,MAAM,QAAQ,GAAgB;YAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,OAAO,EAAE,OAAO;YAChB,OAAO;YACP,KAAK;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,YAAY;YACZ,YAAY,EAAE,MAAM,CAAC,aAAa;YAClC,QAAQ,EAAE;gBACR,iBAAiB,EAAE,IAAI,CAAC,kBAAkB;gBAC1C,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB;SACF,CAAC;QAEF,4BAA4B;QAC5B,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtE,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACxD,EAAE,EAAE,EAAE,CAAC,EAAE;gBACT,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,QAAQ,EAAE,EAAE,CAAC,QAAQ;aACtB,CAAC,CAAC,CAAC;QACN,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAAC,OAAmB;QACtC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAE9B,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;QAEvE,OAAO,IAAI,cAAc,CAAC;YACxB,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE;gBAC1B,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;oBAElF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;wBACjB,MAAM,MAAM,eAAe,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBACpE,CAAC;oBAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;oBAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;oBACtC,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;oBAClC,IAAI,MAAM,GAAG,EAAE,CAAC;oBAEhB,OAAO,IAAI,EAAE,CAAC;wBACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;wBAE5C,IAAI,IAAI;4BAAE,MAAM;wBAEhB,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;wBAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;wBAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;4BACzB,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gCAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gCAE3B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oCACtB,UAAU,CAAC,KAAK,EAAE,CAAC;oCACnB,OAAO;gCACT,CAAC;gCAED,IAAI,CAAC;oCACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oCAChC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC;oCAEpD,IAAI,OAAO,EAAE,CAAC;wCACZ,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oCAC9B,CAAC;gCACH,CAAC;gCAAC,OAAO,KAAK,EAAE,CAAC;oCACf,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;gCACnD,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,UAAU,CAAC,KAAK,EAAE,CAAC;gBACrB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,QAAsB;QACvC,mEAAmE;QACnE,sFAAsF;QACtF,MAAM,SAAS,GAAkB,EAAE,CAAC;QAEpC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACtD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,qCAAqC;gBACrC,SAAS,CAAC,IAAI,CAAC;oBACb,OAAO,EAAE,EAAE;oBACX,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE;oBAC1D,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,eAAe;oBACvC,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,YAAY,EAAE,CAAC;oBACf,QAAQ,EAAE,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE;iBAC9C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"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"}