@aeye/openai 0.1.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/README.md +921 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/openai.d.ts +444 -0
- package/dist/openai.d.ts.map +1 -0
- package/dist/openai.js +1844 -0
- package/dist/openai.js.map +1 -0
- package/dist/retry.d.ts +117 -0
- package/dist/retry.d.ts.map +1 -0
- package/dist/retry.js +224 -0
- package/dist/retry.js.map +1 -0
- package/dist/types.d.ts +94 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +129 -0
- package/dist/types.js.map +1 -0
- package/package.json +57 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../src/openai.ts"],"names":[],"mappings":"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"}
|
package/dist/retry.d.ts
ADDED
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retry Utility Module
|
|
3
|
+
*
|
|
4
|
+
* Provides exponential backoff retry logic with jitter, timeout support,
|
|
5
|
+
* and flexible configuration for handling transient failures.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Configuration for retry behavior.
|
|
9
|
+
*/
|
|
10
|
+
export interface RetryConfig {
|
|
11
|
+
/** Maximum number of retry attempts (default: 3) */
|
|
12
|
+
maxRetries?: number;
|
|
13
|
+
/** Initial delay in milliseconds before first retry (default: 1000) */
|
|
14
|
+
initialDelay?: number;
|
|
15
|
+
/** Maximum delay in milliseconds between retries (default: 60000) */
|
|
16
|
+
maxDelay?: number;
|
|
17
|
+
/** Multiplier for exponential backoff (default: 2) */
|
|
18
|
+
backoffMultiplier?: number;
|
|
19
|
+
/** Whether to add random jitter to delays (default: true) */
|
|
20
|
+
jitter?: boolean;
|
|
21
|
+
/** HTTP status codes that should trigger a retry (default: [0, 429, 500, 503]) */
|
|
22
|
+
retryableStatuses?: number[];
|
|
23
|
+
/** Regex patterns for error messages that should trigger a retry */
|
|
24
|
+
retryableMessages?: RegExp[];
|
|
25
|
+
/** Timeout in milliseconds for each request attempt (optional) */
|
|
26
|
+
timeout?: number;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Context information passed to retry event handlers.
|
|
30
|
+
*/
|
|
31
|
+
export interface RetryContext {
|
|
32
|
+
/** The operation being performed (e.g., 'chat', 'image', 'transcribe') */
|
|
33
|
+
operation: string;
|
|
34
|
+
/** The model being used (if applicable) */
|
|
35
|
+
model?: string;
|
|
36
|
+
/** The provider name */
|
|
37
|
+
provider: string;
|
|
38
|
+
/** Timestamp when the operation started */
|
|
39
|
+
startTime: number;
|
|
40
|
+
/** Optional request identifier for tracking */
|
|
41
|
+
requestId?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Event handlers for retry lifecycle events.
|
|
45
|
+
*/
|
|
46
|
+
export interface RetryEvents {
|
|
47
|
+
/** Called before each retry attempt */
|
|
48
|
+
onRetry?: (attempt: number, error: Error, delay: number, context: RetryContext) => void;
|
|
49
|
+
/** Called when a request times out */
|
|
50
|
+
onTimeout?: (duration: number, context: RetryContext) => void;
|
|
51
|
+
/** Called when max retries are exceeded */
|
|
52
|
+
onMaxRetriesExceeded?: (attempts: number, lastError: Error, context: RetryContext) => void;
|
|
53
|
+
/** Called when operation succeeds (includes retry count and total duration) */
|
|
54
|
+
onSuccess?: (attempts: number, duration: number, context: RetryContext) => void;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Parsed information from a context window error.
|
|
58
|
+
*/
|
|
59
|
+
export interface ContextWindowInfo {
|
|
60
|
+
/** Estimated context window size in tokens (if parseable from error) */
|
|
61
|
+
contextWindow?: number;
|
|
62
|
+
/** The original error message */
|
|
63
|
+
message: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Checks if an error is related to context window limits.
|
|
67
|
+
*
|
|
68
|
+
* @param error - The error to check
|
|
69
|
+
* @returns True if the error indicates a context window issue
|
|
70
|
+
*/
|
|
71
|
+
export declare function isContextWindowError(error: any): boolean;
|
|
72
|
+
/**
|
|
73
|
+
* Parses context window information from an error.
|
|
74
|
+
*
|
|
75
|
+
* @param error - The error to parse
|
|
76
|
+
* @returns Context window information if parseable
|
|
77
|
+
*/
|
|
78
|
+
export declare function parseContextWindowError(error: any): ContextWindowInfo | null;
|
|
79
|
+
/**
|
|
80
|
+
* Checks if an error should trigger a retry based on status code and message patterns.
|
|
81
|
+
*
|
|
82
|
+
* @param error - The error to check
|
|
83
|
+
* @param config - Retry configuration
|
|
84
|
+
* @returns True if the error is retryable
|
|
85
|
+
*/
|
|
86
|
+
export declare function isRetryableError(error: any, config: RetryConfig): boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Calculates the delay before the next retry attempt using exponential backoff.
|
|
89
|
+
*
|
|
90
|
+
* @param attempt - The current attempt number (0-indexed)
|
|
91
|
+
* @param config - Retry configuration
|
|
92
|
+
* @returns Delay in milliseconds
|
|
93
|
+
*/
|
|
94
|
+
export declare function calculateBackoff(attempt: number, config: RetryConfig): number;
|
|
95
|
+
/**
|
|
96
|
+
* Wraps an async operation with retry logic and timeout support.
|
|
97
|
+
*
|
|
98
|
+
* @param operation - The async operation to execute
|
|
99
|
+
* @param context - Context information for event handlers
|
|
100
|
+
* @param config - Retry configuration
|
|
101
|
+
* @param events - Event handlers
|
|
102
|
+
* @param signal - Optional AbortSignal for cancellation
|
|
103
|
+
* @returns Promise that resolves with the operation result
|
|
104
|
+
* @throws The last error if all retries are exhausted
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* ```typescript
|
|
108
|
+
* const result = await withRetry(
|
|
109
|
+
* async () => await apiCall(),
|
|
110
|
+
* { operation: 'chat', provider: 'openai' },
|
|
111
|
+
* { maxRetries: 3, initialDelay: 1000 },
|
|
112
|
+
* { onRetry: (attempt, error, delay) => console.log(`Retry ${attempt} after ${delay}ms`) }
|
|
113
|
+
* );
|
|
114
|
+
* ```
|
|
115
|
+
*/
|
|
116
|
+
export declare function withRetry<T>(operation: () => Promise<T>, context: RetryContext, config?: RetryConfig, events?: RetryEvents, signal?: AbortSignal): Promise<T>;
|
|
117
|
+
//# sourceMappingURL=retry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,6DAA6D;IAC7D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kFAAkF;IAClF,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,oEAAoE;IACpE,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,uCAAuC;IACvC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACxF,sCAAsC;IACtC,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9D,2CAA2C;IAC3C,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3F,+EAA+E;IAC/E,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;CACjF;AA2BD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAQxD;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,GAAG,GAAG,iBAAiB,GAAG,IAAI,CA2B5E;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAuBzE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAkB7E;AAYD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,OAAO,EAAE,YAAY,EACrB,MAAM,GAAE,WAAgB,EACxB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,CAAC,CAAC,CAgFZ"}
|
package/dist/retry.js
ADDED
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retry Utility Module
|
|
3
|
+
*
|
|
4
|
+
* Provides exponential backoff retry logic with jitter, timeout support,
|
|
5
|
+
* and flexible configuration for handling transient failures.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Default retry configuration.
|
|
9
|
+
*/
|
|
10
|
+
const DEFAULT_RETRY_CONFIG = {
|
|
11
|
+
maxRetries: 3,
|
|
12
|
+
initialDelay: 1000,
|
|
13
|
+
maxDelay: 60000,
|
|
14
|
+
backoffMultiplier: 2,
|
|
15
|
+
jitter: true,
|
|
16
|
+
retryableStatuses: [0, 429, 500, 503],
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Context window error patterns for 413 status code.
|
|
20
|
+
* These patterns indicate the request exceeded the model's context window.
|
|
21
|
+
*/
|
|
22
|
+
const CONTEXT_WINDOW_PATTERNS = [
|
|
23
|
+
/context.*(?:length|window|size|limit).*exceeded/i,
|
|
24
|
+
/maximum.*context.*(?:length|window|size)/i,
|
|
25
|
+
/(?:prompt|input|message).*too.*(?:long|large)/i,
|
|
26
|
+
/token.*limit.*exceeded/i,
|
|
27
|
+
/context.*capacity/i,
|
|
28
|
+
/request\s+too\s+large/i,
|
|
29
|
+
];
|
|
30
|
+
/**
|
|
31
|
+
* Checks if an error is related to context window limits.
|
|
32
|
+
*
|
|
33
|
+
* @param error - The error to check
|
|
34
|
+
* @returns True if the error indicates a context window issue
|
|
35
|
+
*/
|
|
36
|
+
export function isContextWindowError(error) {
|
|
37
|
+
if (!error)
|
|
38
|
+
return false;
|
|
39
|
+
const status = error.status || error.statusCode;
|
|
40
|
+
if (status !== 413 && status !== 429)
|
|
41
|
+
return false;
|
|
42
|
+
const message = error.message || '';
|
|
43
|
+
return CONTEXT_WINDOW_PATTERNS.some((pattern) => pattern.test(message));
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Parses context window information from an error.
|
|
47
|
+
*
|
|
48
|
+
* @param error - The error to parse
|
|
49
|
+
* @returns Context window information if parseable
|
|
50
|
+
*/
|
|
51
|
+
export function parseContextWindowError(error) {
|
|
52
|
+
if (!isContextWindowError(error))
|
|
53
|
+
return null;
|
|
54
|
+
const message = error.message || '';
|
|
55
|
+
// Try to extract context window size from error message
|
|
56
|
+
// Common patterns: "maximum context length is 128000", "context window of 8192"
|
|
57
|
+
const sizePatterns = [
|
|
58
|
+
/(?:maximum|max).*context.*(?:length|window|size).*?(?:is|of)?\s*(\d+)/i,
|
|
59
|
+
/context.*(?:length|window|size).*?(?:is|of)?\s*(\d+)/i,
|
|
60
|
+
/(\d+).*token.*(?:limit|maximum|max)/i,
|
|
61
|
+
/limit\s+(\d+)/i,
|
|
62
|
+
];
|
|
63
|
+
let contextWindow;
|
|
64
|
+
for (const pattern of sizePatterns) {
|
|
65
|
+
const match = message.match(pattern);
|
|
66
|
+
if (match?.[1]) {
|
|
67
|
+
contextWindow = parseInt(match[1], 10);
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return {
|
|
72
|
+
contextWindow,
|
|
73
|
+
message,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Checks if an error should trigger a retry based on status code and message patterns.
|
|
78
|
+
*
|
|
79
|
+
* @param error - The error to check
|
|
80
|
+
* @param config - Retry configuration
|
|
81
|
+
* @returns True if the error is retryable
|
|
82
|
+
*/
|
|
83
|
+
export function isRetryableError(error, config) {
|
|
84
|
+
if (!error)
|
|
85
|
+
return false;
|
|
86
|
+
// Never retry context window errors (413 with specific messages)
|
|
87
|
+
if (isContextWindowError(error)) {
|
|
88
|
+
return false;
|
|
89
|
+
}
|
|
90
|
+
// Check status code
|
|
91
|
+
const status = error.status || error.statusCode || 0;
|
|
92
|
+
const retryableStatuses = config.retryableStatuses || DEFAULT_RETRY_CONFIG.retryableStatuses;
|
|
93
|
+
if (retryableStatuses.includes(status)) {
|
|
94
|
+
return true;
|
|
95
|
+
}
|
|
96
|
+
// Check message patterns
|
|
97
|
+
if (config.retryableMessages && config.retryableMessages.length > 0) {
|
|
98
|
+
const message = error.message || '';
|
|
99
|
+
return config.retryableMessages.some((pattern) => pattern.test(message));
|
|
100
|
+
}
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Calculates the delay before the next retry attempt using exponential backoff.
|
|
105
|
+
*
|
|
106
|
+
* @param attempt - The current attempt number (0-indexed)
|
|
107
|
+
* @param config - Retry configuration
|
|
108
|
+
* @returns Delay in milliseconds
|
|
109
|
+
*/
|
|
110
|
+
export function calculateBackoff(attempt, config) {
|
|
111
|
+
const initialDelay = config.initialDelay ?? DEFAULT_RETRY_CONFIG.initialDelay;
|
|
112
|
+
const maxDelay = config.maxDelay ?? DEFAULT_RETRY_CONFIG.maxDelay;
|
|
113
|
+
const multiplier = config.backoffMultiplier ?? DEFAULT_RETRY_CONFIG.backoffMultiplier;
|
|
114
|
+
const jitter = config.jitter ?? DEFAULT_RETRY_CONFIG.jitter;
|
|
115
|
+
// Calculate exponential backoff: initialDelay * (multiplier ^ attempt)
|
|
116
|
+
let delay = initialDelay * Math.pow(multiplier, attempt);
|
|
117
|
+
// Cap at maxDelay
|
|
118
|
+
delay = Math.min(delay, maxDelay);
|
|
119
|
+
// Add jitter: random value between 0 and delay
|
|
120
|
+
if (jitter) {
|
|
121
|
+
delay = Math.random() * delay;
|
|
122
|
+
}
|
|
123
|
+
return Math.floor(delay);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Sleeps for the specified duration.
|
|
127
|
+
*
|
|
128
|
+
* @param ms - Duration in milliseconds
|
|
129
|
+
* @returns Promise that resolves after the delay
|
|
130
|
+
*/
|
|
131
|
+
function sleep(ms) {
|
|
132
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Wraps an async operation with retry logic and timeout support.
|
|
136
|
+
*
|
|
137
|
+
* @param operation - The async operation to execute
|
|
138
|
+
* @param context - Context information for event handlers
|
|
139
|
+
* @param config - Retry configuration
|
|
140
|
+
* @param events - Event handlers
|
|
141
|
+
* @param signal - Optional AbortSignal for cancellation
|
|
142
|
+
* @returns Promise that resolves with the operation result
|
|
143
|
+
* @throws The last error if all retries are exhausted
|
|
144
|
+
*
|
|
145
|
+
* @example
|
|
146
|
+
* ```typescript
|
|
147
|
+
* const result = await withRetry(
|
|
148
|
+
* async () => await apiCall(),
|
|
149
|
+
* { operation: 'chat', provider: 'openai' },
|
|
150
|
+
* { maxRetries: 3, initialDelay: 1000 },
|
|
151
|
+
* { onRetry: (attempt, error, delay) => console.log(`Retry ${attempt} after ${delay}ms`) }
|
|
152
|
+
* );
|
|
153
|
+
* ```
|
|
154
|
+
*/
|
|
155
|
+
export async function withRetry(operation, context, config = {}, events, signal) {
|
|
156
|
+
const maxRetries = config.maxRetries ?? DEFAULT_RETRY_CONFIG.maxRetries;
|
|
157
|
+
const timeout = config.timeout;
|
|
158
|
+
let lastError;
|
|
159
|
+
let attempt = 0;
|
|
160
|
+
while (attempt <= maxRetries) {
|
|
161
|
+
// Check if operation was cancelled
|
|
162
|
+
if (signal?.aborted) {
|
|
163
|
+
throw new Error('Operation aborted');
|
|
164
|
+
}
|
|
165
|
+
try {
|
|
166
|
+
let result;
|
|
167
|
+
// Apply timeout if configured
|
|
168
|
+
if (timeout) {
|
|
169
|
+
const timeoutController = new AbortController();
|
|
170
|
+
const timeoutId = setTimeout(() => timeoutController.abort(), timeout);
|
|
171
|
+
try {
|
|
172
|
+
result = await Promise.race([
|
|
173
|
+
operation(),
|
|
174
|
+
new Promise((_, reject) => {
|
|
175
|
+
timeoutController.signal.addEventListener('abort', () => {
|
|
176
|
+
events?.onTimeout?.(timeout, context);
|
|
177
|
+
reject(new Error(`Operation timed out after ${timeout}ms`));
|
|
178
|
+
});
|
|
179
|
+
}),
|
|
180
|
+
]);
|
|
181
|
+
clearTimeout(timeoutId);
|
|
182
|
+
}
|
|
183
|
+
catch (error) {
|
|
184
|
+
clearTimeout(timeoutId);
|
|
185
|
+
throw error;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
result = await operation();
|
|
190
|
+
}
|
|
191
|
+
// Success! Emit event and return result
|
|
192
|
+
const duration = Date.now() - context.startTime;
|
|
193
|
+
events?.onSuccess?.(attempt, duration, context);
|
|
194
|
+
return result;
|
|
195
|
+
}
|
|
196
|
+
catch (e) {
|
|
197
|
+
lastError = e;
|
|
198
|
+
// Check for context window errors (413 with specific patterns)
|
|
199
|
+
if (isContextWindowError(e)) {
|
|
200
|
+
// Don't retry, but let the caller handle this specially
|
|
201
|
+
throw e;
|
|
202
|
+
}
|
|
203
|
+
// Check if we should retry
|
|
204
|
+
const shouldRetry = attempt < maxRetries && isRetryableError(e, config);
|
|
205
|
+
if (!shouldRetry) {
|
|
206
|
+
// No more retries or non-retryable error
|
|
207
|
+
if (attempt >= maxRetries) {
|
|
208
|
+
events?.onMaxRetriesExceeded?.(attempt, lastError, context);
|
|
209
|
+
}
|
|
210
|
+
throw e;
|
|
211
|
+
}
|
|
212
|
+
// Calculate backoff delay
|
|
213
|
+
const delay = calculateBackoff(attempt, config);
|
|
214
|
+
// Emit retry event
|
|
215
|
+
events?.onRetry?.(attempt, lastError, delay, context);
|
|
216
|
+
// Wait before retrying
|
|
217
|
+
await sleep(delay);
|
|
218
|
+
attempt++;
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
// Should never reach here, but just in case
|
|
222
|
+
throw lastError || new Error('Operation failed after all retries');
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=retry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provider-specific types and utilities
|
|
3
|
+
*
|
|
4
|
+
* Common types and helpers for implementing AI providers.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Base error class for provider-specific errors.
|
|
8
|
+
*
|
|
9
|
+
* Wraps underlying errors and adds provider context to error messages.
|
|
10
|
+
* All provider errors extend from this base class.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* throw new ProviderError('openai', 'Invalid model specified', originalError);
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare class ProviderError extends Error {
|
|
18
|
+
provider: string;
|
|
19
|
+
cause?: Error | undefined;
|
|
20
|
+
constructor(provider: string, message: string, cause?: Error | undefined);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Error thrown when authentication with the provider fails.
|
|
24
|
+
*
|
|
25
|
+
* This typically indicates an invalid API key, expired credentials,
|
|
26
|
+
* or insufficient permissions.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* throw new ProviderAuthError('openai', originalError);
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export declare class ProviderAuthError extends ProviderError {
|
|
34
|
+
constructor(provider: string, cause?: Error);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Error thrown when rate limits are exceeded.
|
|
38
|
+
*
|
|
39
|
+
* Contains information about when the request can be retried.
|
|
40
|
+
* Rate limits are enforced by the provider to control API usage.
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```typescript
|
|
44
|
+
* throw new RateLimitError('openai', 'Too many requests', 60, originalError);
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export declare class RateLimitError extends ProviderError {
|
|
48
|
+
retryAfter?: number | undefined;
|
|
49
|
+
constructor(provider: string, message: string, retryAfter?: number | undefined, cause?: Error);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Error thrown when provider rate limits are exceeded.
|
|
53
|
+
*
|
|
54
|
+
* Specialized version of RateLimitError with a standard message.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```typescript
|
|
58
|
+
* throw new ProviderRateLimitError('openai', 60, originalError);
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
export declare class ProviderRateLimitError extends RateLimitError {
|
|
62
|
+
retryAfter?: number | undefined;
|
|
63
|
+
constructor(provider: string, retryAfter?: number | undefined, cause?: Error);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Error thrown when quota limits are exceeded.
|
|
67
|
+
*
|
|
68
|
+
* This indicates the account has reached its usage quota
|
|
69
|
+
* and needs to upgrade or wait for quota reset.
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```typescript
|
|
73
|
+
* throw new ProviderQuotaError('openai', originalError);
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export declare class ProviderQuotaError extends ProviderError {
|
|
77
|
+
constructor(provider: string, cause?: Error);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Error thrown when the request exceeds the model's context window.
|
|
81
|
+
*
|
|
82
|
+
* This typically occurs with status 413 when the input is too long
|
|
83
|
+
* for the model's maximum context length.
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```typescript
|
|
87
|
+
* throw new ContextWindowError('openai', 'Input too long', 128000, originalError);
|
|
88
|
+
* ```
|
|
89
|
+
*/
|
|
90
|
+
export declare class ContextWindowError extends ProviderError {
|
|
91
|
+
contextWindow?: number | undefined;
|
|
92
|
+
constructor(provider: string, message: string, contextWindow?: number | undefined, cause?: Error);
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH;;;;;;;;;;GAUG;AACH,qBAAa,aAAc,SAAQ,KAAK;IAG7B,QAAQ,EAAE,MAAM;IAGhB,KAAK,CAAC,EAAE,KAAK;gBAHb,QAAQ,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAER,KAAK,CAAC,EAAE,KAAK,YAAA;CAKvB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,iBAAkB,SAAQ,aAAa;gBACtC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAI5C;AAED;;;;;;;;;;GAUG;AACH,qBAAa,cAAe,SAAQ,aAAa;IAKtC,UAAU,CAAC,EAAE,MAAM;gBAH1B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EAER,UAAU,CAAC,EAAE,MAAM,YAAA,EAC1B,KAAK,CAAC,EAAE,KAAK;CAKhB;AAED;;;;;;;;;GASG;AACH,qBAAa,sBAAuB,SAAQ,cAAc;IAI/C,UAAU,CAAC,EAAE,MAAM;gBAF1B,QAAQ,EAAE,MAAM,EAET,UAAU,CAAC,EAAE,MAAM,YAAA,EAC1B,KAAK,CAAC,EAAE,KAAK;CAKhB;AAED;;;;;;;;;;GAUG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;gBACvC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAI5C;AAED;;;;;;;;;;GAUG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;IAK1C,aAAa,CAAC,EAAE,MAAM;gBAH7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EAER,aAAa,CAAC,EAAE,MAAM,YAAA,EAC7B,KAAK,CAAC,EAAE,KAAK;CAKhB"}
|