@ai-sdk/openai 2.0.0-alpha.9 → 2.0.0-beta.10

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/CHANGELOG.md CHANGED
@@ -1,5 +1,155 @@
1
1
  # @ai-sdk/openai
2
2
 
3
+ ## 2.0.0-beta.10
4
+
5
+ ### Patch Changes
6
+
7
+ - 0fa7414: chore (provider/openai): standardize on itemId in provider metadata
8
+ - 205077b: fix: improve Zod compatibility
9
+ - Updated dependencies [205077b]
10
+ - @ai-sdk/provider-utils@3.0.0-beta.4
11
+
12
+ ## 2.0.0-beta.9
13
+
14
+ ### Patch Changes
15
+
16
+ - faea29f: fix (provider/openai): multi-step reasoning with text
17
+
18
+ ## 2.0.0-beta.8
19
+
20
+ ### Patch Changes
21
+
22
+ - db64cbe: fix (provider/openai): multi-step reasoning with tool calls
23
+ - Updated dependencies [05d2819]
24
+ - @ai-sdk/provider-utils@3.0.0-beta.3
25
+
26
+ ## 2.0.0-beta.7
27
+
28
+ ### Patch Changes
29
+
30
+ - 209256d: Add missing file_search tool support to OpenAI Responses API
31
+
32
+ ## 2.0.0-beta.6
33
+
34
+ ### Patch Changes
35
+
36
+ - 0eee6a8: Fix streaming and reconstruction of reasoning summary parts
37
+ - b5a0e32: fix (provider/openai): correct default for chat model strict mode
38
+ - c7d3b2e: fix (provider/openai): push first reasoning chunk in output item added event
39
+
40
+ ## 2.0.0-beta.5
41
+
42
+ ### Patch Changes
43
+
44
+ - 48249c4: Do not warn if empty text is the first part of a reasoning sequence
45
+ - e497698: fix (provider/openai): handle responses api errors
46
+
47
+ ## 2.0.0-beta.4
48
+
49
+ ### Patch Changes
50
+
51
+ - b3c3450: feat (provider/openai): add support for encrypted_reasoning to responses api
52
+ - ad2a3d5: feat(provider/openai): add missing reasoning models to responses API
53
+
54
+ ## 2.0.0-beta.3
55
+
56
+ ### Major Changes
57
+
58
+ - efc3a62: fix (provider/openai): default strict mode to false
59
+
60
+ ## 2.0.0-beta.2
61
+
62
+ ### Patch Changes
63
+
64
+ - d1a034f: feature: using Zod 4 for internal stuff
65
+ - Updated dependencies [0571b98]
66
+ - Updated dependencies [39a4fab]
67
+ - Updated dependencies [d1a034f]
68
+ - @ai-sdk/provider-utils@3.0.0-beta.2
69
+
70
+ ## 2.0.0-beta.1
71
+
72
+ ### Major Changes
73
+
74
+ - cc62234: chore (provider/openai): switch default to openai responses api
75
+
76
+ ### Patch Changes
77
+
78
+ - 5d959e7: refactor: updated openai + anthropic tool use server side
79
+ - Updated dependencies [742b7be]
80
+ - Updated dependencies [7cddb72]
81
+ - Updated dependencies [ccce59b]
82
+ - Updated dependencies [e2b9e4b]
83
+ - Updated dependencies [45c1ea2]
84
+ - Updated dependencies [e025824]
85
+ - Updated dependencies [0d06df6]
86
+ - Updated dependencies [472524a]
87
+ - Updated dependencies [dd3ff01]
88
+ - Updated dependencies [7435eb5]
89
+ - Updated dependencies [cb68df0]
90
+ - Updated dependencies [bfdca8d]
91
+ - Updated dependencies [44f4aba]
92
+ - Updated dependencies [023ba40]
93
+ - Updated dependencies [5e57fae]
94
+ - Updated dependencies [71f938d]
95
+ - Updated dependencies [28a5ed5]
96
+ - @ai-sdk/provider@2.0.0-beta.1
97
+ - @ai-sdk/provider-utils@3.0.0-beta.1
98
+
99
+ ## 2.0.0-alpha.15
100
+
101
+ ### Patch Changes
102
+
103
+ - Updated dependencies [48d257a]
104
+ - Updated dependencies [8ba77a7]
105
+ - @ai-sdk/provider@2.0.0-alpha.15
106
+ - @ai-sdk/provider-utils@3.0.0-alpha.15
107
+
108
+ ## 2.0.0-alpha.14
109
+
110
+ ### Patch Changes
111
+
112
+ - Updated dependencies [b5da06a]
113
+ - Updated dependencies [63f9e9b]
114
+ - Updated dependencies [2e13791]
115
+ - @ai-sdk/provider@2.0.0-alpha.14
116
+ - @ai-sdk/provider-utils@3.0.0-alpha.14
117
+
118
+ ## 2.0.0-alpha.13
119
+
120
+ ### Patch Changes
121
+
122
+ - Updated dependencies [68ecf2f]
123
+ - @ai-sdk/provider@2.0.0-alpha.13
124
+ - @ai-sdk/provider-utils@3.0.0-alpha.13
125
+
126
+ ## 2.0.0-alpha.12
127
+
128
+ ### Patch Changes
129
+
130
+ - 2f542fa: Add reasoning-part-finish parts for reasoning models in the responses API
131
+ - e2aceaf: feat: add raw chunk support
132
+ - Updated dependencies [e2aceaf]
133
+ - @ai-sdk/provider@2.0.0-alpha.12
134
+ - @ai-sdk/provider-utils@3.0.0-alpha.12
135
+
136
+ ## 2.0.0-alpha.11
137
+
138
+ ### Patch Changes
139
+
140
+ - 8d12da5: feat(provider/openai): add serviceTier option for flex processing
141
+ - Updated dependencies [c1e6647]
142
+ - @ai-sdk/provider@2.0.0-alpha.11
143
+ - @ai-sdk/provider-utils@3.0.0-alpha.11
144
+
145
+ ## 2.0.0-alpha.10
146
+
147
+ ### Patch Changes
148
+
149
+ - Updated dependencies [c4df419]
150
+ - @ai-sdk/provider@2.0.0-alpha.10
151
+ - @ai-sdk/provider-utils@3.0.0-alpha.10
152
+
3
153
  ## 2.0.0-alpha.9
4
154
 
5
155
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -1,71 +1,91 @@
1
- import { LanguageModelV2, ProviderV2, EmbeddingModelV2, ImageModelV2, TranscriptionModelV1, SpeechModelV1 } from '@ai-sdk/provider';
1
+ import { LanguageModelV2, ProviderV2, EmbeddingModelV2, ImageModelV2, TranscriptionModelV2, SpeechModelV2 } from '@ai-sdk/provider';
2
+ import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
2
3
  import { FetchFunction } from '@ai-sdk/provider-utils';
3
- import { z } from 'zod';
4
+ import { z } from 'zod/v4';
4
5
 
5
6
  type OpenAIChatModelId = 'o1' | 'o1-2024-12-17' | 'o1-mini' | 'o1-mini-2024-09-12' | 'o1-preview' | 'o1-preview-2024-09-12' | 'o3-mini' | 'o3-mini-2025-01-31' | 'o3' | 'o3-2025-04-16' | 'o4-mini' | 'o4-mini-2025-04-16' | 'gpt-4.1' | 'gpt-4.1-2025-04-14' | 'gpt-4.1-mini' | 'gpt-4.1-mini-2025-04-14' | 'gpt-4.1-nano' | 'gpt-4.1-nano-2025-04-14' | 'gpt-4o' | 'gpt-4o-2024-05-13' | 'gpt-4o-2024-08-06' | 'gpt-4o-2024-11-20' | 'gpt-4o-audio-preview' | 'gpt-4o-audio-preview-2024-10-01' | 'gpt-4o-audio-preview-2024-12-17' | 'gpt-4o-search-preview' | 'gpt-4o-search-preview-2025-03-11' | 'gpt-4o-mini-search-preview' | 'gpt-4o-mini-search-preview-2025-03-11' | 'gpt-4o-mini' | 'gpt-4o-mini-2024-07-18' | 'gpt-4-turbo' | 'gpt-4-turbo-2024-04-09' | 'gpt-4-turbo-preview' | 'gpt-4-0125-preview' | 'gpt-4-1106-preview' | 'gpt-4' | 'gpt-4-0613' | 'gpt-4.5-preview' | 'gpt-4.5-preview-2025-02-27' | 'gpt-3.5-turbo-0125' | 'gpt-3.5-turbo' | 'gpt-3.5-turbo-1106' | 'chatgpt-4o-latest' | (string & {});
6
7
 
7
8
  type OpenAICompletionModelId = 'gpt-3.5-turbo-instruct' | (string & {});
8
9
 
9
- type OpenAICompletionConfig = {
10
+ type OpenAIEmbeddingModelId = 'text-embedding-3-small' | 'text-embedding-3-large' | 'text-embedding-ada-002' | (string & {});
11
+
12
+ type OpenAIImageModelId = 'gpt-image-1' | 'dall-e-3' | 'dall-e-2' | (string & {});
13
+
14
+ declare const openaiTools: {
15
+ fileSearch: _ai_sdk_provider_utils.ProviderDefinedToolFactory<{
16
+ query: string;
17
+ }, {
18
+ vectorStoreIds?: string[];
19
+ maxResults?: number;
20
+ searchType?: "auto" | "keyword" | "semantic";
21
+ }>;
22
+ webSearchPreview: _ai_sdk_provider_utils.ProviderDefinedToolFactory<{}, {
23
+ searchContextSize?: "low" | "medium" | "high";
24
+ userLocation?: {
25
+ type: "approximate";
26
+ country?: string;
27
+ city?: string;
28
+ region?: string;
29
+ timezone?: string;
30
+ };
31
+ }>;
32
+ };
33
+
34
+ type OpenAITranscriptionModelId = 'whisper-1' | 'gpt-4o-mini-transcribe' | 'gpt-4o-transcribe' | (string & {});
35
+
36
+ type OpenAIConfig = {
10
37
  provider: string;
11
- headers: () => Record<string, string | undefined>;
12
38
  url: (options: {
13
39
  modelId: string;
14
40
  path: string;
15
41
  }) => string;
42
+ headers: () => Record<string, string | undefined>;
16
43
  fetch?: FetchFunction;
44
+ generateId?: () => string;
17
45
  };
18
- declare class OpenAICompletionLanguageModel implements LanguageModelV2 {
46
+
47
+ declare const openaiResponsesModelIds: readonly ["gpt-4.1", "gpt-4.1-2025-04-14", "gpt-4.1-mini", "gpt-4.1-mini-2025-04-14", "gpt-4.1-nano", "gpt-4.1-nano-2025-04-14", "gpt-4o", "gpt-4o-2024-05-13", "gpt-4o-2024-08-06", "gpt-4o-2024-11-20", "gpt-4o-audio-preview", "gpt-4o-audio-preview-2024-10-01", "gpt-4o-audio-preview-2024-12-17", "gpt-4o-search-preview", "gpt-4o-search-preview-2025-03-11", "gpt-4o-mini-search-preview", "gpt-4o-mini-search-preview-2025-03-11", "gpt-4o-mini", "gpt-4o-mini-2024-07-18", "gpt-4-turbo", "gpt-4-turbo-2024-04-09", "gpt-4-turbo-preview", "gpt-4-0125-preview", "gpt-4-1106-preview", "gpt-4", "gpt-4-0613", "gpt-4.5-preview", "gpt-4.5-preview-2025-02-27", "gpt-3.5-turbo-0125", "gpt-3.5-turbo", "gpt-3.5-turbo-1106", "chatgpt-4o-latest", "o1", "o1-2024-12-17", "o1-mini", "o1-mini-2024-09-12", "o1-preview", "o1-preview-2024-09-12", "o3-mini", "o3-mini-2025-01-31", "o3", "o3-2025-04-16", "o4-mini", "o4-mini-2025-04-16", "codex-mini-latest", "computer-use-preview"];
48
+ type OpenAIResponsesModelId = (typeof openaiResponsesModelIds)[number] | (string & {});
49
+
50
+ declare class OpenAIResponsesLanguageModel implements LanguageModelV2 {
19
51
  readonly specificationVersion = "v2";
20
- readonly modelId: OpenAICompletionModelId;
52
+ readonly modelId: OpenAIResponsesModelId;
21
53
  private readonly config;
22
- private get providerOptionsName();
23
- constructor(modelId: OpenAICompletionModelId, config: OpenAICompletionConfig);
24
- get provider(): string;
54
+ constructor(modelId: OpenAIResponsesModelId, config: OpenAIConfig);
25
55
  readonly supportedUrls: Record<string, RegExp[]>;
56
+ get provider(): string;
26
57
  private getArgs;
27
58
  doGenerate(options: Parameters<LanguageModelV2['doGenerate']>[0]): Promise<Awaited<ReturnType<LanguageModelV2['doGenerate']>>>;
28
59
  doStream(options: Parameters<LanguageModelV2['doStream']>[0]): Promise<Awaited<ReturnType<LanguageModelV2['doStream']>>>;
29
60
  }
30
-
31
- type OpenAIEmbeddingModelId = 'text-embedding-3-small' | 'text-embedding-3-large' | 'text-embedding-ada-002' | (string & {});
32
-
33
- type OpenAIImageModelId = 'gpt-image-1' | 'dall-e-3' | 'dall-e-2' | (string & {});
34
-
35
- declare const WebSearchPreviewParameters: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
36
- declare function webSearchPreviewTool({ searchContextSize, userLocation, }?: {
37
- searchContextSize?: 'low' | 'medium' | 'high';
38
- userLocation?: {
39
- type?: 'approximate';
40
- city?: string;
41
- region?: string;
42
- country?: string;
43
- timezone?: string;
44
- };
45
- }): {
46
- type: 'provider-defined';
47
- id: 'openai.web_search_preview';
48
- args: {};
49
- parameters: typeof WebSearchPreviewParameters;
50
- };
51
- declare const openaiTools: {
52
- webSearchPreview: typeof webSearchPreviewTool;
53
- };
54
-
55
- type OpenAITranscriptionModelId = 'whisper-1' | 'gpt-4o-mini-transcribe' | 'gpt-4o-transcribe' | (string & {});
56
-
57
- type OpenAIResponsesModelId = 'o1' | 'o1-2024-12-17' | 'o1-mini' | 'o1-mini-2024-09-12' | 'o1-preview' | 'o1-preview-2024-09-12' | 'o3-mini' | 'o3-mini-2025-01-31' | 'o3' | 'o3-2025-04-16' | 'o4-mini' | 'o4-mini-2025-04-16' | 'gpt-4.1' | 'gpt-4.1-2025-04-14' | 'gpt-4.1-mini' | 'gpt-4.1-mini-2025-04-14' | 'gpt-4.1-nano' | 'gpt-4.1-nano-2025-04-14' | 'gpt-4o' | 'gpt-4o-2024-05-13' | 'gpt-4o-2024-08-06' | 'gpt-4o-2024-11-20' | 'gpt-4o-audio-preview' | 'gpt-4o-audio-preview-2024-10-01' | 'gpt-4o-audio-preview-2024-12-17' | 'gpt-4o-search-preview' | 'gpt-4o-search-preview-2025-03-11' | 'gpt-4o-mini-search-preview' | 'gpt-4o-mini-search-preview-2025-03-11' | 'gpt-4o-mini' | 'gpt-4o-mini-2024-07-18' | 'gpt-4-turbo' | 'gpt-4-turbo-2024-04-09' | 'gpt-4-turbo-preview' | 'gpt-4-0125-preview' | 'gpt-4-1106-preview' | 'gpt-4' | 'gpt-4-0613' | 'gpt-4.5-preview' | 'gpt-4.5-preview-2025-02-27' | 'gpt-3.5-turbo-0125' | 'gpt-3.5-turbo' | 'gpt-3.5-turbo-1106' | 'chatgpt-4o-latest' | (string & {});
61
+ declare const openaiResponsesProviderOptionsSchema: z.ZodObject<{
62
+ metadata: z.ZodOptional<z.ZodNullable<z.ZodAny>>;
63
+ parallelToolCalls: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
64
+ previousResponseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
65
+ store: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
66
+ user: z.ZodOptional<z.ZodNullable<z.ZodString>>;
67
+ reasoningEffort: z.ZodOptional<z.ZodNullable<z.ZodString>>;
68
+ strictJsonSchema: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
69
+ instructions: z.ZodOptional<z.ZodNullable<z.ZodString>>;
70
+ reasoningSummary: z.ZodOptional<z.ZodNullable<z.ZodString>>;
71
+ serviceTier: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
72
+ auto: "auto";
73
+ flex: "flex";
74
+ }>>>;
75
+ include: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodEnum<{
76
+ "reasoning.encrypted_content": "reasoning.encrypted_content";
77
+ }>>>>;
78
+ }, z.core.$strip>;
79
+ type OpenAIResponsesProviderOptions = z.infer<typeof openaiResponsesProviderOptionsSchema>;
58
80
 
59
81
  type OpenAISpeechModelId = 'tts-1' | 'tts-1-hd' | 'gpt-4o-mini-tts' | (string & {});
60
82
 
61
83
  interface OpenAIProvider extends ProviderV2 {
62
- (modelId: 'gpt-3.5-turbo-instruct'): OpenAICompletionLanguageModel;
63
- (modelId: OpenAIChatModelId): LanguageModelV2;
84
+ (modelId: OpenAIResponsesModelId): LanguageModelV2;
64
85
  /**
65
86
  Creates an OpenAI model for text generation.
66
87
  */
67
- languageModel(modelId: 'gpt-3.5-turbo-instruct'): OpenAICompletionLanguageModel;
68
- languageModel(modelId: OpenAIChatModelId): LanguageModelV2;
88
+ languageModel(modelId: OpenAIResponsesModelId): OpenAIResponsesLanguageModel;
69
89
  /**
70
90
  Creates an OpenAI chat model for text generation.
71
91
  */
@@ -104,11 +124,11 @@ interface OpenAIProvider extends ProviderV2 {
104
124
  /**
105
125
  Creates a model for transcription.
106
126
  */
107
- transcription(modelId: OpenAITranscriptionModelId): TranscriptionModelV1;
127
+ transcription(modelId: OpenAITranscriptionModelId): TranscriptionModelV2;
108
128
  /**
109
129
  Creates a model for speech generation.
110
130
  */
111
- speech(modelId: OpenAISpeechModelId): SpeechModelV1;
131
+ speech(modelId: OpenAISpeechModelId): SpeechModelV2;
112
132
  /**
113
133
  OpenAI-specific tools.
114
134
  */
@@ -154,37 +174,4 @@ Default OpenAI provider instance.
154
174
  */
155
175
  declare const openai: OpenAIProvider;
156
176
 
157
- declare const openaiResponsesProviderOptionsSchema: z.ZodObject<{
158
- metadata: z.ZodOptional<z.ZodNullable<z.ZodAny>>;
159
- parallelToolCalls: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
160
- previousResponseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
161
- store: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
162
- user: z.ZodOptional<z.ZodNullable<z.ZodString>>;
163
- reasoningEffort: z.ZodOptional<z.ZodNullable<z.ZodString>>;
164
- strictSchemas: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
165
- instructions: z.ZodOptional<z.ZodNullable<z.ZodString>>;
166
- reasoningSummary: z.ZodOptional<z.ZodNullable<z.ZodString>>;
167
- }, "strip", z.ZodTypeAny, {
168
- user?: string | null | undefined;
169
- parallelToolCalls?: boolean | null | undefined;
170
- reasoningEffort?: string | null | undefined;
171
- store?: boolean | null | undefined;
172
- metadata?: any;
173
- previousResponseId?: string | null | undefined;
174
- strictSchemas?: boolean | null | undefined;
175
- instructions?: string | null | undefined;
176
- reasoningSummary?: string | null | undefined;
177
- }, {
178
- user?: string | null | undefined;
179
- parallelToolCalls?: boolean | null | undefined;
180
- reasoningEffort?: string | null | undefined;
181
- store?: boolean | null | undefined;
182
- metadata?: any;
183
- previousResponseId?: string | null | undefined;
184
- strictSchemas?: boolean | null | undefined;
185
- instructions?: string | null | undefined;
186
- reasoningSummary?: string | null | undefined;
187
- }>;
188
- type OpenAIResponsesProviderOptions = z.infer<typeof openaiResponsesProviderOptionsSchema>;
189
-
190
177
  export { type OpenAIProvider, type OpenAIProviderSettings, type OpenAIResponsesProviderOptions, createOpenAI, openai };
package/dist/index.d.ts CHANGED
@@ -1,71 +1,91 @@
1
- import { LanguageModelV2, ProviderV2, EmbeddingModelV2, ImageModelV2, TranscriptionModelV1, SpeechModelV1 } from '@ai-sdk/provider';
1
+ import { LanguageModelV2, ProviderV2, EmbeddingModelV2, ImageModelV2, TranscriptionModelV2, SpeechModelV2 } from '@ai-sdk/provider';
2
+ import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
2
3
  import { FetchFunction } from '@ai-sdk/provider-utils';
3
- import { z } from 'zod';
4
+ import { z } from 'zod/v4';
4
5
 
5
6
  type OpenAIChatModelId = 'o1' | 'o1-2024-12-17' | 'o1-mini' | 'o1-mini-2024-09-12' | 'o1-preview' | 'o1-preview-2024-09-12' | 'o3-mini' | 'o3-mini-2025-01-31' | 'o3' | 'o3-2025-04-16' | 'o4-mini' | 'o4-mini-2025-04-16' | 'gpt-4.1' | 'gpt-4.1-2025-04-14' | 'gpt-4.1-mini' | 'gpt-4.1-mini-2025-04-14' | 'gpt-4.1-nano' | 'gpt-4.1-nano-2025-04-14' | 'gpt-4o' | 'gpt-4o-2024-05-13' | 'gpt-4o-2024-08-06' | 'gpt-4o-2024-11-20' | 'gpt-4o-audio-preview' | 'gpt-4o-audio-preview-2024-10-01' | 'gpt-4o-audio-preview-2024-12-17' | 'gpt-4o-search-preview' | 'gpt-4o-search-preview-2025-03-11' | 'gpt-4o-mini-search-preview' | 'gpt-4o-mini-search-preview-2025-03-11' | 'gpt-4o-mini' | 'gpt-4o-mini-2024-07-18' | 'gpt-4-turbo' | 'gpt-4-turbo-2024-04-09' | 'gpt-4-turbo-preview' | 'gpt-4-0125-preview' | 'gpt-4-1106-preview' | 'gpt-4' | 'gpt-4-0613' | 'gpt-4.5-preview' | 'gpt-4.5-preview-2025-02-27' | 'gpt-3.5-turbo-0125' | 'gpt-3.5-turbo' | 'gpt-3.5-turbo-1106' | 'chatgpt-4o-latest' | (string & {});
6
7
 
7
8
  type OpenAICompletionModelId = 'gpt-3.5-turbo-instruct' | (string & {});
8
9
 
9
- type OpenAICompletionConfig = {
10
+ type OpenAIEmbeddingModelId = 'text-embedding-3-small' | 'text-embedding-3-large' | 'text-embedding-ada-002' | (string & {});
11
+
12
+ type OpenAIImageModelId = 'gpt-image-1' | 'dall-e-3' | 'dall-e-2' | (string & {});
13
+
14
+ declare const openaiTools: {
15
+ fileSearch: _ai_sdk_provider_utils.ProviderDefinedToolFactory<{
16
+ query: string;
17
+ }, {
18
+ vectorStoreIds?: string[];
19
+ maxResults?: number;
20
+ searchType?: "auto" | "keyword" | "semantic";
21
+ }>;
22
+ webSearchPreview: _ai_sdk_provider_utils.ProviderDefinedToolFactory<{}, {
23
+ searchContextSize?: "low" | "medium" | "high";
24
+ userLocation?: {
25
+ type: "approximate";
26
+ country?: string;
27
+ city?: string;
28
+ region?: string;
29
+ timezone?: string;
30
+ };
31
+ }>;
32
+ };
33
+
34
+ type OpenAITranscriptionModelId = 'whisper-1' | 'gpt-4o-mini-transcribe' | 'gpt-4o-transcribe' | (string & {});
35
+
36
+ type OpenAIConfig = {
10
37
  provider: string;
11
- headers: () => Record<string, string | undefined>;
12
38
  url: (options: {
13
39
  modelId: string;
14
40
  path: string;
15
41
  }) => string;
42
+ headers: () => Record<string, string | undefined>;
16
43
  fetch?: FetchFunction;
44
+ generateId?: () => string;
17
45
  };
18
- declare class OpenAICompletionLanguageModel implements LanguageModelV2 {
46
+
47
+ declare const openaiResponsesModelIds: readonly ["gpt-4.1", "gpt-4.1-2025-04-14", "gpt-4.1-mini", "gpt-4.1-mini-2025-04-14", "gpt-4.1-nano", "gpt-4.1-nano-2025-04-14", "gpt-4o", "gpt-4o-2024-05-13", "gpt-4o-2024-08-06", "gpt-4o-2024-11-20", "gpt-4o-audio-preview", "gpt-4o-audio-preview-2024-10-01", "gpt-4o-audio-preview-2024-12-17", "gpt-4o-search-preview", "gpt-4o-search-preview-2025-03-11", "gpt-4o-mini-search-preview", "gpt-4o-mini-search-preview-2025-03-11", "gpt-4o-mini", "gpt-4o-mini-2024-07-18", "gpt-4-turbo", "gpt-4-turbo-2024-04-09", "gpt-4-turbo-preview", "gpt-4-0125-preview", "gpt-4-1106-preview", "gpt-4", "gpt-4-0613", "gpt-4.5-preview", "gpt-4.5-preview-2025-02-27", "gpt-3.5-turbo-0125", "gpt-3.5-turbo", "gpt-3.5-turbo-1106", "chatgpt-4o-latest", "o1", "o1-2024-12-17", "o1-mini", "o1-mini-2024-09-12", "o1-preview", "o1-preview-2024-09-12", "o3-mini", "o3-mini-2025-01-31", "o3", "o3-2025-04-16", "o4-mini", "o4-mini-2025-04-16", "codex-mini-latest", "computer-use-preview"];
48
+ type OpenAIResponsesModelId = (typeof openaiResponsesModelIds)[number] | (string & {});
49
+
50
+ declare class OpenAIResponsesLanguageModel implements LanguageModelV2 {
19
51
  readonly specificationVersion = "v2";
20
- readonly modelId: OpenAICompletionModelId;
52
+ readonly modelId: OpenAIResponsesModelId;
21
53
  private readonly config;
22
- private get providerOptionsName();
23
- constructor(modelId: OpenAICompletionModelId, config: OpenAICompletionConfig);
24
- get provider(): string;
54
+ constructor(modelId: OpenAIResponsesModelId, config: OpenAIConfig);
25
55
  readonly supportedUrls: Record<string, RegExp[]>;
56
+ get provider(): string;
26
57
  private getArgs;
27
58
  doGenerate(options: Parameters<LanguageModelV2['doGenerate']>[0]): Promise<Awaited<ReturnType<LanguageModelV2['doGenerate']>>>;
28
59
  doStream(options: Parameters<LanguageModelV2['doStream']>[0]): Promise<Awaited<ReturnType<LanguageModelV2['doStream']>>>;
29
60
  }
30
-
31
- type OpenAIEmbeddingModelId = 'text-embedding-3-small' | 'text-embedding-3-large' | 'text-embedding-ada-002' | (string & {});
32
-
33
- type OpenAIImageModelId = 'gpt-image-1' | 'dall-e-3' | 'dall-e-2' | (string & {});
34
-
35
- declare const WebSearchPreviewParameters: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
36
- declare function webSearchPreviewTool({ searchContextSize, userLocation, }?: {
37
- searchContextSize?: 'low' | 'medium' | 'high';
38
- userLocation?: {
39
- type?: 'approximate';
40
- city?: string;
41
- region?: string;
42
- country?: string;
43
- timezone?: string;
44
- };
45
- }): {
46
- type: 'provider-defined';
47
- id: 'openai.web_search_preview';
48
- args: {};
49
- parameters: typeof WebSearchPreviewParameters;
50
- };
51
- declare const openaiTools: {
52
- webSearchPreview: typeof webSearchPreviewTool;
53
- };
54
-
55
- type OpenAITranscriptionModelId = 'whisper-1' | 'gpt-4o-mini-transcribe' | 'gpt-4o-transcribe' | (string & {});
56
-
57
- type OpenAIResponsesModelId = 'o1' | 'o1-2024-12-17' | 'o1-mini' | 'o1-mini-2024-09-12' | 'o1-preview' | 'o1-preview-2024-09-12' | 'o3-mini' | 'o3-mini-2025-01-31' | 'o3' | 'o3-2025-04-16' | 'o4-mini' | 'o4-mini-2025-04-16' | 'gpt-4.1' | 'gpt-4.1-2025-04-14' | 'gpt-4.1-mini' | 'gpt-4.1-mini-2025-04-14' | 'gpt-4.1-nano' | 'gpt-4.1-nano-2025-04-14' | 'gpt-4o' | 'gpt-4o-2024-05-13' | 'gpt-4o-2024-08-06' | 'gpt-4o-2024-11-20' | 'gpt-4o-audio-preview' | 'gpt-4o-audio-preview-2024-10-01' | 'gpt-4o-audio-preview-2024-12-17' | 'gpt-4o-search-preview' | 'gpt-4o-search-preview-2025-03-11' | 'gpt-4o-mini-search-preview' | 'gpt-4o-mini-search-preview-2025-03-11' | 'gpt-4o-mini' | 'gpt-4o-mini-2024-07-18' | 'gpt-4-turbo' | 'gpt-4-turbo-2024-04-09' | 'gpt-4-turbo-preview' | 'gpt-4-0125-preview' | 'gpt-4-1106-preview' | 'gpt-4' | 'gpt-4-0613' | 'gpt-4.5-preview' | 'gpt-4.5-preview-2025-02-27' | 'gpt-3.5-turbo-0125' | 'gpt-3.5-turbo' | 'gpt-3.5-turbo-1106' | 'chatgpt-4o-latest' | (string & {});
61
+ declare const openaiResponsesProviderOptionsSchema: z.ZodObject<{
62
+ metadata: z.ZodOptional<z.ZodNullable<z.ZodAny>>;
63
+ parallelToolCalls: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
64
+ previousResponseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
65
+ store: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
66
+ user: z.ZodOptional<z.ZodNullable<z.ZodString>>;
67
+ reasoningEffort: z.ZodOptional<z.ZodNullable<z.ZodString>>;
68
+ strictJsonSchema: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
69
+ instructions: z.ZodOptional<z.ZodNullable<z.ZodString>>;
70
+ reasoningSummary: z.ZodOptional<z.ZodNullable<z.ZodString>>;
71
+ serviceTier: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
72
+ auto: "auto";
73
+ flex: "flex";
74
+ }>>>;
75
+ include: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodEnum<{
76
+ "reasoning.encrypted_content": "reasoning.encrypted_content";
77
+ }>>>>;
78
+ }, z.core.$strip>;
79
+ type OpenAIResponsesProviderOptions = z.infer<typeof openaiResponsesProviderOptionsSchema>;
58
80
 
59
81
  type OpenAISpeechModelId = 'tts-1' | 'tts-1-hd' | 'gpt-4o-mini-tts' | (string & {});
60
82
 
61
83
  interface OpenAIProvider extends ProviderV2 {
62
- (modelId: 'gpt-3.5-turbo-instruct'): OpenAICompletionLanguageModel;
63
- (modelId: OpenAIChatModelId): LanguageModelV2;
84
+ (modelId: OpenAIResponsesModelId): LanguageModelV2;
64
85
  /**
65
86
  Creates an OpenAI model for text generation.
66
87
  */
67
- languageModel(modelId: 'gpt-3.5-turbo-instruct'): OpenAICompletionLanguageModel;
68
- languageModel(modelId: OpenAIChatModelId): LanguageModelV2;
88
+ languageModel(modelId: OpenAIResponsesModelId): OpenAIResponsesLanguageModel;
69
89
  /**
70
90
  Creates an OpenAI chat model for text generation.
71
91
  */
@@ -104,11 +124,11 @@ interface OpenAIProvider extends ProviderV2 {
104
124
  /**
105
125
  Creates a model for transcription.
106
126
  */
107
- transcription(modelId: OpenAITranscriptionModelId): TranscriptionModelV1;
127
+ transcription(modelId: OpenAITranscriptionModelId): TranscriptionModelV2;
108
128
  /**
109
129
  Creates a model for speech generation.
110
130
  */
111
- speech(modelId: OpenAISpeechModelId): SpeechModelV1;
131
+ speech(modelId: OpenAISpeechModelId): SpeechModelV2;
112
132
  /**
113
133
  OpenAI-specific tools.
114
134
  */
@@ -154,37 +174,4 @@ Default OpenAI provider instance.
154
174
  */
155
175
  declare const openai: OpenAIProvider;
156
176
 
157
- declare const openaiResponsesProviderOptionsSchema: z.ZodObject<{
158
- metadata: z.ZodOptional<z.ZodNullable<z.ZodAny>>;
159
- parallelToolCalls: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
160
- previousResponseId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
161
- store: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
162
- user: z.ZodOptional<z.ZodNullable<z.ZodString>>;
163
- reasoningEffort: z.ZodOptional<z.ZodNullable<z.ZodString>>;
164
- strictSchemas: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
165
- instructions: z.ZodOptional<z.ZodNullable<z.ZodString>>;
166
- reasoningSummary: z.ZodOptional<z.ZodNullable<z.ZodString>>;
167
- }, "strip", z.ZodTypeAny, {
168
- user?: string | null | undefined;
169
- parallelToolCalls?: boolean | null | undefined;
170
- reasoningEffort?: string | null | undefined;
171
- store?: boolean | null | undefined;
172
- metadata?: any;
173
- previousResponseId?: string | null | undefined;
174
- strictSchemas?: boolean | null | undefined;
175
- instructions?: string | null | undefined;
176
- reasoningSummary?: string | null | undefined;
177
- }, {
178
- user?: string | null | undefined;
179
- parallelToolCalls?: boolean | null | undefined;
180
- reasoningEffort?: string | null | undefined;
181
- store?: boolean | null | undefined;
182
- metadata?: any;
183
- previousResponseId?: string | null | undefined;
184
- strictSchemas?: boolean | null | undefined;
185
- instructions?: string | null | undefined;
186
- reasoningSummary?: string | null | undefined;
187
- }>;
188
- type OpenAIResponsesProviderOptions = z.infer<typeof openaiResponsesProviderOptionsSchema>;
189
-
190
177
  export { type OpenAIProvider, type OpenAIProviderSettings, type OpenAIResponsesProviderOptions, createOpenAI, openai };