@ai-sdk/openai-compatible 3.0.59 → 3.0.61

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/dist/index.d.ts CHANGED
@@ -1,390 +1,402 @@
1
- import * as _ai_sdk_provider from '@ai-sdk/provider';
2
- import { SharedV4ProviderMetadata, LanguageModelV4, LanguageModelV4Usage, LanguageModelV4CallOptions, LanguageModelV4GenerateResult, LanguageModelV4StreamResult, EmbeddingModelV4, ImageModelV4, ProviderV4 } from '@ai-sdk/provider';
3
- import { FetchFunction, WORKFLOW_SERIALIZE, WORKFLOW_DESERIALIZE } from '@ai-sdk/provider-utils';
4
- import { ZodType, z } from 'zod/v4';
5
-
1
+ import { EmbeddingModelV4, ImageModelV4, LanguageModelV4, LanguageModelV4CallOptions, LanguageModelV4GenerateResult, LanguageModelV4StreamResult, LanguageModelV4Usage, ProviderV4, SharedV4ProviderMetadata } from "@ai-sdk/provider";
2
+ import { FetchFunction, WORKFLOW_DESERIALIZE, WORKFLOW_SERIALIZE } from "@ai-sdk/provider-utils";
3
+ import { ZodType, z } from "zod/v4";
4
+ //#region src/openai-compatible-error.d.ts
6
5
  declare const openaiCompatibleErrorDataSchema: z.ZodObject<{
7
- error: z.ZodObject<{
8
- message: z.ZodString;
9
- type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10
- param: z.ZodOptional<z.ZodNullable<z.ZodAny>>;
11
- code: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
12
- }, z.core.$strip>;
6
+ error: z.ZodObject<{
7
+ message: z.ZodString;
8
+ type: z.ZodOptional<z.ZodNullable<z.ZodString>>;
9
+ param: z.ZodOptional<z.ZodNullable<z.ZodAny>>;
10
+ code: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
11
+ }, z.core.$strip>;
13
12
  }, z.core.$strip>;
14
13
  type OpenAICompatibleErrorData = z.infer<typeof openaiCompatibleErrorDataSchema>;
15
14
  type ProviderErrorStructure<T> = {
16
- errorSchema: ZodType<T>;
17
- errorToMessage: (error: T) => string;
18
- isRetryable?: (response: Response, error?: T) => boolean;
15
+ errorSchema: ZodType<T>;
16
+ errorToMessage: (error: T) => string;
17
+ isRetryable?: (response: Response, error?: T) => boolean;
19
18
  };
20
-
19
+ //#endregion
20
+ //#region src/chat/openai-compatible-chat-language-model-options.d.ts
21
21
  type OpenAICompatibleChatModelId = string;
22
22
  declare const openaiCompatibleLanguageModelChatOptions: z.ZodObject<{
23
- user: z.ZodOptional<z.ZodString>;
24
- reasoningEffort: z.ZodOptional<z.ZodString>;
25
- textVerbosity: z.ZodOptional<z.ZodString>;
26
- strictJsonSchema: z.ZodOptional<z.ZodBoolean>;
23
+ user: z.ZodOptional<z.ZodString>;
24
+ reasoningEffort: z.ZodOptional<z.ZodString>;
25
+ textVerbosity: z.ZodOptional<z.ZodString>;
26
+ strictJsonSchema: z.ZodOptional<z.ZodBoolean>;
27
27
  }, z.core.$strip>;
28
28
  type OpenAICompatibleLanguageModelChatOptions = z.infer<typeof openaiCompatibleLanguageModelChatOptions>;
29
-
29
+ //#endregion
30
+ //#region src/chat/openai-compatible-metadata-extractor.d.ts
30
31
  /**
31
32
  * Extracts provider-specific metadata from API responses.
32
33
  * Used to standardize metadata handling across different LLM providers while allowing
33
34
  * provider-specific metadata to be captured.
34
35
  */
35
36
  type MetadataExtractor = {
37
+ /**
38
+ * Extracts provider metadata from a complete, non-streaming response.
39
+ *
40
+ * @param parsedBody - The parsed response JSON body from the provider's API.
41
+ *
42
+ * @returns Provider-specific metadata or undefined if no metadata is available.
43
+ * The metadata should be under a key indicating the provider id.
44
+ */
45
+ extractMetadata: ({ parsedBody }: {
46
+ parsedBody: unknown;
47
+ }) => Promise<SharedV4ProviderMetadata | undefined>;
48
+ /**
49
+ * Creates an extractor for handling streaming responses. The returned object provides
50
+ * methods to process individual chunks and build the final metadata from the accumulated
51
+ * stream data.
52
+ *
53
+ * @returns An object with methods to process chunks and build metadata from a stream
54
+ */
55
+ createStreamExtractor: () => {
36
56
  /**
37
- * Extracts provider metadata from a complete, non-streaming response.
57
+ * Process an individual chunk from the stream. Called for each chunk in the response stream
58
+ * to accumulate metadata throughout the streaming process.
38
59
  *
39
- * @param parsedBody - The parsed response JSON body from the provider's API.
40
- *
41
- * @returns Provider-specific metadata or undefined if no metadata is available.
42
- * The metadata should be under a key indicating the provider id.
60
+ * @param parsedChunk - The parsed JSON response chunk from the provider's API
43
61
  */
44
- extractMetadata: ({ parsedBody, }: {
45
- parsedBody: unknown;
46
- }) => Promise<SharedV4ProviderMetadata | undefined>;
62
+ processChunk(parsedChunk: unknown): void;
47
63
  /**
48
- * Creates an extractor for handling streaming responses. The returned object provides
49
- * methods to process individual chunks and build the final metadata from the accumulated
50
- * stream data.
64
+ * Builds the metadata object after all chunks have been processed.
65
+ * Called at the end of the stream to generate the complete provider metadata.
51
66
  *
52
- * @returns An object with methods to process chunks and build metadata from a stream
67
+ * @returns Provider-specific metadata or undefined if no metadata is available.
68
+ * The metadata should be under a key indicating the provider id.
53
69
  */
54
- createStreamExtractor: () => {
55
- /**
56
- * Process an individual chunk from the stream. Called for each chunk in the response stream
57
- * to accumulate metadata throughout the streaming process.
58
- *
59
- * @param parsedChunk - The parsed JSON response chunk from the provider's API
60
- */
61
- processChunk(parsedChunk: unknown): void;
62
- /**
63
- * Builds the metadata object after all chunks have been processed.
64
- * Called at the end of the stream to generate the complete provider metadata.
65
- *
66
- * @returns Provider-specific metadata or undefined if no metadata is available.
67
- * The metadata should be under a key indicating the provider id.
68
- */
69
- buildMetadata(): SharedV4ProviderMetadata | undefined;
70
- };
70
+ buildMetadata(): SharedV4ProviderMetadata | undefined;
71
+ };
71
72
  };
72
-
73
+ //#endregion
74
+ //#region src/chat/openai-compatible-chat-language-model.d.ts
73
75
  type OpenAICompatibleChatConfig = {
74
- provider: string;
75
- headers?: () => Record<string, string | undefined>;
76
- url: (options: {
77
- modelId: string;
78
- path: string;
79
- }) => string;
80
- fetch?: FetchFunction;
81
- includeUsage?: boolean;
82
- errorStructure?: ProviderErrorStructure<any>;
83
- metadataExtractor?: MetadataExtractor;
84
- /**
85
- * Whether the model supports structured outputs.
86
- */
87
- supportsStructuredOutputs?: boolean;
88
- /**
89
- * The supported URLs for the model.
90
- */
91
- supportedUrls?: () => LanguageModelV4['supportedUrls'];
92
- /**
93
- * Optional function to transform the request body before sending it to the API.
94
- * This is useful for proxy providers that may require a different request format
95
- * than the official OpenAI API.
96
- */
97
- transformRequestBody?: (args: Record<string, any>) => Record<string, any>;
98
- /**
99
- * Optional usage converter for OpenAI-compatible providers with different
100
- * token accounting semantics.
101
- */
102
- convertUsage?: (usage: z.infer<typeof openaiCompatibleTokenUsageSchema>) => LanguageModelV4Usage;
76
+ provider: string;
77
+ headers?: () => Record<string, string | undefined>;
78
+ url: (options: {
79
+ modelId: string;
80
+ path: string;
81
+ }) => string;
82
+ fetch?: FetchFunction;
83
+ includeUsage?: boolean;
84
+ errorStructure?: ProviderErrorStructure<any>;
85
+ metadataExtractor?: MetadataExtractor;
86
+ /**
87
+ * Whether the model supports structured outputs.
88
+ */
89
+ supportsStructuredOutputs?: boolean;
90
+ /**
91
+ * The supported URLs for the model.
92
+ */
93
+ supportedUrls?: () => LanguageModelV4['supportedUrls'];
94
+ /**
95
+ * Optional function to transform the request body before sending it to the API.
96
+ * This is useful for proxy providers that may require a different request format
97
+ * than the official OpenAI API.
98
+ */
99
+ transformRequestBody?: (args: Record<string, any>) => Record<string, any>;
100
+ /**
101
+ * Optional usage converter for OpenAI-compatible providers with different
102
+ * token accounting semantics.
103
+ */
104
+ convertUsage?: (usage: z.infer<typeof openaiCompatibleTokenUsageSchema>) => LanguageModelV4Usage;
103
105
  };
104
- declare class OpenAICompatibleChatLanguageModel implements LanguageModelV4 {
105
- readonly specificationVersion = "v4";
106
- readonly supportsStructuredOutputs: boolean;
107
- readonly modelId: OpenAICompatibleChatModelId;
108
- protected readonly config: OpenAICompatibleChatConfig;
109
- private readonly failedResponseHandler;
110
- private readonly chunkSchema;
111
- static [WORKFLOW_SERIALIZE](model: OpenAICompatibleChatLanguageModel): {
112
- modelId: string;
113
- config: _ai_sdk_provider.JSONObject;
114
- };
115
- static [WORKFLOW_DESERIALIZE](options: {
116
- modelId: string;
117
- config: OpenAICompatibleChatConfig;
118
- }): OpenAICompatibleChatLanguageModel;
119
- constructor(modelId: OpenAICompatibleChatModelId, config: OpenAICompatibleChatConfig);
120
- get provider(): string;
121
- private get providerOptionsName();
122
- get supportedUrls(): Record<string, RegExp[]> | PromiseLike<Record<string, RegExp[]>>;
123
- private transformRequestBody;
124
- private convertUsage;
125
- private getArgs;
126
- doGenerate(options: LanguageModelV4CallOptions): Promise<LanguageModelV4GenerateResult>;
127
- doStream(options: LanguageModelV4CallOptions): Promise<LanguageModelV4StreamResult>;
106
+ export declare class OpenAICompatibleChatLanguageModel implements LanguageModelV4 {
107
+ readonly specificationVersion = "v4";
108
+ readonly supportsStructuredOutputs: boolean;
109
+ readonly modelId: OpenAICompatibleChatModelId;
110
+ protected readonly config: OpenAICompatibleChatConfig;
111
+ private readonly failedResponseHandler;
112
+ private readonly chunkSchema;
113
+ static [WORKFLOW_SERIALIZE](model: OpenAICompatibleChatLanguageModel): {
114
+ modelId: string;
115
+ config: import("@ai-sdk/provider").JSONObject;
116
+ };
117
+ static [WORKFLOW_DESERIALIZE](options: {
118
+ modelId: string;
119
+ config: OpenAICompatibleChatConfig;
120
+ }): OpenAICompatibleChatLanguageModel;
121
+ constructor(modelId: OpenAICompatibleChatModelId, config: OpenAICompatibleChatConfig);
122
+ get provider(): string;
123
+ private get providerOptionsName();
124
+ get supportedUrls(): Record<string, RegExp[]> | PromiseLike<Record<string, RegExp[]>>;
125
+ private transformRequestBody;
126
+ private convertUsage;
127
+ private getArgs;
128
+ doGenerate(options: LanguageModelV4CallOptions): Promise<LanguageModelV4GenerateResult>;
129
+ doStream(options: LanguageModelV4CallOptions): Promise<LanguageModelV4StreamResult>;
128
130
  }
129
131
  declare const openaiCompatibleTokenUsageSchema: z.ZodOptional<z.ZodNullable<z.ZodObject<{
130
- prompt_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
131
- completion_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
132
- total_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
133
- prompt_tokens_details: z.ZodOptional<z.ZodNullable<z.ZodObject<{
134
- cached_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
135
- }, z.core.$loose>>>;
136
- completion_tokens_details: z.ZodOptional<z.ZodNullable<z.ZodObject<{
137
- reasoning_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
138
- accepted_prediction_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
139
- rejected_prediction_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
140
- }, z.core.$loose>>>;
132
+ prompt_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
133
+ completion_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
134
+ total_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
135
+ prompt_tokens_details: z.ZodOptional<z.ZodNullable<z.ZodObject<{
136
+ cached_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
137
+ }, z.core.$loose>>>;
138
+ completion_tokens_details: z.ZodOptional<z.ZodNullable<z.ZodObject<{
139
+ reasoning_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
140
+ accepted_prediction_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
141
+ rejected_prediction_tokens: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
142
+ }, z.core.$loose>>>;
141
143
  }, z.core.$loose>>>;
142
-
144
+ //#endregion
145
+ //#region src/completion/openai-compatible-completion-language-model-options.d.ts
143
146
  type OpenAICompatibleCompletionModelId = string;
144
147
  declare const openaiCompatibleLanguageModelCompletionOptions: z.ZodObject<{
145
- echo: z.ZodOptional<z.ZodBoolean>;
146
- logitBias: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
147
- suffix: z.ZodOptional<z.ZodString>;
148
- user: z.ZodOptional<z.ZodString>;
148
+ echo: z.ZodOptional<z.ZodBoolean>;
149
+ logitBias: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
150
+ suffix: z.ZodOptional<z.ZodString>;
151
+ user: z.ZodOptional<z.ZodString>;
149
152
  }, z.core.$strip>;
150
153
  type OpenAICompatibleLanguageModelCompletionOptions = z.infer<typeof openaiCompatibleLanguageModelCompletionOptions>;
151
-
154
+ //#endregion
155
+ //#region src/completion/openai-compatible-completion-language-model.d.ts
152
156
  type OpenAICompatibleCompletionConfig = {
153
- provider: string;
154
- includeUsage?: boolean;
155
- headers?: () => Record<string, string | undefined>;
156
- url: (options: {
157
- modelId: string;
158
- path: string;
159
- }) => string;
160
- fetch?: FetchFunction;
161
- errorStructure?: ProviderErrorStructure<any>;
162
- /**
163
- * The supported URLs for the model.
164
- */
165
- supportedUrls?: () => LanguageModelV4['supportedUrls'];
157
+ provider: string;
158
+ includeUsage?: boolean;
159
+ headers?: () => Record<string, string | undefined>;
160
+ url: (options: {
161
+ modelId: string;
162
+ path: string;
163
+ }) => string;
164
+ fetch?: FetchFunction;
165
+ errorStructure?: ProviderErrorStructure<any>;
166
+ /**
167
+ * The supported URLs for the model.
168
+ */
169
+ supportedUrls?: () => LanguageModelV4['supportedUrls'];
166
170
  };
167
- declare class OpenAICompatibleCompletionLanguageModel implements LanguageModelV4 {
168
- readonly specificationVersion = "v4";
169
- readonly modelId: OpenAICompatibleCompletionModelId;
170
- private readonly config;
171
- private readonly failedResponseHandler;
172
- private readonly chunkSchema;
173
- static [WORKFLOW_SERIALIZE](model: OpenAICompatibleCompletionLanguageModel): {
174
- modelId: string;
175
- config: _ai_sdk_provider.JSONObject;
176
- };
177
- static [WORKFLOW_DESERIALIZE](options: {
178
- modelId: string;
179
- config: OpenAICompatibleCompletionConfig;
180
- }): OpenAICompatibleCompletionLanguageModel;
181
- constructor(modelId: OpenAICompatibleCompletionModelId, config: OpenAICompatibleCompletionConfig);
182
- get provider(): string;
183
- private get providerOptionsName();
184
- get supportedUrls(): Record<string, RegExp[]> | PromiseLike<Record<string, RegExp[]>>;
185
- private getArgs;
186
- doGenerate(options: LanguageModelV4CallOptions): Promise<LanguageModelV4GenerateResult>;
187
- doStream(options: LanguageModelV4CallOptions): Promise<LanguageModelV4StreamResult>;
171
+ export declare class OpenAICompatibleCompletionLanguageModel implements LanguageModelV4 {
172
+ readonly specificationVersion = "v4";
173
+ readonly modelId: OpenAICompatibleCompletionModelId;
174
+ private readonly config;
175
+ private readonly failedResponseHandler;
176
+ private readonly chunkSchema;
177
+ static [WORKFLOW_SERIALIZE](model: OpenAICompatibleCompletionLanguageModel): {
178
+ modelId: string;
179
+ config: import("@ai-sdk/provider").JSONObject;
180
+ };
181
+ static [WORKFLOW_DESERIALIZE](options: {
182
+ modelId: string;
183
+ config: OpenAICompatibleCompletionConfig;
184
+ }): OpenAICompatibleCompletionLanguageModel;
185
+ constructor(modelId: OpenAICompatibleCompletionModelId, config: OpenAICompatibleCompletionConfig);
186
+ get provider(): string;
187
+ private get providerOptionsName();
188
+ get supportedUrls(): Record<string, RegExp[]> | PromiseLike<Record<string, RegExp[]>>;
189
+ private getArgs;
190
+ doGenerate(options: LanguageModelV4CallOptions): Promise<LanguageModelV4GenerateResult>;
191
+ doStream(options: LanguageModelV4CallOptions): Promise<LanguageModelV4StreamResult>;
188
192
  }
189
-
193
+ //#endregion
194
+ //#region src/embedding/openai-compatible-embedding-model-options.d.ts
190
195
  type OpenAICompatibleEmbeddingModelId = string;
191
196
  declare const openaiCompatibleEmbeddingModelOptions: z.ZodObject<{
192
- dimensions: z.ZodOptional<z.ZodNumber>;
193
- user: z.ZodOptional<z.ZodString>;
197
+ dimensions: z.ZodOptional<z.ZodNumber>;
198
+ user: z.ZodOptional<z.ZodString>;
194
199
  }, z.core.$strip>;
195
200
  type OpenAICompatibleEmbeddingModelOptions = z.infer<typeof openaiCompatibleEmbeddingModelOptions>;
196
-
201
+ //#endregion
202
+ //#region src/embedding/openai-compatible-embedding-model.d.ts
197
203
  type OpenAICompatibleEmbeddingConfig = {
198
- /**
199
- * Override the maximum number of embeddings per call.
200
- */
201
- maxEmbeddingsPerCall?: number;
202
- /**
203
- * Override the parallelism of embedding calls.
204
- */
205
- supportsParallelCalls?: boolean;
206
- provider: string;
207
- url: (options: {
208
- modelId: string;
209
- path: string;
210
- }) => string;
211
- headers?: () => Record<string, string | undefined>;
212
- fetch?: FetchFunction;
213
- errorStructure?: ProviderErrorStructure<any>;
204
+ /**
205
+ * Override the maximum number of embeddings per call.
206
+ */
207
+ maxEmbeddingsPerCall?: number;
208
+ /**
209
+ * Override the parallelism of embedding calls.
210
+ */
211
+ supportsParallelCalls?: boolean;
212
+ provider: string;
213
+ url: (options: {
214
+ modelId: string;
215
+ path: string;
216
+ }) => string;
217
+ headers?: () => Record<string, string | undefined>;
218
+ fetch?: FetchFunction;
219
+ errorStructure?: ProviderErrorStructure<any>;
214
220
  };
215
- declare class OpenAICompatibleEmbeddingModel implements EmbeddingModelV4 {
216
- readonly specificationVersion = "v4";
217
- readonly modelId: OpenAICompatibleEmbeddingModelId;
218
- private readonly config;
219
- get provider(): string;
220
- get maxEmbeddingsPerCall(): number;
221
- get supportsParallelCalls(): boolean;
222
- static [WORKFLOW_SERIALIZE](model: OpenAICompatibleEmbeddingModel): {
223
- modelId: string;
224
- config: _ai_sdk_provider.JSONObject;
225
- };
226
- static [WORKFLOW_DESERIALIZE](options: {
227
- modelId: string;
228
- config: OpenAICompatibleEmbeddingConfig;
229
- }): OpenAICompatibleEmbeddingModel;
230
- constructor(modelId: OpenAICompatibleEmbeddingModelId, config: OpenAICompatibleEmbeddingConfig);
231
- private get providerOptionsName();
232
- doEmbed({ values, headers, abortSignal, providerOptions, }: Parameters<EmbeddingModelV4['doEmbed']>[0]): Promise<Awaited<ReturnType<EmbeddingModelV4['doEmbed']>>>;
221
+ export declare class OpenAICompatibleEmbeddingModel implements EmbeddingModelV4 {
222
+ readonly specificationVersion = "v4";
223
+ readonly modelId: OpenAICompatibleEmbeddingModelId;
224
+ private readonly config;
225
+ get provider(): string;
226
+ get maxEmbeddingsPerCall(): number;
227
+ get supportsParallelCalls(): boolean;
228
+ static [WORKFLOW_SERIALIZE](model: OpenAICompatibleEmbeddingModel): {
229
+ modelId: string;
230
+ config: import("@ai-sdk/provider").JSONObject;
231
+ };
232
+ static [WORKFLOW_DESERIALIZE](options: {
233
+ modelId: string;
234
+ config: OpenAICompatibleEmbeddingConfig;
235
+ }): OpenAICompatibleEmbeddingModel;
236
+ constructor(modelId: OpenAICompatibleEmbeddingModelId, config: OpenAICompatibleEmbeddingConfig);
237
+ private get providerOptionsName();
238
+ doEmbed({ values, headers, abortSignal, providerOptions }: Parameters<EmbeddingModelV4['doEmbed']>[0]): Promise<Awaited<ReturnType<EmbeddingModelV4['doEmbed']>>>;
233
239
  }
234
-
240
+ //#endregion
241
+ //#region src/image/openai-compatible-image-settings.d.ts
235
242
  type OpenAICompatibleImageModelId = string;
236
-
243
+ //#endregion
244
+ //#region src/image/openai-compatible-image-model.d.ts
237
245
  type OpenAICompatibleImageModelConfig = {
238
- provider: string;
239
- headers?: () => Record<string, string | undefined>;
240
- url: (options: {
241
- modelId: string;
242
- path: string;
243
- }) => string;
244
- fetch?: FetchFunction;
245
- errorStructure?: ProviderErrorStructure<any>;
246
- _internal?: {
247
- currentDate?: () => Date;
248
- };
246
+ provider: string;
247
+ headers?: () => Record<string, string | undefined>;
248
+ url: (options: {
249
+ modelId: string;
250
+ path: string;
251
+ }) => string;
252
+ fetch?: FetchFunction;
253
+ errorStructure?: ProviderErrorStructure<any>;
254
+ _internal?: {
255
+ currentDate?: () => Date;
256
+ };
249
257
  };
250
- declare class OpenAICompatibleImageModel implements ImageModelV4 {
251
- readonly modelId: OpenAICompatibleImageModelId;
252
- private readonly config;
253
- readonly specificationVersion = "v4";
254
- readonly maxImagesPerCall = 10;
255
- readonly supportsFileInputs: undefined;
256
- readonly supportsMaskInputs: undefined;
257
- get provider(): string;
258
- /**
259
- * The provider options key used to extract provider-specific options.
260
- */
261
- private get providerOptionsKey();
262
- static [WORKFLOW_SERIALIZE](model: OpenAICompatibleImageModel): {
263
- modelId: string;
264
- config: _ai_sdk_provider.JSONObject;
265
- };
266
- static [WORKFLOW_DESERIALIZE](options: {
267
- modelId: string;
268
- config: OpenAICompatibleImageModelConfig;
269
- }): OpenAICompatibleImageModel;
270
- constructor(modelId: OpenAICompatibleImageModelId, config: OpenAICompatibleImageModelConfig);
271
- private getArgs;
272
- doGenerate({ prompt, n, size, aspectRatio, seed, providerOptions, headers, abortSignal, files, mask, }: Parameters<ImageModelV4['doGenerate']>[0]): Promise<Awaited<ReturnType<ImageModelV4['doGenerate']>>>;
258
+ export declare class OpenAICompatibleImageModel implements ImageModelV4 {
259
+ readonly modelId: OpenAICompatibleImageModelId;
260
+ private readonly config;
261
+ readonly specificationVersion = "v4";
262
+ readonly maxImagesPerCall = 10;
263
+ readonly supportsFileInputs: undefined;
264
+ readonly supportsMaskInputs: undefined;
265
+ get provider(): string;
266
+ /**
267
+ * The provider options key used to extract provider-specific options.
268
+ */
269
+ private get providerOptionsKey();
270
+ static [WORKFLOW_SERIALIZE](model: OpenAICompatibleImageModel): {
271
+ modelId: string;
272
+ config: import("@ai-sdk/provider").JSONObject;
273
+ };
274
+ static [WORKFLOW_DESERIALIZE](options: {
275
+ modelId: string;
276
+ config: OpenAICompatibleImageModelConfig;
277
+ }): OpenAICompatibleImageModel;
278
+ constructor(modelId: OpenAICompatibleImageModelId, config: OpenAICompatibleImageModelConfig);
279
+ private getArgs;
280
+ doGenerate({ prompt, n, size, aspectRatio, seed, providerOptions, headers, abortSignal, files, mask }: Parameters<ImageModelV4['doGenerate']>[0]): Promise<Awaited<ReturnType<ImageModelV4['doGenerate']>>>;
273
281
  }
274
-
282
+ //#endregion
283
+ //#region src/image/openai-compatible-image-model-options.d.ts
275
284
  /**
276
285
  * Common provider options for OpenAI-compatible image models.
277
286
  *
278
287
  * Additional provider-specific options are passed through to the API.
279
288
  */
280
289
  declare const openaiCompatibleImageModelOptions: z.ZodObject<{
281
- /**
282
- * Dimensions of the generated image.
283
- *
284
- * Supported values depend on the provider and model.
285
- */
286
- size: z.ZodOptional<z.ZodString>;
287
- /**
288
- * Quality of the generated image.
289
- *
290
- * Supported values depend on the provider and model.
291
- */
292
- quality: z.ZodOptional<z.ZodString>;
293
- /**
294
- * File format of the generated image.
295
- *
296
- * Supported values depend on the provider and model.
297
- */
298
- output_format: z.ZodOptional<z.ZodString>;
299
- /**
300
- * Compression level for JPEG and WebP images.
301
- */
302
- output_compression: z.ZodOptional<z.ZodNumber>;
303
- /**
304
- * Background behavior for the generated image.
305
- *
306
- * Supported values depend on the provider and model.
307
- */
308
- background: z.ZodOptional<z.ZodString>;
290
+ /**
291
+ * Dimensions of the generated image.
292
+ *
293
+ * Supported values depend on the provider and model.
294
+ */
295
+ size: z.ZodOptional<z.ZodString>;
296
+ /**
297
+ * Quality of the generated image.
298
+ *
299
+ * Supported values depend on the provider and model.
300
+ */
301
+ quality: z.ZodOptional<z.ZodString>;
302
+ /**
303
+ * File format of the generated image.
304
+ *
305
+ * Supported values depend on the provider and model.
306
+ */
307
+ output_format: z.ZodOptional<z.ZodString>;
308
+ /**
309
+ * Compression level for JPEG and WebP images.
310
+ */
311
+ output_compression: z.ZodOptional<z.ZodNumber>;
312
+ /**
313
+ * Background behavior for the generated image.
314
+ *
315
+ * Supported values depend on the provider and model.
316
+ */
317
+ background: z.ZodOptional<z.ZodString>;
309
318
  }, z.core.$loose>;
310
319
  type OpenAICompatibleImageModelOptions = z.infer<typeof openaiCompatibleImageModelOptions>;
311
-
320
+ //#endregion
321
+ //#region src/openai-compatible-provider.d.ts
312
322
  interface OpenAICompatibleProvider<CHAT_MODEL_IDS extends string = string, COMPLETION_MODEL_IDS extends string = string, EMBEDDING_MODEL_IDS extends string = string, IMAGE_MODEL_IDS extends string = string> extends ProviderV4 {
313
- (modelId: CHAT_MODEL_IDS): LanguageModelV4;
314
- languageModel(modelId: CHAT_MODEL_IDS, config?: Partial<OpenAICompatibleChatConfig>): LanguageModelV4;
315
- chatModel(modelId: CHAT_MODEL_IDS): LanguageModelV4;
316
- completionModel(modelId: COMPLETION_MODEL_IDS): LanguageModelV4;
317
- embeddingModel(modelId: EMBEDDING_MODEL_IDS): EmbeddingModelV4;
318
- /**
319
- * @deprecated Use `embeddingModel` instead.
320
- */
321
- textEmbeddingModel(modelId: EMBEDDING_MODEL_IDS): EmbeddingModelV4;
322
- imageModel(modelId: IMAGE_MODEL_IDS): ImageModelV4;
323
+ (modelId: CHAT_MODEL_IDS): LanguageModelV4;
324
+ languageModel(modelId: CHAT_MODEL_IDS, config?: Partial<OpenAICompatibleChatConfig>): LanguageModelV4;
325
+ chatModel(modelId: CHAT_MODEL_IDS): LanguageModelV4;
326
+ completionModel(modelId: COMPLETION_MODEL_IDS): LanguageModelV4;
327
+ embeddingModel(modelId: EMBEDDING_MODEL_IDS): EmbeddingModelV4;
328
+ /**
329
+ * @deprecated Use `embeddingModel` instead.
330
+ */
331
+ textEmbeddingModel(modelId: EMBEDDING_MODEL_IDS): EmbeddingModelV4;
332
+ imageModel(modelId: IMAGE_MODEL_IDS): ImageModelV4;
323
333
  }
324
334
  interface OpenAICompatibleProviderSettings {
325
- /**
326
- * Base URL for the API calls.
327
- */
328
- baseURL: string;
329
- /**
330
- * Provider name.
331
- */
332
- name: string;
333
- /**
334
- * API key for authenticating requests. If specified, adds an `Authorization`
335
- * header to request headers with the value `Bearer <apiKey>`. This will be added
336
- * before any headers potentially specified in the `headers` option.
337
- */
338
- apiKey?: string;
339
- /**
340
- * Optional custom headers to include in requests. These will be added to request headers
341
- * after any headers potentially added by use of the `apiKey` option.
342
- */
343
- headers?: Record<string, string>;
344
- /**
345
- * Optional custom url query parameters to include in request urls.
346
- */
347
- queryParams?: Record<string, string>;
348
- /**
349
- * Custom fetch implementation. You can use it as a middleware to intercept requests,
350
- * or to provide a custom fetch implementation for e.g. testing.
351
- */
352
- fetch?: FetchFunction;
353
- /**
354
- * Include usage information in streaming responses.
355
- */
356
- includeUsage?: boolean;
357
- /**
358
- * Whether the provider supports structured outputs in chat models.
359
- */
360
- supportsStructuredOutputs?: boolean;
361
- /**
362
- * Optional function to transform the request body before sending it to the API.
363
- * This is useful for proxy providers that may require a different request format
364
- * than the official OpenAI API.
365
- */
366
- transformRequestBody?: (args: Record<string, any>) => Record<string, any>;
367
- /**
368
- * Optional metadata extractor to capture provider-specific metadata from API responses.
369
- * This is useful for extracting non-standard fields, experimental features,
370
- * or provider-specific metrics from both streaming and non-streaming responses.
371
- */
372
- metadataExtractor?: MetadataExtractor;
373
- /**
374
- * The supported URLs for chat models.
375
- */
376
- supportedUrls?: OpenAICompatibleChatConfig['supportedUrls'];
377
- /**
378
- * Optional usage converter for providers with token accounting semantics that
379
- * differ from the default OpenAI-compatible shape.
380
- */
381
- convertUsage?: OpenAICompatibleChatConfig['convertUsage'];
335
+ /**
336
+ * Base URL for the API calls.
337
+ */
338
+ baseURL: string;
339
+ /**
340
+ * Provider name.
341
+ */
342
+ name: string;
343
+ /**
344
+ * API key for authenticating requests. If specified, adds an `Authorization`
345
+ * header to request headers with the value `Bearer <apiKey>`. This will be added
346
+ * before any headers potentially specified in the `headers` option.
347
+ */
348
+ apiKey?: string;
349
+ /**
350
+ * Optional custom headers to include in requests. These will be added to request headers
351
+ * after any headers potentially added by use of the `apiKey` option.
352
+ */
353
+ headers?: Record<string, string>;
354
+ /**
355
+ * Optional custom url query parameters to include in request urls.
356
+ */
357
+ queryParams?: Record<string, string>;
358
+ /**
359
+ * Custom fetch implementation. You can use it as a middleware to intercept requests,
360
+ * or to provide a custom fetch implementation for e.g. testing.
361
+ */
362
+ fetch?: FetchFunction;
363
+ /**
364
+ * Include usage information in streaming responses.
365
+ */
366
+ includeUsage?: boolean;
367
+ /**
368
+ * Whether the provider supports structured outputs in chat models.
369
+ */
370
+ supportsStructuredOutputs?: boolean;
371
+ /**
372
+ * Optional function to transform the request body before sending it to the API.
373
+ * This is useful for proxy providers that may require a different request format
374
+ * than the official OpenAI API.
375
+ */
376
+ transformRequestBody?: (args: Record<string, any>) => Record<string, any>;
377
+ /**
378
+ * Optional metadata extractor to capture provider-specific metadata from API responses.
379
+ * This is useful for extracting non-standard fields, experimental features,
380
+ * or provider-specific metrics from both streaming and non-streaming responses.
381
+ */
382
+ metadataExtractor?: MetadataExtractor;
383
+ /**
384
+ * The supported URLs for chat models.
385
+ */
386
+ supportedUrls?: OpenAICompatibleChatConfig['supportedUrls'];
387
+ /**
388
+ * Optional usage converter for providers with token accounting semantics that
389
+ * differ from the default OpenAI-compatible shape.
390
+ */
391
+ convertUsage?: OpenAICompatibleChatConfig['convertUsage'];
382
392
  }
383
393
  /**
384
394
  * Create an OpenAICompatible provider instance.
385
395
  */
386
- declare function createOpenAICompatible<CHAT_MODEL_IDS extends string, COMPLETION_MODEL_IDS extends string, EMBEDDING_MODEL_IDS extends string, IMAGE_MODEL_IDS extends string>(options: OpenAICompatibleProviderSettings): OpenAICompatibleProvider<CHAT_MODEL_IDS, COMPLETION_MODEL_IDS, EMBEDDING_MODEL_IDS, IMAGE_MODEL_IDS>;
387
-
388
- declare const VERSION: string;
389
-
390
- export { type MetadataExtractor, OpenAICompatibleChatLanguageModel, type OpenAICompatibleChatModelId, OpenAICompatibleCompletionLanguageModel, type OpenAICompatibleCompletionModelId, type OpenAICompatibleLanguageModelCompletionOptions as OpenAICompatibleCompletionProviderOptions, OpenAICompatibleEmbeddingModel, type OpenAICompatibleEmbeddingModelId, type OpenAICompatibleEmbeddingModelOptions, type OpenAICompatibleEmbeddingModelOptions as OpenAICompatibleEmbeddingProviderOptions, type OpenAICompatibleErrorData, OpenAICompatibleImageModel, type OpenAICompatibleImageModelOptions, type OpenAICompatibleLanguageModelChatOptions, type OpenAICompatibleLanguageModelCompletionOptions, type OpenAICompatibleProvider, type OpenAICompatibleLanguageModelChatOptions as OpenAICompatibleProviderOptions, type OpenAICompatibleProviderSettings, type ProviderErrorStructure, VERSION, createOpenAICompatible };
396
+ export declare function createOpenAICompatible<CHAT_MODEL_IDS extends string, COMPLETION_MODEL_IDS extends string, EMBEDDING_MODEL_IDS extends string, IMAGE_MODEL_IDS extends string>(options: OpenAICompatibleProviderSettings): OpenAICompatibleProvider<CHAT_MODEL_IDS, COMPLETION_MODEL_IDS, EMBEDDING_MODEL_IDS, IMAGE_MODEL_IDS>;
397
+ //#endregion
398
+ //#region src/version.d.ts
399
+ export declare const VERSION: string;
400
+ //#endregion
401
+ export type { MetadataExtractor, OpenAICompatibleChatModelId, OpenAICompatibleCompletionModelId, OpenAICompatibleLanguageModelCompletionOptions as OpenAICompatibleCompletionProviderOptions, OpenAICompatibleLanguageModelCompletionOptions, OpenAICompatibleEmbeddingModelId, OpenAICompatibleEmbeddingModelOptions, OpenAICompatibleEmbeddingModelOptions as OpenAICompatibleEmbeddingProviderOptions, OpenAICompatibleErrorData, OpenAICompatibleImageModelOptions, OpenAICompatibleLanguageModelChatOptions, OpenAICompatibleLanguageModelChatOptions as OpenAICompatibleProviderOptions, OpenAICompatibleProvider, OpenAICompatibleProviderSettings, ProviderErrorStructure };
402
+ //# sourceMappingURL=index.d.ts.map