@juspay/neurolink 7.40.1 → 7.41.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,271 +0,0 @@
1
- import type { Tool, Schema } from "ai";
2
- import type { ZodUnknownSchema, ValidationSchema } from "../types/typeAliases.js";
3
- import type { GenerateResult } from "../types/generateTypes.js";
4
- import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
- import type { JsonValue } from "../types/common.js";
6
- import type { ChatMessage, ConversationMemoryConfig } from "../types/conversation.js";
7
- import type { TokenUsage, AnalyticsData } from "../types/analytics.js";
8
- import type { EvaluationData } from "../index.js";
9
- export type { EvaluationData };
10
- import type { MiddlewareFactoryOptions } from "../types/middlewareTypes.js";
11
- export interface TextGenerationResult {
12
- content: string;
13
- provider?: string;
14
- model?: string;
15
- usage?: TokenUsage;
16
- responseTime?: number;
17
- toolsUsed?: string[];
18
- toolExecutions?: Array<{
19
- toolName: string;
20
- executionTime: number;
21
- success: boolean;
22
- serverId?: string;
23
- }>;
24
- enhancedWithTools?: boolean;
25
- availableTools?: Array<{
26
- name: string;
27
- description: string;
28
- server: string;
29
- category?: string;
30
- }>;
31
- analytics?: AnalyticsData;
32
- evaluation?: EvaluationData;
33
- }
34
- /**
35
- * Supported AI Provider Names
36
- */
37
- export declare enum AIProviderName {
38
- BEDROCK = "bedrock",
39
- OPENAI = "openai",
40
- OPENAI_COMPATIBLE = "openai-compatible",
41
- VERTEX = "vertex",
42
- ANTHROPIC = "anthropic",
43
- AZURE = "azure",
44
- GOOGLE_AI = "google-ai",
45
- HUGGINGFACE = "huggingface",
46
- OLLAMA = "ollama",
47
- MISTRAL = "mistral",
48
- LITELLM = "litellm",
49
- SAGEMAKER = "sagemaker",
50
- AUTO = "auto"
51
- }
52
- /**
53
- * Supported Models for Amazon Bedrock
54
- */
55
- export declare enum BedrockModels {
56
- CLAUDE_3_SONNET = "anthropic.claude-3-sonnet-20240229-v1:0",
57
- CLAUDE_3_HAIKU = "anthropic.claude-3-haiku-20240307-v1:0",
58
- CLAUDE_3_5_SONNET = "anthropic.claude-3-5-sonnet-20240620-v1:0",
59
- CLAUDE_3_7_SONNET = "arn:aws:bedrock:us-east-2:225681119357:inference-profile/us.anthropic.claude-3-7-sonnet-20250219-v1:0"
60
- }
61
- /**
62
- * Supported Models for OpenAI
63
- */
64
- export declare enum OpenAIModels {
65
- GPT_4 = "gpt-4",
66
- GPT_4_TURBO = "gpt-4-turbo",
67
- GPT_4O = "gpt-4o",
68
- GPT_4O_MINI = "gpt-4o-mini",
69
- GPT_3_5_TURBO = "gpt-3.5-turbo",
70
- O1_PREVIEW = "o1-preview",
71
- O1_MINI = "o1-mini"
72
- }
73
- /**
74
- * Supported Models for Google Vertex AI
75
- */
76
- export declare enum VertexModels {
77
- CLAUDE_4_0_SONNET = "claude-sonnet-4@20250514",
78
- CLAUDE_4_0_OPUS = "claude-opus-4@20250514",
79
- CLAUDE_3_5_SONNET = "claude-3-5-sonnet-20241022",
80
- CLAUDE_3_5_HAIKU = "claude-3-5-haiku-20241022",
81
- CLAUDE_3_SONNET = "claude-3-sonnet-20240229",
82
- CLAUDE_3_OPUS = "claude-3-opus-20240229",
83
- CLAUDE_3_HAIKU = "claude-3-haiku-20240307",
84
- GEMINI_2_5_PRO = "gemini-2.5-pro",
85
- GEMINI_2_5_FLASH = "gemini-2.5-flash",
86
- GEMINI_2_5_FLASH_LITE = "gemini-2.5-flash-lite",
87
- GEMINI_2_0_FLASH_001 = "gemini-2.0-flash-001",
88
- GEMINI_1_5_PRO = "gemini-1.5-pro",
89
- GEMINI_1_5_FLASH = "gemini-1.5-flash"
90
- }
91
- /**
92
- * Supported Models for Google AI Studio
93
- */
94
- export declare enum GoogleAIModels {
95
- GEMINI_2_5_PRO = "gemini-2.5-pro",
96
- GEMINI_2_5_FLASH = "gemini-2.5-flash",
97
- GEMINI_2_5_FLASH_LITE = "gemini-2.5-flash-lite",
98
- GEMINI_2_0_FLASH_001 = "gemini-2.0-flash-001",
99
- GEMINI_1_5_PRO = "gemini-1.5-pro",
100
- GEMINI_1_5_FLASH = "gemini-1.5-flash",
101
- GEMINI_1_5_FLASH_LITE = "gemini-1.5-flash-lite"
102
- }
103
- /**
104
- * Supported Models for Anthropic (Direct API)
105
- */
106
- export declare enum AnthropicModels {
107
- CLAUDE_3_5_SONNET = "claude-3-5-sonnet-20241022",
108
- CLAUDE_3_5_HAIKU = "claude-3-5-haiku-20241022",
109
- CLAUDE_3_SONNET = "claude-3-sonnet-20240229",
110
- CLAUDE_3_OPUS = "claude-3-opus-20240229",
111
- CLAUDE_3_HAIKU = "claude-3-haiku-20240307"
112
- }
113
- /**
114
- * API Versions for various providers
115
- */
116
- export declare enum APIVersions {
117
- AZURE_LATEST = "2025-04-01-preview",
118
- AZURE_STABLE = "2024-10-21",
119
- AZURE_LEGACY = "2023-12-01-preview",
120
- OPENAI_CURRENT = "v1",
121
- OPENAI_BETA = "v1-beta",
122
- GOOGLE_AI_CURRENT = "v1",
123
- GOOGLE_AI_BETA = "v1beta",
124
- ANTHROPIC_CURRENT = "2023-06-01"
125
- }
126
- /**
127
- * Default model aliases for easy reference
128
- */
129
- export declare const DEFAULT_MODEL_ALIASES: {
130
- readonly LATEST_OPENAI: OpenAIModels.GPT_4O;
131
- readonly FASTEST_OPENAI: OpenAIModels.GPT_4O_MINI;
132
- readonly LATEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_SONNET;
133
- readonly FASTEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_HAIKU;
134
- readonly LATEST_GOOGLE: GoogleAIModels.GEMINI_2_5_PRO;
135
- readonly FASTEST_GOOGLE: GoogleAIModels.GEMINI_2_5_FLASH;
136
- readonly BEST_CODING: AnthropicModels.CLAUDE_3_5_SONNET;
137
- readonly BEST_ANALYSIS: GoogleAIModels.GEMINI_2_5_PRO;
138
- readonly BEST_CREATIVE: AnthropicModels.CLAUDE_3_5_SONNET;
139
- readonly BEST_VALUE: GoogleAIModels.GEMINI_2_5_FLASH;
140
- };
141
- /**
142
- * @deprecated Use DEFAULT_MODEL_ALIASES instead. Will be removed in future version.
143
- */
144
- export declare const ModelAliases: {
145
- readonly LATEST_OPENAI: OpenAIModels.GPT_4O;
146
- readonly FASTEST_OPENAI: OpenAIModels.GPT_4O_MINI;
147
- readonly LATEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_SONNET;
148
- readonly FASTEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_HAIKU;
149
- readonly LATEST_GOOGLE: GoogleAIModels.GEMINI_2_5_PRO;
150
- readonly FASTEST_GOOGLE: GoogleAIModels.GEMINI_2_5_FLASH;
151
- readonly BEST_CODING: AnthropicModels.CLAUDE_3_5_SONNET;
152
- readonly BEST_ANALYSIS: GoogleAIModels.GEMINI_2_5_PRO;
153
- readonly BEST_CREATIVE: AnthropicModels.CLAUDE_3_5_SONNET;
154
- readonly BEST_VALUE: GoogleAIModels.GEMINI_2_5_FLASH;
155
- };
156
- /**
157
- * Union type of all supported model names
158
- */
159
- export type SupportedModelName = BedrockModels | OpenAIModels | VertexModels | GoogleAIModels | AnthropicModels;
160
- /**
161
- * Provider configuration specifying provider and its available models
162
- */
163
- export interface ProviderConfig {
164
- provider: AIProviderName;
165
- models: SupportedModelName[];
166
- }
167
- /**
168
- * Options for AI requests with unified provider configuration
169
- */
170
- export interface StreamingOptions {
171
- providers: ProviderConfig[];
172
- temperature?: number;
173
- maxTokens?: number;
174
- systemPrompt?: string;
175
- }
176
- /**
177
- * Text generation options interface
178
- * Extended to support multimodal content with zero breaking changes
179
- */
180
- export interface TextGenerationOptions {
181
- prompt?: string;
182
- input?: {
183
- text: string;
184
- images?: Array<Buffer | string>;
185
- content?: Array<import("../types/content.js").TextContent | import("../types/content.js").ImageContent>;
186
- };
187
- provider?: AIProviderName;
188
- model?: string;
189
- temperature?: number;
190
- maxTokens?: number;
191
- systemPrompt?: string;
192
- schema?: ZodUnknownSchema | Schema<unknown>;
193
- tools?: Record<string, Tool>;
194
- timeout?: number | string;
195
- disableTools?: boolean;
196
- maxSteps?: number;
197
- enableEvaluation?: boolean;
198
- enableAnalytics?: boolean;
199
- context?: Record<string, JsonValue>;
200
- evaluationDomain?: string;
201
- toolUsageContext?: string;
202
- conversationHistory?: Array<{
203
- role: string;
204
- content: string;
205
- }>;
206
- conversationMessages?: ChatMessage[];
207
- conversationMemoryConfig?: Partial<ConversationMemoryConfig>;
208
- originalPrompt?: string;
209
- middleware?: MiddlewareFactoryOptions;
210
- expectedOutcome?: string;
211
- evaluationCriteria?: string[];
212
- }
213
- export type { AnalyticsData } from "../types/analytics.js";
214
- /**
215
- * Enhanced result interfaces with optional analytics/evaluation
216
- */
217
- export interface EnhancedGenerateResult extends GenerateResult {
218
- analytics?: AnalyticsData;
219
- evaluation?: EvaluationData;
220
- }
221
- /**
222
- * Phase 2: Enhanced Streaming Infrastructure
223
- * Progress tracking and metadata for streaming operations
224
- */
225
- export interface StreamingProgressData {
226
- chunkCount: number;
227
- totalBytes: number;
228
- chunkSize: number;
229
- elapsedTime: number;
230
- estimatedRemaining?: number;
231
- streamId?: string;
232
- phase: "initializing" | "streaming" | "processing" | "complete" | "error";
233
- }
234
- export interface StreamingMetadata {
235
- startTime: number;
236
- endTime?: number;
237
- totalDuration?: number;
238
- averageChunkSize: number;
239
- maxChunkSize: number;
240
- minChunkSize: number;
241
- throughputBytesPerSecond?: number;
242
- streamingProvider: string;
243
- modelUsed: string;
244
- }
245
- export type ProgressCallback = (progress: StreamingProgressData) => void;
246
- /**
247
- * AI Provider interface with flexible parameter support
248
- */
249
- export interface AIProvider {
250
- stream(optionsOrPrompt: StreamOptions | string, analysisSchema?: ValidationSchema): Promise<StreamResult>;
251
- generate(optionsOrPrompt: TextGenerationOptions | string, analysisSchema?: ValidationSchema): Promise<EnhancedGenerateResult | null>;
252
- gen(optionsOrPrompt: TextGenerationOptions | string, analysisSchema?: ValidationSchema): Promise<EnhancedGenerateResult | null>;
253
- setupToolExecutor(sdk: {
254
- customTools: Map<string, unknown>;
255
- executeTool: (toolName: string, params: unknown) => Promise<unknown>;
256
- }, functionTag: string): void;
257
- }
258
- /**
259
- * Provider attempt result for iteration tracking
260
- */
261
- export interface ProviderAttempt {
262
- provider: AIProviderName;
263
- model: SupportedModelName;
264
- success: boolean;
265
- error?: string;
266
- stack?: string;
267
- }
268
- /**
269
- * Default provider configurations
270
- */
271
- export declare const DEFAULT_PROVIDER_CONFIGS: ProviderConfig[];
@@ -1,153 +0,0 @@
1
- /**
2
- * Supported AI Provider Names
3
- */
4
- export var AIProviderName;
5
- (function (AIProviderName) {
6
- AIProviderName["BEDROCK"] = "bedrock";
7
- AIProviderName["OPENAI"] = "openai";
8
- AIProviderName["OPENAI_COMPATIBLE"] = "openai-compatible";
9
- AIProviderName["VERTEX"] = "vertex";
10
- AIProviderName["ANTHROPIC"] = "anthropic";
11
- AIProviderName["AZURE"] = "azure";
12
- AIProviderName["GOOGLE_AI"] = "google-ai";
13
- AIProviderName["HUGGINGFACE"] = "huggingface";
14
- AIProviderName["OLLAMA"] = "ollama";
15
- AIProviderName["MISTRAL"] = "mistral";
16
- AIProviderName["LITELLM"] = "litellm";
17
- AIProviderName["SAGEMAKER"] = "sagemaker";
18
- AIProviderName["AUTO"] = "auto";
19
- })(AIProviderName || (AIProviderName = {}));
20
- /**
21
- * Supported Models for Amazon Bedrock
22
- */
23
- export var BedrockModels;
24
- (function (BedrockModels) {
25
- BedrockModels["CLAUDE_3_SONNET"] = "anthropic.claude-3-sonnet-20240229-v1:0";
26
- BedrockModels["CLAUDE_3_HAIKU"] = "anthropic.claude-3-haiku-20240307-v1:0";
27
- BedrockModels["CLAUDE_3_5_SONNET"] = "anthropic.claude-3-5-sonnet-20240620-v1:0";
28
- BedrockModels["CLAUDE_3_7_SONNET"] = "arn:aws:bedrock:us-east-2:225681119357:inference-profile/us.anthropic.claude-3-7-sonnet-20250219-v1:0";
29
- })(BedrockModels || (BedrockModels = {}));
30
- /**
31
- * Supported Models for OpenAI
32
- */
33
- export var OpenAIModels;
34
- (function (OpenAIModels) {
35
- OpenAIModels["GPT_4"] = "gpt-4";
36
- OpenAIModels["GPT_4_TURBO"] = "gpt-4-turbo";
37
- OpenAIModels["GPT_4O"] = "gpt-4o";
38
- OpenAIModels["GPT_4O_MINI"] = "gpt-4o-mini";
39
- OpenAIModels["GPT_3_5_TURBO"] = "gpt-3.5-turbo";
40
- OpenAIModels["O1_PREVIEW"] = "o1-preview";
41
- OpenAIModels["O1_MINI"] = "o1-mini";
42
- })(OpenAIModels || (OpenAIModels = {}));
43
- /**
44
- * Supported Models for Google Vertex AI
45
- */
46
- export var VertexModels;
47
- (function (VertexModels) {
48
- // Claude 4 Series (Latest - May 2025)
49
- VertexModels["CLAUDE_4_0_SONNET"] = "claude-sonnet-4@20250514";
50
- VertexModels["CLAUDE_4_0_OPUS"] = "claude-opus-4@20250514";
51
- // Claude 3.5 Series (Still supported)
52
- VertexModels["CLAUDE_3_5_SONNET"] = "claude-3-5-sonnet-20241022";
53
- VertexModels["CLAUDE_3_5_HAIKU"] = "claude-3-5-haiku-20241022";
54
- // Claude 3 Series (Legacy support)
55
- VertexModels["CLAUDE_3_SONNET"] = "claude-3-sonnet-20240229";
56
- VertexModels["CLAUDE_3_OPUS"] = "claude-3-opus-20240229";
57
- VertexModels["CLAUDE_3_HAIKU"] = "claude-3-haiku-20240307";
58
- // Gemini 2.5 Series (Latest - 2025)
59
- VertexModels["GEMINI_2_5_PRO"] = "gemini-2.5-pro";
60
- VertexModels["GEMINI_2_5_FLASH"] = "gemini-2.5-flash";
61
- VertexModels["GEMINI_2_5_FLASH_LITE"] = "gemini-2.5-flash-lite";
62
- // Gemini 2.0 Series
63
- VertexModels["GEMINI_2_0_FLASH_001"] = "gemini-2.0-flash-001";
64
- // Gemini 1.5 Series (Legacy support)
65
- VertexModels["GEMINI_1_5_PRO"] = "gemini-1.5-pro";
66
- VertexModels["GEMINI_1_5_FLASH"] = "gemini-1.5-flash";
67
- })(VertexModels || (VertexModels = {}));
68
- /**
69
- * Supported Models for Google AI Studio
70
- */
71
- export var GoogleAIModels;
72
- (function (GoogleAIModels) {
73
- // Gemini 2.5 Series (Latest - 2025)
74
- GoogleAIModels["GEMINI_2_5_PRO"] = "gemini-2.5-pro";
75
- GoogleAIModels["GEMINI_2_5_FLASH"] = "gemini-2.5-flash";
76
- GoogleAIModels["GEMINI_2_5_FLASH_LITE"] = "gemini-2.5-flash-lite";
77
- // Gemini 2.0 Series
78
- GoogleAIModels["GEMINI_2_0_FLASH_001"] = "gemini-2.0-flash-001";
79
- // Gemini 1.5 Series (Legacy support)
80
- GoogleAIModels["GEMINI_1_5_PRO"] = "gemini-1.5-pro";
81
- GoogleAIModels["GEMINI_1_5_FLASH"] = "gemini-1.5-flash";
82
- GoogleAIModels["GEMINI_1_5_FLASH_LITE"] = "gemini-1.5-flash-lite";
83
- })(GoogleAIModels || (GoogleAIModels = {}));
84
- /**
85
- * Supported Models for Anthropic (Direct API)
86
- */
87
- export var AnthropicModels;
88
- (function (AnthropicModels) {
89
- // Claude 3.5 Series (Latest)
90
- AnthropicModels["CLAUDE_3_5_SONNET"] = "claude-3-5-sonnet-20241022";
91
- AnthropicModels["CLAUDE_3_5_HAIKU"] = "claude-3-5-haiku-20241022";
92
- // Claude 3 Series (Legacy support)
93
- AnthropicModels["CLAUDE_3_SONNET"] = "claude-3-sonnet-20240229";
94
- AnthropicModels["CLAUDE_3_OPUS"] = "claude-3-opus-20240229";
95
- AnthropicModels["CLAUDE_3_HAIKU"] = "claude-3-haiku-20240307";
96
- })(AnthropicModels || (AnthropicModels = {}));
97
- /**
98
- * API Versions for various providers
99
- */
100
- export var APIVersions;
101
- (function (APIVersions) {
102
- // Azure OpenAI API versions
103
- APIVersions["AZURE_LATEST"] = "2025-04-01-preview";
104
- APIVersions["AZURE_STABLE"] = "2024-10-21";
105
- APIVersions["AZURE_LEGACY"] = "2023-12-01-preview";
106
- // OpenAI API versions
107
- APIVersions["OPENAI_CURRENT"] = "v1";
108
- APIVersions["OPENAI_BETA"] = "v1-beta";
109
- // Google AI API versions
110
- APIVersions["GOOGLE_AI_CURRENT"] = "v1";
111
- APIVersions["GOOGLE_AI_BETA"] = "v1beta";
112
- // Anthropic API versions
113
- APIVersions["ANTHROPIC_CURRENT"] = "2023-06-01";
114
- // Other provider versions can be added here
115
- })(APIVersions || (APIVersions = {}));
116
- /**
117
- * Default model aliases for easy reference
118
- */
119
- export const DEFAULT_MODEL_ALIASES = {
120
- // Latest recommended models per provider
121
- LATEST_OPENAI: OpenAIModels.GPT_4O,
122
- FASTEST_OPENAI: OpenAIModels.GPT_4O_MINI,
123
- LATEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_SONNET,
124
- FASTEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_HAIKU,
125
- LATEST_GOOGLE: GoogleAIModels.GEMINI_2_5_PRO,
126
- FASTEST_GOOGLE: GoogleAIModels.GEMINI_2_5_FLASH,
127
- // Best models by use case
128
- BEST_CODING: AnthropicModels.CLAUDE_3_5_SONNET,
129
- BEST_ANALYSIS: GoogleAIModels.GEMINI_2_5_PRO,
130
- BEST_CREATIVE: AnthropicModels.CLAUDE_3_5_SONNET,
131
- BEST_VALUE: GoogleAIModels.GEMINI_2_5_FLASH,
132
- };
133
- /**
134
- * @deprecated Use DEFAULT_MODEL_ALIASES instead. Will be removed in future version.
135
- */
136
- export const ModelAliases = DEFAULT_MODEL_ALIASES;
137
- /**
138
- * Default provider configurations
139
- */
140
- export const DEFAULT_PROVIDER_CONFIGS = [
141
- {
142
- provider: AIProviderName.BEDROCK,
143
- models: [BedrockModels.CLAUDE_3_7_SONNET, BedrockModels.CLAUDE_3_5_SONNET],
144
- },
145
- {
146
- provider: AIProviderName.VERTEX,
147
- models: [VertexModels.CLAUDE_4_0_SONNET, VertexModels.GEMINI_2_5_FLASH],
148
- },
149
- {
150
- provider: AIProviderName.OPENAI,
151
- models: [OpenAIModels.GPT_4O, OpenAIModels.GPT_4O_MINI],
152
- },
153
- ];
@@ -1,271 +0,0 @@
1
- import type { Tool, Schema } from "ai";
2
- import type { ZodUnknownSchema, ValidationSchema } from "../types/typeAliases.js";
3
- import type { GenerateResult } from "../types/generateTypes.js";
4
- import type { StreamOptions, StreamResult } from "../types/streamTypes.js";
5
- import type { JsonValue } from "../types/common.js";
6
- import type { ChatMessage, ConversationMemoryConfig } from "../types/conversation.js";
7
- import type { TokenUsage, AnalyticsData } from "../types/analytics.js";
8
- import type { EvaluationData } from "../index.js";
9
- export type { EvaluationData };
10
- import type { MiddlewareFactoryOptions } from "../types/middlewareTypes.js";
11
- export interface TextGenerationResult {
12
- content: string;
13
- provider?: string;
14
- model?: string;
15
- usage?: TokenUsage;
16
- responseTime?: number;
17
- toolsUsed?: string[];
18
- toolExecutions?: Array<{
19
- toolName: string;
20
- executionTime: number;
21
- success: boolean;
22
- serverId?: string;
23
- }>;
24
- enhancedWithTools?: boolean;
25
- availableTools?: Array<{
26
- name: string;
27
- description: string;
28
- server: string;
29
- category?: string;
30
- }>;
31
- analytics?: AnalyticsData;
32
- evaluation?: EvaluationData;
33
- }
34
- /**
35
- * Supported AI Provider Names
36
- */
37
- export declare enum AIProviderName {
38
- BEDROCK = "bedrock",
39
- OPENAI = "openai",
40
- OPENAI_COMPATIBLE = "openai-compatible",
41
- VERTEX = "vertex",
42
- ANTHROPIC = "anthropic",
43
- AZURE = "azure",
44
- GOOGLE_AI = "google-ai",
45
- HUGGINGFACE = "huggingface",
46
- OLLAMA = "ollama",
47
- MISTRAL = "mistral",
48
- LITELLM = "litellm",
49
- SAGEMAKER = "sagemaker",
50
- AUTO = "auto"
51
- }
52
- /**
53
- * Supported Models for Amazon Bedrock
54
- */
55
- export declare enum BedrockModels {
56
- CLAUDE_3_SONNET = "anthropic.claude-3-sonnet-20240229-v1:0",
57
- CLAUDE_3_HAIKU = "anthropic.claude-3-haiku-20240307-v1:0",
58
- CLAUDE_3_5_SONNET = "anthropic.claude-3-5-sonnet-20240620-v1:0",
59
- CLAUDE_3_7_SONNET = "arn:aws:bedrock:us-east-2:225681119357:inference-profile/us.anthropic.claude-3-7-sonnet-20250219-v1:0"
60
- }
61
- /**
62
- * Supported Models for OpenAI
63
- */
64
- export declare enum OpenAIModels {
65
- GPT_4 = "gpt-4",
66
- GPT_4_TURBO = "gpt-4-turbo",
67
- GPT_4O = "gpt-4o",
68
- GPT_4O_MINI = "gpt-4o-mini",
69
- GPT_3_5_TURBO = "gpt-3.5-turbo",
70
- O1_PREVIEW = "o1-preview",
71
- O1_MINI = "o1-mini"
72
- }
73
- /**
74
- * Supported Models for Google Vertex AI
75
- */
76
- export declare enum VertexModels {
77
- CLAUDE_4_0_SONNET = "claude-sonnet-4@20250514",
78
- CLAUDE_4_0_OPUS = "claude-opus-4@20250514",
79
- CLAUDE_3_5_SONNET = "claude-3-5-sonnet-20241022",
80
- CLAUDE_3_5_HAIKU = "claude-3-5-haiku-20241022",
81
- CLAUDE_3_SONNET = "claude-3-sonnet-20240229",
82
- CLAUDE_3_OPUS = "claude-3-opus-20240229",
83
- CLAUDE_3_HAIKU = "claude-3-haiku-20240307",
84
- GEMINI_2_5_PRO = "gemini-2.5-pro",
85
- GEMINI_2_5_FLASH = "gemini-2.5-flash",
86
- GEMINI_2_5_FLASH_LITE = "gemini-2.5-flash-lite",
87
- GEMINI_2_0_FLASH_001 = "gemini-2.0-flash-001",
88
- GEMINI_1_5_PRO = "gemini-1.5-pro",
89
- GEMINI_1_5_FLASH = "gemini-1.5-flash"
90
- }
91
- /**
92
- * Supported Models for Google AI Studio
93
- */
94
- export declare enum GoogleAIModels {
95
- GEMINI_2_5_PRO = "gemini-2.5-pro",
96
- GEMINI_2_5_FLASH = "gemini-2.5-flash",
97
- GEMINI_2_5_FLASH_LITE = "gemini-2.5-flash-lite",
98
- GEMINI_2_0_FLASH_001 = "gemini-2.0-flash-001",
99
- GEMINI_1_5_PRO = "gemini-1.5-pro",
100
- GEMINI_1_5_FLASH = "gemini-1.5-flash",
101
- GEMINI_1_5_FLASH_LITE = "gemini-1.5-flash-lite"
102
- }
103
- /**
104
- * Supported Models for Anthropic (Direct API)
105
- */
106
- export declare enum AnthropicModels {
107
- CLAUDE_3_5_SONNET = "claude-3-5-sonnet-20241022",
108
- CLAUDE_3_5_HAIKU = "claude-3-5-haiku-20241022",
109
- CLAUDE_3_SONNET = "claude-3-sonnet-20240229",
110
- CLAUDE_3_OPUS = "claude-3-opus-20240229",
111
- CLAUDE_3_HAIKU = "claude-3-haiku-20240307"
112
- }
113
- /**
114
- * API Versions for various providers
115
- */
116
- export declare enum APIVersions {
117
- AZURE_LATEST = "2025-04-01-preview",
118
- AZURE_STABLE = "2024-10-21",
119
- AZURE_LEGACY = "2023-12-01-preview",
120
- OPENAI_CURRENT = "v1",
121
- OPENAI_BETA = "v1-beta",
122
- GOOGLE_AI_CURRENT = "v1",
123
- GOOGLE_AI_BETA = "v1beta",
124
- ANTHROPIC_CURRENT = "2023-06-01"
125
- }
126
- /**
127
- * Default model aliases for easy reference
128
- */
129
- export declare const DEFAULT_MODEL_ALIASES: {
130
- readonly LATEST_OPENAI: OpenAIModels.GPT_4O;
131
- readonly FASTEST_OPENAI: OpenAIModels.GPT_4O_MINI;
132
- readonly LATEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_SONNET;
133
- readonly FASTEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_HAIKU;
134
- readonly LATEST_GOOGLE: GoogleAIModels.GEMINI_2_5_PRO;
135
- readonly FASTEST_GOOGLE: GoogleAIModels.GEMINI_2_5_FLASH;
136
- readonly BEST_CODING: AnthropicModels.CLAUDE_3_5_SONNET;
137
- readonly BEST_ANALYSIS: GoogleAIModels.GEMINI_2_5_PRO;
138
- readonly BEST_CREATIVE: AnthropicModels.CLAUDE_3_5_SONNET;
139
- readonly BEST_VALUE: GoogleAIModels.GEMINI_2_5_FLASH;
140
- };
141
- /**
142
- * @deprecated Use DEFAULT_MODEL_ALIASES instead. Will be removed in future version.
143
- */
144
- export declare const ModelAliases: {
145
- readonly LATEST_OPENAI: OpenAIModels.GPT_4O;
146
- readonly FASTEST_OPENAI: OpenAIModels.GPT_4O_MINI;
147
- readonly LATEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_SONNET;
148
- readonly FASTEST_ANTHROPIC: AnthropicModels.CLAUDE_3_5_HAIKU;
149
- readonly LATEST_GOOGLE: GoogleAIModels.GEMINI_2_5_PRO;
150
- readonly FASTEST_GOOGLE: GoogleAIModels.GEMINI_2_5_FLASH;
151
- readonly BEST_CODING: AnthropicModels.CLAUDE_3_5_SONNET;
152
- readonly BEST_ANALYSIS: GoogleAIModels.GEMINI_2_5_PRO;
153
- readonly BEST_CREATIVE: AnthropicModels.CLAUDE_3_5_SONNET;
154
- readonly BEST_VALUE: GoogleAIModels.GEMINI_2_5_FLASH;
155
- };
156
- /**
157
- * Union type of all supported model names
158
- */
159
- export type SupportedModelName = BedrockModels | OpenAIModels | VertexModels | GoogleAIModels | AnthropicModels;
160
- /**
161
- * Provider configuration specifying provider and its available models
162
- */
163
- export interface ProviderConfig {
164
- provider: AIProviderName;
165
- models: SupportedModelName[];
166
- }
167
- /**
168
- * Options for AI requests with unified provider configuration
169
- */
170
- export interface StreamingOptions {
171
- providers: ProviderConfig[];
172
- temperature?: number;
173
- maxTokens?: number;
174
- systemPrompt?: string;
175
- }
176
- /**
177
- * Text generation options interface
178
- * Extended to support multimodal content with zero breaking changes
179
- */
180
- export interface TextGenerationOptions {
181
- prompt?: string;
182
- input?: {
183
- text: string;
184
- images?: Array<Buffer | string>;
185
- content?: Array<import("../types/content.js").TextContent | import("../types/content.js").ImageContent>;
186
- };
187
- provider?: AIProviderName;
188
- model?: string;
189
- temperature?: number;
190
- maxTokens?: number;
191
- systemPrompt?: string;
192
- schema?: ZodUnknownSchema | Schema<unknown>;
193
- tools?: Record<string, Tool>;
194
- timeout?: number | string;
195
- disableTools?: boolean;
196
- maxSteps?: number;
197
- enableEvaluation?: boolean;
198
- enableAnalytics?: boolean;
199
- context?: Record<string, JsonValue>;
200
- evaluationDomain?: string;
201
- toolUsageContext?: string;
202
- conversationHistory?: Array<{
203
- role: string;
204
- content: string;
205
- }>;
206
- conversationMessages?: ChatMessage[];
207
- conversationMemoryConfig?: Partial<ConversationMemoryConfig>;
208
- originalPrompt?: string;
209
- middleware?: MiddlewareFactoryOptions;
210
- expectedOutcome?: string;
211
- evaluationCriteria?: string[];
212
- }
213
- export type { AnalyticsData } from "../types/analytics.js";
214
- /**
215
- * Enhanced result interfaces with optional analytics/evaluation
216
- */
217
- export interface EnhancedGenerateResult extends GenerateResult {
218
- analytics?: AnalyticsData;
219
- evaluation?: EvaluationData;
220
- }
221
- /**
222
- * Phase 2: Enhanced Streaming Infrastructure
223
- * Progress tracking and metadata for streaming operations
224
- */
225
- export interface StreamingProgressData {
226
- chunkCount: number;
227
- totalBytes: number;
228
- chunkSize: number;
229
- elapsedTime: number;
230
- estimatedRemaining?: number;
231
- streamId?: string;
232
- phase: "initializing" | "streaming" | "processing" | "complete" | "error";
233
- }
234
- export interface StreamingMetadata {
235
- startTime: number;
236
- endTime?: number;
237
- totalDuration?: number;
238
- averageChunkSize: number;
239
- maxChunkSize: number;
240
- minChunkSize: number;
241
- throughputBytesPerSecond?: number;
242
- streamingProvider: string;
243
- modelUsed: string;
244
- }
245
- export type ProgressCallback = (progress: StreamingProgressData) => void;
246
- /**
247
- * AI Provider interface with flexible parameter support
248
- */
249
- export interface AIProvider {
250
- stream(optionsOrPrompt: StreamOptions | string, analysisSchema?: ValidationSchema): Promise<StreamResult>;
251
- generate(optionsOrPrompt: TextGenerationOptions | string, analysisSchema?: ValidationSchema): Promise<EnhancedGenerateResult | null>;
252
- gen(optionsOrPrompt: TextGenerationOptions | string, analysisSchema?: ValidationSchema): Promise<EnhancedGenerateResult | null>;
253
- setupToolExecutor(sdk: {
254
- customTools: Map<string, unknown>;
255
- executeTool: (toolName: string, params: unknown) => Promise<unknown>;
256
- }, functionTag: string): void;
257
- }
258
- /**
259
- * Provider attempt result for iteration tracking
260
- */
261
- export interface ProviderAttempt {
262
- provider: AIProviderName;
263
- model: SupportedModelName;
264
- success: boolean;
265
- error?: string;
266
- stack?: string;
267
- }
268
- /**
269
- * Default provider configurations
270
- */
271
- export declare const DEFAULT_PROVIDER_CONFIGS: ProviderConfig[];