@ai-sdk/openai 4.0.59 → 4.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/CHANGELOG.md +20 -0
- package/dist/index.d.ts +47 -11
- package/dist/index.js +278 -138
- package/dist/index.js.map +1 -1
- package/dist/internal/index.d.ts +45 -11
- package/dist/internal/index.js +188 -51
- package/dist/internal/index.js.map +1 -1
- package/docs/03-openai.mdx +138 -10
- package/package.json +3 -3
- package/src/chat/openai-chat-language-model.ts +29 -1
- package/src/index.ts +1 -0
- package/src/{openai-responses-batch.ts → openai-batch.ts} +71 -87
- package/src/openai-language-model-capabilities.ts +10 -0
- package/src/openai-provider.ts +27 -6
- package/src/openai-tools.ts +1 -0
- package/src/responses/convert-to-openai-responses-input.ts +13 -0
- package/src/responses/openai-responses-api.ts +18 -0
- package/src/responses/openai-responses-language-model-options.ts +12 -0
- package/src/responses/openai-responses-language-model.ts +137 -29
- package/src/responses/openai-responses-prepare-tools.ts +47 -0
- package/src/responses/openai-responses-provider-metadata.ts +16 -0
- package/src/tool/custom.ts +7 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
# @ai-sdk/openai
|
|
2
2
|
|
|
3
|
+
## 4.0.61
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- a4ba394: feat: support per-request models in batch
|
|
8
|
+
- 4a09793: feat(openai): add async tool calling
|
|
9
|
+
- 685ed8c: chore: fix failing CI
|
|
10
|
+
- Updated dependencies [a4ba394]
|
|
11
|
+
- Updated dependencies [45099da]
|
|
12
|
+
- Updated dependencies [9e1d1b2]
|
|
13
|
+
- Updated dependencies [a495511]
|
|
14
|
+
- @ai-sdk/provider@4.0.11
|
|
15
|
+
- @ai-sdk/provider-utils@5.0.37
|
|
16
|
+
|
|
17
|
+
## 4.0.60
|
|
18
|
+
|
|
19
|
+
### Patch Changes
|
|
20
|
+
|
|
21
|
+
- 17e489e: feat(openai): add GPT-6 reasoning configuration updates
|
|
22
|
+
|
|
3
23
|
## 4.0.59
|
|
4
24
|
|
|
5
25
|
### Patch Changes
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _ai_sdk_provider from '@ai-sdk/provider';
|
|
2
|
-
import { JSONValue, ProviderV4,
|
|
2
|
+
import { JSONValue, ProviderV4, LanguageModelV4, EmbeddingModelV4, ImageModelV4, TranscriptionModelV4, Experimental_SpeechTranslationModelV4, SpeechModelV4, Experimental_RealtimeFactoryV4, FilesV4, SkillsV4, Experimental_BatchV4, Experimental_RealtimeModelV4, Experimental_RealtimeModelV4ClientSecretOptions, Experimental_RealtimeModelV4ClientSecretResult, Experimental_RealtimeModelV4ServerEvent, Experimental_RealtimeModelV4ClientEvent, Experimental_RealtimeModelV4SessionConfig, JSONObject, Experimental_SpeechTranslationModelV4StreamOptions } from '@ai-sdk/provider';
|
|
3
3
|
import * as _ai_sdk_provider_utils from '@ai-sdk/provider-utils';
|
|
4
4
|
import { InferSchema, FetchFunction, WebSocketConstructor, WORKFLOW_SERIALIZE, WORKFLOW_DESERIALIZE } from '@ai-sdk/provider-utils';
|
|
5
5
|
import { z } from 'zod/v4';
|
|
@@ -10,7 +10,7 @@ declare const openaiLanguageModelChatOptions: _ai_sdk_provider_utils.LazySchema<
|
|
|
10
10
|
logprobs?: number | boolean | undefined;
|
|
11
11
|
parallelToolCalls?: boolean | undefined;
|
|
12
12
|
user?: string | undefined;
|
|
13
|
-
reasoningEffort?: "
|
|
13
|
+
reasoningEffort?: "low" | "medium" | "high" | "xhigh" | "max" | "none" | "minimal" | undefined;
|
|
14
14
|
maxCompletionTokens?: number | undefined;
|
|
15
15
|
store?: boolean | undefined;
|
|
16
16
|
metadata?: Record<string, string> | undefined;
|
|
@@ -49,7 +49,7 @@ type OpenAIEmbeddingModelOptions = InferSchema<typeof openaiEmbeddingModelOption
|
|
|
49
49
|
|
|
50
50
|
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 & {});
|
|
51
51
|
declare const openaiImageModelOptions: _ai_sdk_provider_utils.LazySchema<{
|
|
52
|
-
quality?: "
|
|
52
|
+
quality?: "low" | "medium" | "high" | "auto" | "standard" | "hd" | undefined;
|
|
53
53
|
background?: "auto" | "transparent" | "opaque" | undefined;
|
|
54
54
|
outputFormat?: "png" | "jpeg" | "webp" | undefined;
|
|
55
55
|
outputCompression?: number | undefined;
|
|
@@ -57,17 +57,17 @@ declare const openaiImageModelOptions: _ai_sdk_provider_utils.LazySchema<{
|
|
|
57
57
|
}>;
|
|
58
58
|
type OpenAIImageModelOptions = InferSchema<typeof openaiImageModelOptions>;
|
|
59
59
|
declare const openaiImageModelGenerationOptions: _ai_sdk_provider_utils.LazySchema<{
|
|
60
|
-
quality?: "
|
|
60
|
+
quality?: "low" | "medium" | "high" | "auto" | "standard" | "hd" | undefined;
|
|
61
61
|
background?: "auto" | "transparent" | "opaque" | undefined;
|
|
62
62
|
outputFormat?: "png" | "jpeg" | "webp" | undefined;
|
|
63
63
|
outputCompression?: number | undefined;
|
|
64
64
|
user?: string | undefined;
|
|
65
65
|
style?: "vivid" | "natural" | undefined;
|
|
66
|
-
moderation?: "
|
|
66
|
+
moderation?: "low" | "auto" | undefined;
|
|
67
67
|
}>;
|
|
68
68
|
type OpenAIImageModelGenerationOptions = InferSchema<typeof openaiImageModelGenerationOptions>;
|
|
69
69
|
declare const openaiImageModelEditOptions: _ai_sdk_provider_utils.LazySchema<{
|
|
70
|
-
quality?: "
|
|
70
|
+
quality?: "low" | "medium" | "high" | "auto" | "standard" | "hd" | undefined;
|
|
71
71
|
background?: "auto" | "transparent" | "opaque" | undefined;
|
|
72
72
|
outputFormat?: "png" | "jpeg" | "webp" | undefined;
|
|
73
73
|
outputCompression?: number | undefined;
|
|
@@ -443,6 +443,7 @@ declare const openaiResponsesChunkSchema: _ai_sdk_provider_utils.LazySchema<{
|
|
|
443
443
|
call_id: string;
|
|
444
444
|
name: string;
|
|
445
445
|
arguments: string;
|
|
446
|
+
async?: boolean | null | undefined;
|
|
446
447
|
namespace?: string | null | undefined;
|
|
447
448
|
caller?: {
|
|
448
449
|
type: "direct";
|
|
@@ -519,6 +520,7 @@ declare const openaiResponsesChunkSchema: _ai_sdk_provider_utils.LazySchema<{
|
|
|
519
520
|
call_id: string;
|
|
520
521
|
name: string;
|
|
521
522
|
input: string;
|
|
523
|
+
async?: boolean | null | undefined;
|
|
522
524
|
} | {
|
|
523
525
|
type: "shell_call";
|
|
524
526
|
id: string;
|
|
@@ -695,6 +697,7 @@ declare const openaiResponsesChunkSchema: _ai_sdk_provider_utils.LazySchema<{
|
|
|
695
697
|
name: string;
|
|
696
698
|
arguments: string;
|
|
697
699
|
status: "completed" | "in_progress" | "incomplete";
|
|
700
|
+
async?: boolean | null | undefined;
|
|
698
701
|
namespace?: string | null | undefined;
|
|
699
702
|
caller?: {
|
|
700
703
|
type: "direct";
|
|
@@ -709,6 +712,7 @@ declare const openaiResponsesChunkSchema: _ai_sdk_provider_utils.LazySchema<{
|
|
|
709
712
|
name: string;
|
|
710
713
|
input: string;
|
|
711
714
|
status: "completed";
|
|
715
|
+
async?: boolean | null | undefined;
|
|
712
716
|
} | {
|
|
713
717
|
type: "code_interpreter_call";
|
|
714
718
|
id: string;
|
|
@@ -949,6 +953,11 @@ declare const customToolFactory: _ai_sdk_provider_utils.ProviderDefinedToolFacto
|
|
|
949
953
|
* An optional description of what the tool does.
|
|
950
954
|
*/
|
|
951
955
|
description?: string;
|
|
956
|
+
/**
|
|
957
|
+
* Whether the model can continue generating after calling this tool
|
|
958
|
+
* without waiting for its result.
|
|
959
|
+
*/
|
|
960
|
+
async?: boolean;
|
|
952
961
|
/**
|
|
953
962
|
* The output format specification for the tool.
|
|
954
963
|
* Omit for unconstrained text output.
|
|
@@ -1014,6 +1023,7 @@ declare const openaiTools: {
|
|
|
1014
1023
|
* `input` field is a string matching the specified grammar.
|
|
1015
1024
|
*
|
|
1016
1025
|
* @param description - An optional description of the tool.
|
|
1026
|
+
* @param async - Whether the model can continue without waiting for the tool result.
|
|
1017
1027
|
* @param format - The output format constraint (grammar type, syntax, and definition).
|
|
1018
1028
|
*/
|
|
1019
1029
|
customTool: (args: Parameters<typeof customToolFactory>[0]) => _ai_sdk_provider_utils.ProviderDefinedTool<string, unknown, {}>;
|
|
@@ -1382,6 +1392,7 @@ declare const openaiLanguageModelResponsesOptionsSchema: _ai_sdk_provider_utils.
|
|
|
1382
1392
|
} | undefined;
|
|
1383
1393
|
promptCacheRetention?: "in_memory" | "24h" | null | undefined;
|
|
1384
1394
|
reasoningEffort?: string | null | undefined;
|
|
1395
|
+
reasoningEffortUpdate?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
1385
1396
|
reasoningMode?: "standard" | "pro" | undefined;
|
|
1386
1397
|
reasoningContext?: "auto" | "current_turn" | "all_turns" | undefined;
|
|
1387
1398
|
reasoningSummary?: string | null | undefined;
|
|
@@ -1429,7 +1440,7 @@ declare const openAITranscriptionModelOptions: _ai_sdk_provider_utils.LazySchema
|
|
|
1429
1440
|
silenceDurationMs?: number | undefined;
|
|
1430
1441
|
} | undefined;
|
|
1431
1442
|
streaming?: {
|
|
1432
|
-
delay?: "
|
|
1443
|
+
delay?: "low" | "medium" | "high" | "xhigh" | "minimal" | undefined;
|
|
1433
1444
|
include?: string[] | undefined;
|
|
1434
1445
|
} | undefined;
|
|
1435
1446
|
}>;
|
|
@@ -1440,11 +1451,11 @@ declare const openAISpeechTranslationModelOptions: _ai_sdk_provider_utils.LazySc
|
|
|
1440
1451
|
type OpenAISpeechTranslationModelOptions = InferSchema<typeof openAISpeechTranslationModelOptions>;
|
|
1441
1452
|
|
|
1442
1453
|
interface OpenAIProvider extends ProviderV4 {
|
|
1443
|
-
(modelId: OpenAIResponsesModelId):
|
|
1454
|
+
(modelId: OpenAIResponsesModelId): LanguageModelV4;
|
|
1444
1455
|
/**
|
|
1445
1456
|
* Creates an OpenAI model for text generation.
|
|
1446
1457
|
*/
|
|
1447
|
-
languageModel(modelId: OpenAIResponsesModelId):
|
|
1458
|
+
languageModel(modelId: OpenAIResponsesModelId): LanguageModelV4;
|
|
1448
1459
|
/**
|
|
1449
1460
|
* Creates an OpenAI chat model for text generation.
|
|
1450
1461
|
*/
|
|
@@ -1452,7 +1463,7 @@ interface OpenAIProvider extends ProviderV4 {
|
|
|
1452
1463
|
/**
|
|
1453
1464
|
* Creates an OpenAI responses API model for text generation.
|
|
1454
1465
|
*/
|
|
1455
|
-
responses(modelId: OpenAIResponsesModelId):
|
|
1466
|
+
responses(modelId: OpenAIResponsesModelId): LanguageModelV4;
|
|
1456
1467
|
/**
|
|
1457
1468
|
* Creates an OpenAI completion model for text generation.
|
|
1458
1469
|
*/
|
|
@@ -1510,6 +1521,12 @@ interface OpenAIProvider extends ProviderV4 {
|
|
|
1510
1521
|
* Returns a SkillsV4 interface for uploading skills to OpenAI.
|
|
1511
1522
|
*/
|
|
1512
1523
|
skills(): SkillsV4;
|
|
1524
|
+
/**
|
|
1525
|
+
* Returns a BatchV4 interface for processing batches with OpenAI.
|
|
1526
|
+
*/
|
|
1527
|
+
experimental_batch(): Experimental_BatchV4<{
|
|
1528
|
+
text: OpenAIResponsesModelId;
|
|
1529
|
+
}>;
|
|
1513
1530
|
/**
|
|
1514
1531
|
* OpenAI-specific tools.
|
|
1515
1532
|
*/
|
|
@@ -1587,6 +1604,11 @@ declare class OpenAIRealtimeModel implements Experimental_RealtimeModelV4 {
|
|
|
1587
1604
|
|
|
1588
1605
|
type OpenAIToolOptions = {
|
|
1589
1606
|
allowedCallers?: Array<'direct' | 'programmatic'>;
|
|
1607
|
+
/**
|
|
1608
|
+
* Whether the model can continue generating after calling this tool without
|
|
1609
|
+
* waiting for its result.
|
|
1610
|
+
*/
|
|
1611
|
+
async?: boolean;
|
|
1590
1612
|
deferLoading?: boolean;
|
|
1591
1613
|
outputSchema?: JSONObject;
|
|
1592
1614
|
namespace?: {
|
|
@@ -1721,6 +1743,20 @@ type OpenaiResponsesReasoningProviderMetadata = {
|
|
|
1721
1743
|
type OpenaiResponsesProviderMetadata = {
|
|
1722
1744
|
openai: ResponsesProviderMetadata;
|
|
1723
1745
|
};
|
|
1746
|
+
type ResponsesToolCallProviderMetadata = {
|
|
1747
|
+
itemId: string;
|
|
1748
|
+
async?: boolean;
|
|
1749
|
+
namespace?: string;
|
|
1750
|
+
caller?: {
|
|
1751
|
+
type: 'direct';
|
|
1752
|
+
} | {
|
|
1753
|
+
type: 'program';
|
|
1754
|
+
callerId: string;
|
|
1755
|
+
};
|
|
1756
|
+
};
|
|
1757
|
+
type OpenaiResponsesToolCallProviderMetadata = {
|
|
1758
|
+
openai: ResponsesToolCallProviderMetadata;
|
|
1759
|
+
};
|
|
1724
1760
|
type ResponsesCompactionProviderMetadata = {
|
|
1725
1761
|
type: 'compaction';
|
|
1726
1762
|
itemId: string;
|
|
@@ -1756,4 +1792,4 @@ type OpenaiResponsesSourceDocumentProviderMetadata = {
|
|
|
1756
1792
|
|
|
1757
1793
|
declare const VERSION: string;
|
|
1758
1794
|
|
|
1759
|
-
export { OpenAIRealtimeModel as Experimental_OpenAIRealtimeModel, type OpenAIRealtimeModelConfig as Experimental_OpenAIRealtimeModelConfig, OpenAISpeechTranslationModel as Experimental_OpenAISpeechTranslationModel, type OpenAISpeechTranslationModelId as Experimental_OpenAISpeechTranslationModelId, type OpenAISpeechTranslationModelOptions as Experimental_OpenAISpeechTranslationModelOptions, OpenAISpeechTranslationModel as Experimental_OpenAITranslationModel, type OpenAISpeechTranslationModelId as Experimental_OpenAITranslationModelId, type OpenAISpeechTranslationModelOptions as Experimental_OpenAITranslationModelOptions, type OpenAILanguageModelChatOptions as OpenAIChatLanguageModelOptions, type OpenAIComputerAction, type OpenAIComputerSafetyCheck, type OpenAIEmbeddingModelOptions, type OpenAIFilesOptions, type OpenAIImageModelEditOptions, type OpenAIImageModelGenerationOptions, type OpenAIImageModelOptions, type OpenAILanguageModelChatOptions, type OpenAILanguageModelCompletionOptions, type OpenAILanguageModelResponsesOptions, type OpenAIProvider, type OpenAIProviderSettings, type OpenAILanguageModelResponsesOptions as OpenAIResponsesProviderOptions, type OpenAISpeechModelOptions, type OpenAIToolOptions, type OpenAITranscriptionModelOptions, type OpenaiResponsesCompactionProviderMetadata, type OpenaiResponsesProviderMetadata, type OpenaiResponsesReasoningProviderMetadata, type OpenaiResponsesSourceDocumentProviderMetadata, type OpenaiResponsesTextProviderMetadata, VERSION, createOpenAI, openai };
|
|
1795
|
+
export { OpenAIRealtimeModel as Experimental_OpenAIRealtimeModel, type OpenAIRealtimeModelConfig as Experimental_OpenAIRealtimeModelConfig, OpenAISpeechTranslationModel as Experimental_OpenAISpeechTranslationModel, type OpenAISpeechTranslationModelId as Experimental_OpenAISpeechTranslationModelId, type OpenAISpeechTranslationModelOptions as Experimental_OpenAISpeechTranslationModelOptions, OpenAISpeechTranslationModel as Experimental_OpenAITranslationModel, type OpenAISpeechTranslationModelId as Experimental_OpenAITranslationModelId, type OpenAISpeechTranslationModelOptions as Experimental_OpenAITranslationModelOptions, type OpenAILanguageModelChatOptions as OpenAIChatLanguageModelOptions, type OpenAIComputerAction, type OpenAIComputerSafetyCheck, type OpenAIEmbeddingModelOptions, type OpenAIFilesOptions, type OpenAIImageModelEditOptions, type OpenAIImageModelGenerationOptions, type OpenAIImageModelOptions, type OpenAILanguageModelChatOptions, type OpenAILanguageModelCompletionOptions, type OpenAILanguageModelResponsesOptions, type OpenAIProvider, type OpenAIProviderSettings, type OpenAILanguageModelResponsesOptions as OpenAIResponsesProviderOptions, type OpenAISpeechModelOptions, type OpenAIToolOptions, type OpenAITranscriptionModelOptions, type OpenaiResponsesCompactionProviderMetadata, type OpenaiResponsesProviderMetadata, type OpenaiResponsesReasoningProviderMetadata, type OpenaiResponsesSourceDocumentProviderMetadata, type OpenaiResponsesTextProviderMetadata, type OpenaiResponsesToolCallProviderMetadata, VERSION, createOpenAI, openai };
|