@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.
- package/LICENSE +0 -0
- package/README.md +112 -85
- package/dist/errors.d.ts +18 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +12 -4
- package/dist/errors.js.map +1 -1
- package/dist/factory.d.ts +62 -4
- package/dist/factory.d.ts.map +1 -1
- package/dist/factory.js +630 -92
- package/dist/factory.js.map +1 -1
- package/dist/image/index.d.ts +5 -0
- package/dist/image/index.d.ts.map +1 -0
- package/dist/image/index.js +3 -0
- package/dist/image/index.js.map +1 -0
- package/dist/image/provider.d.ts +44 -0
- package/dist/image/provider.d.ts.map +1 -0
- package/dist/image/provider.js +182 -0
- package/dist/image/provider.js.map +1 -0
- package/dist/image/types.d.ts +45 -0
- package/dist/image/types.d.ts.map +1 -0
- package/dist/image/types.js +83 -0
- package/dist/image/types.js.map +1 -0
- package/dist/index.d.ts +46 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +73 -14
- package/dist/index.js.map +1 -1
- package/dist/providers/anthropic.d.ts +5 -2
- package/dist/providers/anthropic.d.ts.map +1 -1
- package/dist/providers/anthropic.js +118 -43
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/base.d.ts +18 -2
- package/dist/providers/base.d.ts.map +1 -1
- package/dist/providers/base.js +107 -5
- package/dist/providers/base.js.map +1 -1
- package/dist/providers/cerebras.d.ts +0 -0
- package/dist/providers/cerebras.d.ts.map +1 -1
- package/dist/providers/cerebras.js +21 -13
- package/dist/providers/cerebras.js.map +1 -1
- package/dist/providers/cloudflare.d.ts +0 -0
- package/dist/providers/cloudflare.d.ts.map +1 -1
- package/dist/providers/cloudflare.js +12 -8
- package/dist/providers/cloudflare.js.map +1 -1
- package/dist/providers/groq.d.ts +2 -1
- package/dist/providers/groq.d.ts.map +1 -1
- package/dist/providers/groq.js +95 -15
- package/dist/providers/groq.js.map +1 -1
- package/dist/providers/openai.d.ts +2 -0
- package/dist/providers/openai.d.ts.map +1 -1
- package/dist/providers/openai.js +56 -24
- package/dist/providers/openai.js.map +1 -1
- package/dist/types.d.ts +114 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +0 -0
- package/dist/types.js.map +0 -0
- package/dist/utils/circuit-breaker.d.ts +5 -2
- package/dist/utils/circuit-breaker.d.ts.map +1 -1
- package/dist/utils/circuit-breaker.js +18 -13
- package/dist/utils/circuit-breaker.js.map +1 -1
- package/dist/utils/cost-tracker.d.ts +9 -2
- package/dist/utils/cost-tracker.d.ts.map +1 -1
- package/dist/utils/cost-tracker.js +20 -9
- package/dist/utils/cost-tracker.js.map +1 -1
- package/dist/utils/credit-ledger.d.ts +3 -0
- package/dist/utils/credit-ledger.d.ts.map +1 -1
- package/dist/utils/credit-ledger.js +5 -2
- package/dist/utils/credit-ledger.js.map +1 -1
- package/dist/utils/exhaustion.d.ts +38 -0
- package/dist/utils/exhaustion.d.ts.map +1 -0
- package/dist/utils/exhaustion.js +74 -0
- package/dist/utils/exhaustion.js.map +1 -0
- package/dist/utils/hooks.d.ts +113 -0
- package/dist/utils/hooks.d.ts.map +1 -0
- package/dist/utils/hooks.js +44 -0
- package/dist/utils/hooks.js.map +1 -0
- package/dist/utils/latency-histogram.d.ts +38 -0
- package/dist/utils/latency-histogram.d.ts.map +1 -0
- package/dist/utils/latency-histogram.js +81 -0
- package/dist/utils/latency-histogram.js.map +1 -0
- package/dist/utils/logger.d.ts +18 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +22 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/retry.d.ts +4 -2
- package/dist/utils/retry.d.ts.map +1 -1
- package/dist/utils/retry.js +12 -8
- package/dist/utils/retry.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EACV,WAAW,EACX,UAAU,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,cAAc,EACd,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,WAAW,EACX,UAAU,EACV,QAAQ,EACR,WAAW,EACX,cAAc,EACd,YAAY,EACZ,aAAa,EACb,QAAQ,EACT,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,EAC3B,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -17,7 +17,18 @@ import { LLMProviderFactory } from './factory';
|
|
|
17
17
|
import { createCostOptimizedFactory } from './factory';
|
|
18
18
|
import { ConfigurationError } from './errors';
|
|
19
19
|
// Error classes
|
|
20
|
-
export { LLMProviderError, RateLimitError, QuotaExceededError, AuthenticationError, InvalidRequestError, ModelNotFoundError, TimeoutError, NetworkError, ServerError, ContentFilterError, TokenLimitError, ConfigurationError, CircuitBreakerOpenError, LLMErrorFactory } from './errors';
|
|
20
|
+
export { LLMProviderError, RateLimitError, QuotaExceededError, AuthenticationError, InvalidRequestError, ModelNotFoundError, TimeoutError, NetworkError, ServerError, ContentFilterError, TokenLimitError, ConfigurationError, CircuitBreakerOpenError, ToolLoopLimitError, ToolLoopAbortedError, LLMErrorFactory } from './errors';
|
|
21
|
+
// Image generation
|
|
22
|
+
export { ImageProvider, normalizeAiResponse } from './image/index';
|
|
23
|
+
export { IMAGE_MODELS, getImageModel } from './image/index';
|
|
24
|
+
// Logger
|
|
25
|
+
export { noopLogger, consoleLogger } from './utils/logger';
|
|
26
|
+
// Observability hooks
|
|
27
|
+
export { noopHooks, composeHooks } from './utils/hooks';
|
|
28
|
+
// Exhaustion registry
|
|
29
|
+
export { ExhaustionRegistry, defaultExhaustionRegistry } from './utils/exhaustion';
|
|
30
|
+
// Latency histogram
|
|
31
|
+
export { LatencyHistogram, defaultLatencyHistogram } from './utils/latency-histogram';
|
|
21
32
|
// Utility classes
|
|
22
33
|
export { RetryManager, defaultRetryManager, withRetry, retry } from './utils/retry';
|
|
23
34
|
export { CircuitBreaker, CircuitBreakerManager, defaultCircuitBreakerManager } from './utils/circuit-breaker';
|
|
@@ -86,6 +97,15 @@ export class LLMProviders {
|
|
|
86
97
|
if (overrides.ledger !== undefined) {
|
|
87
98
|
config.ledger = overrides.ledger;
|
|
88
99
|
}
|
|
100
|
+
if (overrides.quotaHook !== undefined) {
|
|
101
|
+
config.quotaHook = overrides.quotaHook;
|
|
102
|
+
}
|
|
103
|
+
if (overrides.quotaFailPolicy !== undefined) {
|
|
104
|
+
config.quotaFailPolicy = overrides.quotaFailPolicy;
|
|
105
|
+
}
|
|
106
|
+
if (overrides.hooks !== undefined) {
|
|
107
|
+
config.hooks = overrides.hooks;
|
|
108
|
+
}
|
|
89
109
|
return new LLMProviders(config);
|
|
90
110
|
}
|
|
91
111
|
/**
|
|
@@ -94,6 +114,21 @@ export class LLMProviders {
|
|
|
94
114
|
async generateResponse(request) {
|
|
95
115
|
return this.factory.generateResponse(request);
|
|
96
116
|
}
|
|
117
|
+
async generateResponseStream(request) {
|
|
118
|
+
return this.factory.generateResponseStream(request);
|
|
119
|
+
}
|
|
120
|
+
async generateResponseWithTools(request, toolExecutor, opts) {
|
|
121
|
+
return this.factory.generateResponseWithTools(request, toolExecutor, opts);
|
|
122
|
+
}
|
|
123
|
+
async classify(input, options) {
|
|
124
|
+
return this.factory.classify(input, options);
|
|
125
|
+
}
|
|
126
|
+
async analyzeImage(input) {
|
|
127
|
+
return this.factory.analyzeImage(input);
|
|
128
|
+
}
|
|
129
|
+
async getProviderBalance(provider) {
|
|
130
|
+
return this.factory.getProviderBalance(provider);
|
|
131
|
+
}
|
|
97
132
|
/**
|
|
98
133
|
* Get specific provider instance
|
|
99
134
|
*/
|
|
@@ -118,6 +153,18 @@ export class LLMProviders {
|
|
|
118
153
|
getCostAnalytics() {
|
|
119
154
|
return this.factory.getCostAnalytics();
|
|
120
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* Get latency histogram summaries for all providers
|
|
158
|
+
*/
|
|
159
|
+
getLatencyHistogram() {
|
|
160
|
+
return this.factory.getLatencyHistogram();
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Get currently quota-exhausted providers
|
|
164
|
+
*/
|
|
165
|
+
getExhaustedProviders() {
|
|
166
|
+
return this.factory.getExhaustedProviders();
|
|
167
|
+
}
|
|
121
168
|
/**
|
|
122
169
|
* Reset all metrics and circuit breakers
|
|
123
170
|
*/
|
|
@@ -164,6 +211,12 @@ export const MODELS = {
|
|
|
164
211
|
GPT_4: 'gpt-4',
|
|
165
212
|
GPT_3_5_TURBO: 'gpt-3.5-turbo',
|
|
166
213
|
// Anthropic models
|
|
214
|
+
CLAUDE_OPUS_4_6: 'claude-opus-4-6-20250618',
|
|
215
|
+
CLAUDE_SONNET_4_6: 'claude-sonnet-4-6-20250618',
|
|
216
|
+
CLAUDE_OPUS_4: 'claude-opus-4-20250618',
|
|
217
|
+
CLAUDE_SONNET_4: 'claude-sonnet-4-20250514',
|
|
218
|
+
CLAUDE_HAIKU_4_5: 'claude-haiku-4-5-20251001',
|
|
219
|
+
CLAUDE_3_7_SONNET: 'claude-3-7-sonnet-20250219',
|
|
167
220
|
CLAUDE_3_5_SONNET: 'claude-3-5-sonnet-20241022',
|
|
168
221
|
CLAUDE_3_5_HAIKU: 'claude-3-5-haiku-20241022',
|
|
169
222
|
CLAUDE_3_OPUS: 'claude-3-opus-20240229',
|
|
@@ -182,7 +235,8 @@ export const MODELS = {
|
|
|
182
235
|
CEREBRAS_QWEN_3_235B: 'qwen-3-235b-a22b-instruct-2507',
|
|
183
236
|
// Groq models
|
|
184
237
|
GROQ_LLAMA_3_3_70B_VERSATILE: 'llama-3.3-70b-versatile',
|
|
185
|
-
GROQ_LLAMA_3_1_8B_INSTANT: 'llama-3.1-8b-instant'
|
|
238
|
+
GROQ_LLAMA_3_1_8B_INSTANT: 'llama-3.1-8b-instant',
|
|
239
|
+
GROQ_GPT_OSS_120B: 'openai/gpt-oss-120b'
|
|
186
240
|
};
|
|
187
241
|
/**
|
|
188
242
|
* Model recommendations by use case
|
|
@@ -192,36 +246,41 @@ export const MODEL_RECOMMENDATIONS = {
|
|
|
192
246
|
COST_EFFECTIVE: [
|
|
193
247
|
MODELS.CEREBRAS_LLAMA_3_1_8B,
|
|
194
248
|
MODELS.TINY_LLAMA,
|
|
195
|
-
MODELS.
|
|
249
|
+
MODELS.CLAUDE_HAIKU_4_5,
|
|
196
250
|
MODELS.GPT_4O_MINI
|
|
197
251
|
],
|
|
198
252
|
// High-performance models
|
|
199
253
|
HIGH_PERFORMANCE: [
|
|
254
|
+
MODELS.CLAUDE_OPUS_4_6,
|
|
255
|
+
MODELS.CLAUDE_SONNET_4_6,
|
|
200
256
|
MODELS.CEREBRAS_ZAI_GLM_4_7,
|
|
201
257
|
MODELS.GPT_4O,
|
|
202
|
-
MODELS.CLAUDE_3_5_SONNET,
|
|
203
258
|
MODELS.CEREBRAS_QWEN_3_235B,
|
|
204
259
|
MODELS.LLAMA_3_1_70B
|
|
205
260
|
],
|
|
206
261
|
// Balanced models
|
|
207
262
|
BALANCED: [
|
|
208
|
-
MODELS.
|
|
209
|
-
MODELS.
|
|
263
|
+
MODELS.CLAUDE_SONNET_4,
|
|
264
|
+
MODELS.CLAUDE_HAIKU_4_5,
|
|
265
|
+
MODELS.GPT_4O_MINI,
|
|
210
266
|
MODELS.LLAMA_3_1_8B
|
|
211
267
|
],
|
|
212
268
|
// Tool/function calling
|
|
213
269
|
TOOL_CALLING: [
|
|
270
|
+
MODELS.CLAUDE_SONNET_4_6,
|
|
214
271
|
MODELS.GPT_4O,
|
|
215
|
-
MODELS.
|
|
272
|
+
MODELS.CLAUDE_SONNET_4,
|
|
216
273
|
MODELS.CEREBRAS_ZAI_GLM_4_7,
|
|
217
274
|
MODELS.CEREBRAS_QWEN_3_235B,
|
|
218
|
-
MODELS.
|
|
275
|
+
MODELS.GROQ_GPT_OSS_120B,
|
|
276
|
+
MODELS.GROQ_LLAMA_3_3_70B_VERSATILE
|
|
219
277
|
],
|
|
220
278
|
// Long context tasks
|
|
221
279
|
LONG_CONTEXT: [
|
|
222
|
-
MODELS.
|
|
223
|
-
MODELS.
|
|
224
|
-
MODELS.
|
|
280
|
+
MODELS.CLAUDE_OPUS_4_6,
|
|
281
|
+
MODELS.CLAUDE_SONNET_4_6,
|
|
282
|
+
MODELS.CLAUDE_3_7_SONNET,
|
|
283
|
+
MODELS.GPT_4_TURBO
|
|
225
284
|
]
|
|
226
285
|
};
|
|
227
286
|
/**
|
|
@@ -244,7 +303,7 @@ export function getRecommendedModel(useCase, availableProviders) {
|
|
|
244
303
|
|| model.startsWith('zai-glm') || model.startsWith('qwen-3-235b')) && availableProviders.includes('cerebras')) {
|
|
245
304
|
return model;
|
|
246
305
|
}
|
|
247
|
-
if ((model.includes('-versatile') || model.includes('-instant')) && availableProviders.includes('groq')) {
|
|
306
|
+
if ((model.includes('-versatile') || model.includes('-instant') || model === 'openai/gpt-oss-120b') && availableProviders.includes('groq')) {
|
|
248
307
|
return model;
|
|
249
308
|
}
|
|
250
309
|
}
|
|
@@ -253,10 +312,10 @@ export function getRecommendedModel(useCase, availableProviders) {
|
|
|
253
312
|
return MODELS.LLAMA_3_1_8B;
|
|
254
313
|
}
|
|
255
314
|
if (availableProviders.includes('anthropic')) {
|
|
256
|
-
return MODELS.
|
|
315
|
+
return MODELS.CLAUDE_HAIKU_4_5;
|
|
257
316
|
}
|
|
258
317
|
if (availableProviders.includes('openai')) {
|
|
259
|
-
return MODELS.
|
|
318
|
+
return MODELS.GPT_4O_MINI;
|
|
260
319
|
}
|
|
261
320
|
throw new Error('No available providers configured');
|
|
262
321
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Anthropic Provider
|
|
3
3
|
* Implementation for Claude models with streaming and tools support
|
|
4
4
|
*/
|
|
5
|
-
import type { LLMRequest, LLMResponse, AnthropicConfig, ModelCapabilities } from '../types';
|
|
5
|
+
import type { LLMRequest, LLMResponse, AnthropicConfig, ModelCapabilities, ProviderBalance, Tool } from '../types';
|
|
6
6
|
import { BaseProvider } from './base';
|
|
7
7
|
export declare class AnthropicProvider extends BaseProvider {
|
|
8
8
|
name: string;
|
|
@@ -10,6 +10,7 @@ export declare class AnthropicProvider 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 version;
|
|
@@ -19,9 +20,11 @@ export declare class AnthropicProvider extends BaseProvider {
|
|
|
19
20
|
getModels(): string[];
|
|
20
21
|
estimateCost(request: LLMRequest): number;
|
|
21
22
|
healthCheck(): Promise<boolean>;
|
|
23
|
+
getProviderBalance(): Promise<ProviderBalance>;
|
|
22
24
|
protected getModelCapabilities(): Record<string, ModelCapabilities>;
|
|
23
25
|
private makeAnthropicRequest;
|
|
24
26
|
private formatRequest;
|
|
27
|
+
private formatMessageContent;
|
|
25
28
|
private formatResponse;
|
|
26
29
|
private mapStopReason;
|
|
27
30
|
/**
|
|
@@ -32,7 +35,7 @@ export declare class AnthropicProvider extends BaseProvider {
|
|
|
32
35
|
* Tool usage support
|
|
33
36
|
*/
|
|
34
37
|
generateWithTools(request: LLMRequest & {
|
|
35
|
-
tools:
|
|
38
|
+
tools: Tool[];
|
|
36
39
|
}): Promise<LLMResponse>;
|
|
37
40
|
}
|
|
38
41
|
//# sourceMappingURL=anthropic.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,IAAI,EAEL,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAqEtC,qBAAa,iBAAkB,SAAQ,YAAY;IACjD,IAAI,SAAe;IACnB,MAAM,WAYJ;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,OAAO,CAAS;gBAEZ,MAAM,EAAE,eAAe;IAY7B,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IAyCjE,cAAc,IAAI,OAAO;IAIzB,SAAS,IAAI,MAAM,EAAE;IAIrB,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM;IAenC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAW/B,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IA6BpD,SAAS,CAAC,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC;YA0GrD,oBAAoB;IAyBlC,OAAO,CAAC,aAAa;IAgFrB,OAAO,CAAC,oBAAoB;IA8B5B,OAAO,CAAC,cAAc;IAoDtB,OAAO,CAAC,aAAa;IAarB;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IA6D1E;;OAEG;IACG,iBAAiB,CACrB,OAAO,EAAE,UAAU,GAAG;QAAE,KAAK,EAAE,IAAI,EAAE,CAAA;KAAE,GACtC,OAAO,CAAC,WAAW,CAAC;CAGxB"}
|
|
@@ -7,9 +7,12 @@ import { LLMErrorFactory, AuthenticationError } from '../errors';
|
|
|
7
7
|
export class AnthropicProvider extends BaseProvider {
|
|
8
8
|
name = 'anthropic';
|
|
9
9
|
models = [
|
|
10
|
+
'claude-opus-4-6-20250618',
|
|
11
|
+
'claude-sonnet-4-6-20250618',
|
|
12
|
+
'claude-opus-4-20250618',
|
|
10
13
|
'claude-sonnet-4-20250514',
|
|
11
|
-
'claude-
|
|
12
|
-
'claude-
|
|
14
|
+
'claude-haiku-4-5-20251001',
|
|
15
|
+
'claude-3-7-sonnet-20250219',
|
|
13
16
|
'claude-3-5-sonnet-20241022',
|
|
14
17
|
'claude-3-5-haiku-20241022',
|
|
15
18
|
'claude-3-opus-20240229',
|
|
@@ -19,6 +22,7 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
19
22
|
supportsStreaming = true;
|
|
20
23
|
supportsTools = true;
|
|
21
24
|
supportsBatching = false;
|
|
25
|
+
supportsVision = true;
|
|
22
26
|
apiKey;
|
|
23
27
|
baseUrl;
|
|
24
28
|
version;
|
|
@@ -38,14 +42,15 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
38
42
|
try {
|
|
39
43
|
const response = await this.executeWithResiliency(async () => {
|
|
40
44
|
const anthropicRequest = this.formatRequest(request);
|
|
41
|
-
const httpResponse = await this.makeAnthropicRequest('/v1/messages', anthropicRequest);
|
|
45
|
+
const httpResponse = await this.makeAnthropicRequest('/v1/messages', anthropicRequest, 'POST', request);
|
|
42
46
|
if (!httpResponse.ok) {
|
|
43
47
|
throw await LLMErrorFactory.fromFetchResponse('anthropic', httpResponse);
|
|
44
48
|
}
|
|
45
49
|
const data = await httpResponse.json();
|
|
46
50
|
const formatted = this.formatResponse(data, Date.now() - startTime);
|
|
47
|
-
//
|
|
48
|
-
if
|
|
51
|
+
// Restore the prefilled '{' consumed by the assistant turn,
|
|
52
|
+
// but only if the response doesn't already start with one
|
|
53
|
+
if (jsonMode && !formatted.message.startsWith('{')) {
|
|
49
54
|
const restored = '{' + formatted.message;
|
|
50
55
|
formatted.message = restored;
|
|
51
56
|
formatted.content = restored;
|
|
@@ -70,7 +75,7 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
70
75
|
return [...this.models];
|
|
71
76
|
}
|
|
72
77
|
estimateCost(request) {
|
|
73
|
-
const model = request.model || 'claude-
|
|
78
|
+
const model = request.model || 'claude-haiku-4-5-20251001';
|
|
74
79
|
const capabilities = this.getModelCapabilities()[model];
|
|
75
80
|
if (!capabilities)
|
|
76
81
|
return 0;
|
|
@@ -81,48 +86,100 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
81
86
|
}
|
|
82
87
|
async healthCheck() {
|
|
83
88
|
try {
|
|
84
|
-
//
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
messages: [{ role: 'user', content: 'Hi' }],
|
|
89
|
-
max_tokens: 1
|
|
90
|
-
};
|
|
91
|
-
const response = await this.makeAnthropicRequest('/v1/messages', testRequest);
|
|
92
|
-
return response.ok;
|
|
89
|
+
// Lightweight reachability check — HEAD to base URL avoids burning tokens
|
|
90
|
+
const response = await this.makeAnthropicRequest('/v1/messages', null, 'OPTIONS');
|
|
91
|
+
// Anthropic returns 405 for OPTIONS but that confirms the API is reachable
|
|
92
|
+
return response.status !== 0;
|
|
93
93
|
}
|
|
94
94
|
catch {
|
|
95
95
|
return false;
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
|
+
async getProviderBalance() {
|
|
99
|
+
try {
|
|
100
|
+
const response = await this.makeAnthropicRequest('/v1/organizations/cost_report', null, 'GET');
|
|
101
|
+
if (!response.ok) {
|
|
102
|
+
return {
|
|
103
|
+
provider: this.name,
|
|
104
|
+
status: 'unavailable',
|
|
105
|
+
source: 'provider_api',
|
|
106
|
+
message: `Anthropic usage API returned HTTP ${response.status}`
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
const raw = await response.json();
|
|
110
|
+
return {
|
|
111
|
+
provider: this.name,
|
|
112
|
+
status: 'available',
|
|
113
|
+
source: 'provider_api',
|
|
114
|
+
raw
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
return {
|
|
119
|
+
provider: this.name,
|
|
120
|
+
status: 'error',
|
|
121
|
+
source: 'provider_api',
|
|
122
|
+
message: error.message
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
}
|
|
98
126
|
getModelCapabilities() {
|
|
99
127
|
return {
|
|
128
|
+
'claude-opus-4-6-20250618': {
|
|
129
|
+
maxContextLength: 200000,
|
|
130
|
+
supportsStreaming: true,
|
|
131
|
+
supportsTools: true,
|
|
132
|
+
supportsVision: true,
|
|
133
|
+
supportsBatching: false,
|
|
134
|
+
inputTokenCost: 0.015, // $15 per 1M tokens
|
|
135
|
+
outputTokenCost: 0.075, // $75 per 1M tokens
|
|
136
|
+
description: 'Claude Opus 4.6 - Latest, highest intelligence and capability'
|
|
137
|
+
},
|
|
138
|
+
'claude-sonnet-4-6-20250618': {
|
|
139
|
+
maxContextLength: 200000,
|
|
140
|
+
supportsStreaming: true,
|
|
141
|
+
supportsTools: true,
|
|
142
|
+
supportsVision: true,
|
|
143
|
+
supportsBatching: false,
|
|
144
|
+
inputTokenCost: 0.003, // $3 per 1M tokens
|
|
145
|
+
outputTokenCost: 0.015, // $15 per 1M tokens
|
|
146
|
+
description: 'Claude Sonnet 4.6 - Latest balanced performance model'
|
|
147
|
+
},
|
|
148
|
+
'claude-opus-4-20250618': {
|
|
149
|
+
maxContextLength: 200000,
|
|
150
|
+
supportsStreaming: true,
|
|
151
|
+
supportsTools: true,
|
|
152
|
+
supportsBatching: false,
|
|
153
|
+
inputTokenCost: 0.015, // $15 per 1M tokens
|
|
154
|
+
outputTokenCost: 0.075, // $75 per 1M tokens
|
|
155
|
+
description: 'Claude Opus 4 - Highest level of intelligence and capability'
|
|
156
|
+
},
|
|
100
157
|
'claude-sonnet-4-20250514': {
|
|
101
158
|
maxContextLength: 200000,
|
|
102
159
|
supportsStreaming: true,
|
|
103
160
|
supportsTools: true,
|
|
104
161
|
supportsBatching: false,
|
|
105
|
-
inputTokenCost: 0.003, //
|
|
106
|
-
outputTokenCost: 0.015, //
|
|
162
|
+
inputTokenCost: 0.003, // $3 per 1M tokens
|
|
163
|
+
outputTokenCost: 0.015, // $15 per 1M tokens
|
|
107
164
|
description: 'Claude Sonnet 4 - High intelligence and balanced performance'
|
|
108
165
|
},
|
|
109
|
-
'claude-
|
|
166
|
+
'claude-haiku-4-5-20251001': {
|
|
110
167
|
maxContextLength: 200000,
|
|
111
168
|
supportsStreaming: true,
|
|
112
169
|
supportsTools: true,
|
|
113
170
|
supportsBatching: false,
|
|
114
|
-
inputTokenCost: 0.
|
|
115
|
-
outputTokenCost: 0.
|
|
116
|
-
description: 'Claude
|
|
171
|
+
inputTokenCost: 0.001, // $1 per 1M tokens
|
|
172
|
+
outputTokenCost: 0.005, // $5 per 1M tokens
|
|
173
|
+
description: 'Claude Haiku 4.5 - Fast and cost-effective'
|
|
117
174
|
},
|
|
118
|
-
'claude-
|
|
175
|
+
'claude-3-7-sonnet-20250219': {
|
|
119
176
|
maxContextLength: 200000,
|
|
120
177
|
supportsStreaming: true,
|
|
121
178
|
supportsTools: true,
|
|
122
179
|
supportsBatching: false,
|
|
123
|
-
inputTokenCost: 0.003, //
|
|
124
|
-
outputTokenCost: 0.015, //
|
|
125
|
-
description: 'Claude
|
|
180
|
+
inputTokenCost: 0.003, // $3 per 1M tokens
|
|
181
|
+
outputTokenCost: 0.015, // $15 per 1M tokens
|
|
182
|
+
description: 'Claude 3.7 Sonnet - Extended thinking with hybrid reasoning'
|
|
126
183
|
},
|
|
127
184
|
'claude-3-5-sonnet-20241022': {
|
|
128
185
|
maxContextLength: 200000,
|
|
@@ -171,11 +228,12 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
171
228
|
}
|
|
172
229
|
};
|
|
173
230
|
}
|
|
174
|
-
async makeAnthropicRequest(endpoint, body, method = 'POST') {
|
|
231
|
+
async makeAnthropicRequest(endpoint, body, method = 'POST', request) {
|
|
175
232
|
const headers = {
|
|
176
233
|
'x-api-key': this.apiKey,
|
|
177
234
|
'anthropic-version': this.version,
|
|
178
|
-
'Content-Type': 'application/json'
|
|
235
|
+
'Content-Type': 'application/json',
|
|
236
|
+
...this.getAIGatewayHeaders(request)
|
|
179
237
|
};
|
|
180
238
|
const options = {
|
|
181
239
|
method,
|
|
@@ -195,7 +253,7 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
195
253
|
continue;
|
|
196
254
|
const anthropicMessage = {
|
|
197
255
|
role: message.role,
|
|
198
|
-
content: message.content
|
|
256
|
+
content: this.formatMessageContent(message.content, message.role === 'user' ? request.images : undefined)
|
|
199
257
|
};
|
|
200
258
|
// Handle tool calls and results
|
|
201
259
|
if (message.toolCalls && message.toolCalls.length > 0) {
|
|
@@ -221,7 +279,7 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
221
279
|
messages.push({ role: 'assistant', content: '{' });
|
|
222
280
|
}
|
|
223
281
|
const anthropicRequest = {
|
|
224
|
-
model: request.model || 'claude-
|
|
282
|
+
model: request.model || 'claude-haiku-4-5-20251001',
|
|
225
283
|
messages,
|
|
226
284
|
max_tokens: request.maxTokens || 1000,
|
|
227
285
|
temperature: request.temperature,
|
|
@@ -256,6 +314,30 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
256
314
|
}
|
|
257
315
|
return anthropicRequest;
|
|
258
316
|
}
|
|
317
|
+
formatMessageContent(text, images) {
|
|
318
|
+
if (!images || images.length === 0) {
|
|
319
|
+
return text;
|
|
320
|
+
}
|
|
321
|
+
return [
|
|
322
|
+
{ type: 'text', text },
|
|
323
|
+
...images.map(image => {
|
|
324
|
+
if (image.url) {
|
|
325
|
+
return {
|
|
326
|
+
type: 'text',
|
|
327
|
+
text: `[Image URL: ${image.url}]`
|
|
328
|
+
};
|
|
329
|
+
}
|
|
330
|
+
return {
|
|
331
|
+
type: 'image',
|
|
332
|
+
source: {
|
|
333
|
+
type: 'base64',
|
|
334
|
+
media_type: image.mimeType || 'image/jpeg',
|
|
335
|
+
data: image.data || ''
|
|
336
|
+
}
|
|
337
|
+
};
|
|
338
|
+
})
|
|
339
|
+
];
|
|
340
|
+
}
|
|
259
341
|
formatResponse(data, responseTime) {
|
|
260
342
|
// Extract text content from response
|
|
261
343
|
const textContent = data.content
|
|
@@ -281,10 +363,10 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
281
363
|
stopSequence: data.stop_sequence
|
|
282
364
|
}
|
|
283
365
|
};
|
|
284
|
-
// Extract tool calls if present
|
|
366
|
+
// Extract tool calls if present (validated at provider boundary)
|
|
285
367
|
const toolUses = data.content.filter(block => block.type === 'tool_use');
|
|
286
368
|
if (toolUses.length > 0) {
|
|
287
|
-
|
|
369
|
+
const raw = toolUses.map(tool => ({
|
|
288
370
|
id: tool.id,
|
|
289
371
|
type: 'function',
|
|
290
372
|
function: {
|
|
@@ -292,6 +374,7 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
292
374
|
arguments: JSON.stringify(tool.input)
|
|
293
375
|
}
|
|
294
376
|
}));
|
|
377
|
+
response.toolCalls = this.validateToolCalls(raw);
|
|
295
378
|
}
|
|
296
379
|
return response;
|
|
297
380
|
}
|
|
@@ -316,7 +399,7 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
316
399
|
return new ReadableStream({
|
|
317
400
|
start: async (controller) => {
|
|
318
401
|
try {
|
|
319
|
-
const response = await this.makeAnthropicRequest('/v1/messages', anthropicRequest);
|
|
402
|
+
const response = await this.makeAnthropicRequest('/v1/messages', anthropicRequest, 'POST', request);
|
|
320
403
|
if (!response.ok) {
|
|
321
404
|
throw await LLMErrorFactory.fromFetchResponse('anthropic', response);
|
|
322
405
|
}
|
|
@@ -346,8 +429,8 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
346
429
|
controller.enqueue(parsed.delta.text);
|
|
347
430
|
}
|
|
348
431
|
}
|
|
349
|
-
catch
|
|
350
|
-
|
|
432
|
+
catch {
|
|
433
|
+
// Malformed SSE chunk — skip silently
|
|
351
434
|
}
|
|
352
435
|
}
|
|
353
436
|
}
|
|
@@ -364,15 +447,7 @@ export class AnthropicProvider extends BaseProvider {
|
|
|
364
447
|
* Tool usage support
|
|
365
448
|
*/
|
|
366
449
|
async generateWithTools(request) {
|
|
367
|
-
|
|
368
|
-
// If the response contains tool calls, we need to execute them
|
|
369
|
-
// and potentially make another request with the results
|
|
370
|
-
if (response.toolCalls && response.toolCalls.length > 0) {
|
|
371
|
-
// This would typically involve executing the tools and making another request
|
|
372
|
-
// For now, we just return the response with tool calls
|
|
373
|
-
console.log('Tool calls detected in Anthropic response:', response.toolCalls);
|
|
374
|
-
}
|
|
375
|
-
return response;
|
|
450
|
+
return this.generateResponse(request);
|
|
376
451
|
}
|
|
377
452
|
}
|
|
378
453
|
//# sourceMappingURL=anthropic.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
|