@ai-sdk/openai 4.0.18 → 4.0.19

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.
@@ -150,6 +150,7 @@ declare class OpenAIEmbeddingModel implements EmbeddingModelV4 {
150
150
  type OpenAIImageModelId = 'dall-e-3' | 'dall-e-2' | 'gpt-image-1' | 'gpt-image-1-mini' | 'gpt-image-1.5' | 'gpt-image-2' | 'chatgpt-image-latest' | (string & {});
151
151
  declare const modelMaxImagesPerCall: Record<OpenAIImageModelId, number>;
152
152
  declare function hasDefaultResponseFormat(modelId: string): boolean;
153
+ declare function getMaxImagesPerCall(modelId: OpenAIImageModelId): number;
153
154
  declare const openaiImageModelOptions: _ai_sdk_provider_utils.LazySchema<{
154
155
  quality?: "auto" | "low" | "medium" | "high" | "standard" | "hd" | undefined;
155
156
  background?: "auto" | "transparent" | "opaque" | undefined;
@@ -1694,4 +1695,4 @@ declare const webSearchPreview: _ai_sdk_provider_utils.ProviderExecutedToolFacto
1694
1695
  };
1695
1696
  }, {}>;
1696
1697
 
1697
- export { type ApplyPatchOperation, OpenAIChatLanguageModel, type OpenAIChatModelId, OpenAICompletionLanguageModel, type OpenAICompletionModelId, OpenAIEmbeddingModel, type OpenAIEmbeddingModelId, type OpenAIEmbeddingModelOptions, OpenAIImageModel, type OpenAIImageModelEditOptions, type OpenAIImageModelGenerationOptions, type OpenAIImageModelId, type OpenAIImageModelOptions, type OpenAILanguageModelChatOptions, type OpenAILanguageModelCompletionOptions, OpenAIResponsesLanguageModel, OpenAISpeechModel, type OpenAISpeechModelId, type OpenAISpeechModelOptions, type OpenAITranscriptionCallOptions, OpenAITranscriptionModel, type OpenAITranscriptionModelId, type OpenAITranscriptionModelOptions, type OpenAITranscriptionStreamOptions, type OpenaiResponsesCompactionProviderMetadata, type OpenaiResponsesProviderMetadata, type OpenaiResponsesReasoningProviderMetadata, type OpenaiResponsesSourceDocumentProviderMetadata, type OpenaiResponsesTextProviderMetadata, type ResponsesCompactionProviderMetadata, type ResponsesProviderMetadata, type ResponsesReasoningProviderMetadata, type ResponsesSourceDocumentProviderMetadata, type ResponsesTextProviderMetadata, applyPatch, applyPatchArgsSchema, applyPatchInputSchema, applyPatchOutputSchema, applyPatchToolFactory, codeInterpreter, codeInterpreterArgsSchema, codeInterpreterInputSchema, codeInterpreterOutputSchema, codeInterpreterToolFactory, fileSearch, fileSearchArgsSchema, fileSearchOutputSchema, hasDefaultResponseFormat, imageGeneration, imageGenerationArgsSchema, imageGenerationOutputSchema, modelMaxImagesPerCall, openAITranscriptionModelOptions, openaiEmbeddingModelOptions, openaiImageModelEditOptions, openaiImageModelGenerationOptions, openaiImageModelOptions, openaiLanguageModelChatOptions, openaiLanguageModelCompletionOptions, openaiSpeechModelOptionsSchema, webSearch, webSearchArgsSchema, webSearchOutputSchema, webSearchPreview, webSearchPreviewArgsSchema, webSearchPreviewInputSchema, webSearchToolFactory };
1698
+ export { type ApplyPatchOperation, OpenAIChatLanguageModel, type OpenAIChatModelId, OpenAICompletionLanguageModel, type OpenAICompletionModelId, OpenAIEmbeddingModel, type OpenAIEmbeddingModelId, type OpenAIEmbeddingModelOptions, OpenAIImageModel, type OpenAIImageModelEditOptions, type OpenAIImageModelGenerationOptions, type OpenAIImageModelId, type OpenAIImageModelOptions, type OpenAILanguageModelChatOptions, type OpenAILanguageModelCompletionOptions, OpenAIResponsesLanguageModel, OpenAISpeechModel, type OpenAISpeechModelId, type OpenAISpeechModelOptions, type OpenAITranscriptionCallOptions, OpenAITranscriptionModel, type OpenAITranscriptionModelId, type OpenAITranscriptionModelOptions, type OpenAITranscriptionStreamOptions, type OpenaiResponsesCompactionProviderMetadata, type OpenaiResponsesProviderMetadata, type OpenaiResponsesReasoningProviderMetadata, type OpenaiResponsesSourceDocumentProviderMetadata, type OpenaiResponsesTextProviderMetadata, type ResponsesCompactionProviderMetadata, type ResponsesProviderMetadata, type ResponsesReasoningProviderMetadata, type ResponsesSourceDocumentProviderMetadata, type ResponsesTextProviderMetadata, applyPatch, applyPatchArgsSchema, applyPatchInputSchema, applyPatchOutputSchema, applyPatchToolFactory, codeInterpreter, codeInterpreterArgsSchema, codeInterpreterInputSchema, codeInterpreterOutputSchema, codeInterpreterToolFactory, fileSearch, fileSearchArgsSchema, fileSearchOutputSchema, getMaxImagesPerCall, hasDefaultResponseFormat, imageGeneration, imageGenerationArgsSchema, imageGenerationOutputSchema, modelMaxImagesPerCall, openAITranscriptionModelOptions, openaiEmbeddingModelOptions, openaiImageModelEditOptions, openaiImageModelGenerationOptions, openaiImageModelOptions, openaiLanguageModelChatOptions, openaiLanguageModelCompletionOptions, openaiSpeechModelOptionsSchema, webSearch, webSearchArgsSchema, webSearchOutputSchema, webSearchPreview, webSearchPreviewArgsSchema, webSearchPreviewInputSchema, webSearchToolFactory };
@@ -34,10 +34,15 @@ var openaiFailedResponseHandler = createJsonErrorResponseHandler({
34
34
 
35
35
  // src/openai-language-model-capabilities.ts
36
36
  function getOpenAILanguageModelCapabilities(modelId) {
37
- const supportsFlexProcessing = modelId.startsWith("o3") || modelId.startsWith("o4-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-chat");
38
- const supportsPriorityProcessing = modelId.startsWith("gpt-4") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-nano") && !modelId.startsWith("gpt-5-chat") && !modelId.startsWith("gpt-5.4-nano") || modelId.startsWith("o3") || modelId.startsWith("o4-mini");
39
- const isReasoningModel = modelId.startsWith("o1") || modelId.startsWith("o3") || modelId.startsWith("o4-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-chat");
40
- const supportsNonReasoningParameters = modelId.startsWith("gpt-5.1") || modelId.startsWith("gpt-5.2") || modelId.startsWith("gpt-5.3") || modelId.startsWith("gpt-5.4") || modelId.startsWith("gpt-5.5") || modelId.startsWith("gpt-5.6");
37
+ var _a, _b, _c, _d, _e;
38
+ const oSeriesVersion = getOSeriesVersion(modelId);
39
+ const gptVersion = getGptVersion(modelId);
40
+ const isGptChatModel = (gptVersion == null ? void 0 : gptVersion.minor) == null && ((_b = (_a = gptVersion == null ? void 0 : gptVersion.variant) == null ? void 0 : _a.startsWith("chat")) != null ? _b : false);
41
+ const isGptNanoModel = (_d = (_c = gptVersion == null ? void 0 : gptVersion.variant) == null ? void 0 : _c.startsWith("nano")) != null ? _d : false;
42
+ const supportsFlexProcessing = oSeriesVersion != null && oSeriesVersion >= 3 || gptVersion != null && gptVersion.major >= 5 && !isGptChatModel;
43
+ const supportsPriorityProcessing = modelId.startsWith("gpt-4") || gptVersion != null && gptVersion.major >= 5 && !isGptNanoModel && !isGptChatModel || oSeriesVersion != null && oSeriesVersion >= 3;
44
+ const isReasoningModel = oSeriesVersion != null || gptVersion != null && gptVersion.major >= 5 && !isGptChatModel;
45
+ const supportsNonReasoningParameters = gptVersion != null && (gptVersion.major > 5 || gptVersion.major === 5 && ((_e = gptVersion.minor) != null ? _e : 0) >= 1);
41
46
  const systemMessageMode = isReasoningModel ? "developer" : "system";
42
47
  return {
43
48
  supportsFlexProcessing,
@@ -47,6 +52,21 @@ function getOpenAILanguageModelCapabilities(modelId) {
47
52
  supportsNonReasoningParameters
48
53
  };
49
54
  }
55
+ function getOSeriesVersion(modelId) {
56
+ const match = /^o(\d+)(?:-|$)/.exec(modelId);
57
+ return match == null ? void 0 : Number(match[1]);
58
+ }
59
+ function getGptVersion(modelId) {
60
+ const match = /^gpt-(\d+)(?:\.(\d+))?(?:-(.+))?$/.exec(modelId);
61
+ if (match == null) {
62
+ return void 0;
63
+ }
64
+ return {
65
+ major: Number(match[1]),
66
+ minor: match[2] == null ? void 0 : Number(match[2]),
67
+ variant: match[3]
68
+ };
69
+ }
50
70
 
51
71
  // src/openai-stream-error.ts
52
72
  import { APICallError } from "@ai-sdk/provider";
@@ -2016,18 +2036,16 @@ var modelMaxImagesPerCall = {
2016
2036
  "gpt-image-2": 10,
2017
2037
  "chatgpt-image-latest": 10
2018
2038
  };
2019
- var defaultResponseFormatPrefixes = [
2020
- "chatgpt-image-",
2021
- "gpt-image-1-mini",
2022
- "gpt-image-1.5",
2023
- "gpt-image-1",
2024
- "gpt-image-2"
2025
- ];
2039
+ var defaultResponseFormatPrefixes = ["chatgpt-image-", "gpt-image-"];
2026
2040
  function hasDefaultResponseFormat(modelId) {
2027
2041
  return defaultResponseFormatPrefixes.some(
2028
2042
  (prefix) => modelId.startsWith(prefix)
2029
2043
  );
2030
2044
  }
2045
+ function getMaxImagesPerCall(modelId) {
2046
+ var _a;
2047
+ return (_a = modelMaxImagesPerCall[modelId]) != null ? _a : modelId.startsWith("gpt-image-") ? 10 : 1;
2048
+ }
2031
2049
  var baseImageModelOptionsObject = z9.object({
2032
2050
  /**
2033
2051
  * Quality of the generated image(s).
@@ -2105,8 +2123,7 @@ var OpenAIImageModel = class _OpenAIImageModel {
2105
2123
  return new _OpenAIImageModel(options.modelId, options.config);
2106
2124
  }
2107
2125
  get maxImagesPerCall() {
2108
- var _a;
2109
- return (_a = modelMaxImagesPerCall[this.modelId]) != null ? _a : 1;
2126
+ return getMaxImagesPerCall(this.modelId);
2110
2127
  }
2111
2128
  get provider() {
2112
2129
  return this.config.provider;
@@ -8173,6 +8190,7 @@ export {
8173
8190
  fileSearch,
8174
8191
  fileSearchArgsSchema,
8175
8192
  fileSearchOutputSchema,
8193
+ getMaxImagesPerCall,
8176
8194
  hasDefaultResponseFormat,
8177
8195
  imageGeneration,
8178
8196
  imageGenerationArgsSchema,