@zhivex-ai/openai 0.16.3 → 0.17.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 +4 -2
- package/dist/index.d.ts +26 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +162 -23
- package/dist/index.js.map +1 -1
- package/dist/live-audio.d.ts +3 -2
- package/dist/live-audio.d.ts.map +1 -1
- package/dist/live-audio.js.map +1 -1
- package/dist/live-session.d.ts +7 -6
- package/dist/live-session.d.ts.map +1 -1
- package/dist/live-session.js +5 -3
- package/dist/live-session.js.map +1 -1
- package/dist/live-webrtc-server.d.ts +5 -3
- package/dist/live-webrtc-server.d.ts.map +1 -1
- package/dist/live-webrtc-server.js +2 -1
- package/dist/live-webrtc-server.js.map +1 -1
- package/dist/live.d.ts +3 -2
- package/dist/live.d.ts.map +1 -1
- package/dist/live.js.map +1 -1
- package/dist/model-profiles.d.ts.map +1 -1
- package/dist/model-profiles.js +5 -2
- package/dist/model-profiles.js.map +1 -1
- package/dist/realtime.d.ts +4 -3
- package/dist/realtime.d.ts.map +1 -1
- package/dist/realtime.js +13 -2
- package/dist/realtime.js.map +1 -1
- package/dist/resource-models.d.ts +2 -1
- package/dist/resource-models.d.ts.map +1 -1
- package/dist/resource-models.js +2 -1
- package/dist/resource-models.js.map +1 -1
- package/dist/voice.d.ts +34 -0
- package/dist/voice.d.ts.map +1 -0
- package/dist/voice.js +29 -0
- package/dist/voice.js.map +1 -0
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -193,7 +193,9 @@ await generateText({
|
|
|
193
193
|
|
|
194
194
|
The helper marks the content block immediately before it. Placing it before any cacheable content throws `ConfigurationError`. `prompt_cache_retention` remains available for older model families, but it is a legacy alternative to `prompt_cache_options` and should not be combined with it for GPT-5.6.
|
|
195
195
|
|
|
196
|
-
|
|
196
|
+
`prompt_cache_options.ttl` accepts `"30m"` or `"12h"` on the Responses API for GPT-5.6 and later. Omitting `ttl` leaves the provider default (`"30m"`) and does not add a lifetime to the request. An explicit breakpoint may carry the same `ttl`; omitting it still sends `{ mode: "explicit" }`. Any other breakpoint `ttl` fails locally. `"12h"` is documented for Responses. Chat Completions ignore `prompt_cache_options.ttl: "12h"` and warn once; the provider default remains 30 minutes. `"30m"` is still sent on Chat Completions. Explicit breakpoint `ttl` values are unchanged.
|
|
197
|
+
|
|
198
|
+
Cache reads stay at the cached input rate. 30-minute writes use the catalog cache-write rate, which is 1.25× the uncached input rate for GPT-5.6. 12-hour writes are 2.5× the uncached input rate. When the response includes `input_tokens_details.cache_write_tokens_details`, normalized usage exposes `cacheWriteTokensDetails.ttl30mTokens` and `ttl12hTokens`, and cost uses those rates. Usage without that split stays on the single catalog write rate. See [OpenAI prompt caching](https://developers.openai.com/api/docs/guides/prompt-caching).
|
|
197
199
|
|
|
198
200
|
## Programmatic Tool Calling
|
|
199
201
|
|
|
@@ -362,7 +364,7 @@ Repository and full documentation:
|
|
|
362
364
|
|
|
363
365
|
## GPT-6 Astra
|
|
364
366
|
|
|
365
|
-
`openai("gpt-6-astra")` uses Responses by default, including callable tools and native structured output. The existing Computer Use, Tool Search, shell/apply-patch, Programmatic Tool Calling, multi-agent, persisted reasoning, and prompt-cache mappings also recognize Astra and dated Astra snapshots. Reasoning accepts `low`, `medium`, `high`, `xhigh`, and `max`; `none` and `minimal` are rejected. Explicit Chat mode remains available for text but rejects tool calling.
|
|
367
|
+
`openai("gpt-6-astra")` uses Responses by default, including callable tools and native structured output. The existing Computer Use, Tool Search, shell/apply-patch, Programmatic Tool Calling, multi-agent, persisted reasoning, and prompt-cache mappings also recognize Astra and dated Astra snapshots. Reasoning accepts `low`, `medium`, `high`, `xhigh`, and `max`; `none` and `minimal` are rejected. Explicit Chat mode remains available for text but rejects tool calling. `temperature`, `providerOptions.top_p`, and shared `topP` fail locally in both Chat and Responses. Shared `seed` and `stopSequences` warn and are omitted in both modes. `providerOptions.seed` and `providerOptions.stop` are still forwarded.
|
|
366
368
|
|
|
367
369
|
See [OpenAI's current model guide](https://developers.openai.com/api/docs/guides/latest-model). Async tool execution and mid-turn steering are separate upstream protocols and are not exposed by this HTTP adapter.
|
|
368
370
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
export { openAIComputerTool, OpenAIComputerExecutionError } from "./computer.js";
|
|
2
2
|
export type { OpenAIComputerExecutionContext, OpenAIComputerAction, OpenAIComputerSafetyCheck, OpenAIComputerCallInput, OpenAIComputerScreenshotOutput, OpenAIComputerToolConfig } from "./computer.js";
|
|
3
|
-
|
|
3
|
+
import { OpenAIRealtimeModel } from "./realtime.js";
|
|
4
|
+
export { OpenAIRealtimeModel, openAIRealtimeMcpMetadataKey } from "./realtime.js";
|
|
5
|
+
import { OpenAISpeechModel } from "./resource-models.js";
|
|
6
|
+
export { OpenAISpeechModel } from "./resource-models.js";
|
|
7
|
+
export type { OpenAICustomVoice, OpenAIRealtimeSession, OpenAIRealtimeSessionConfig, OpenAIRealtimeSessionFor, OpenAIVoice } from "./voice.js";
|
|
4
8
|
import { OpenAIAgentsClient } from "./agents.js";
|
|
5
9
|
export { OpenAIAgentsClient } from "./agents.js";
|
|
6
10
|
export type { OpenAIAgentSessionInput, OpenAIAgentSession, OpenAIAgentEvent, OpenAIAgentsPage, OpenAIAgentsRequestOptions } from "./agents.js";
|
|
7
11
|
import { z } from "zod";
|
|
12
|
+
import { OpenAILiveModel } from "./live.js";
|
|
13
|
+
export { OpenAILiveModel } from "./live.js";
|
|
8
14
|
import { type AudioResponseLimits, type CallableProviderAdapter, type JsonValue, type LanguageModel, type ModelCapabilities, type RealtimeConnectionFactory, type ToolDefinition, type ToolExecutionResult } from "@zhivex-ai/core/provider";
|
|
9
15
|
export declare const OPENAI_RESPONSES_TOOL_CALL_ERROR_CODE: "OPENAI_RESPONSES_TOOL_CALL_INVALID";
|
|
10
16
|
export interface OpenAIResponseLimits extends AudioResponseLimits {
|
|
@@ -204,9 +210,17 @@ export interface OpenAIProgrammaticToolOptions {
|
|
|
204
210
|
allowedCallers?: OpenAIProgrammaticToolCaller[];
|
|
205
211
|
outputSchema?: z.ZodTypeAny;
|
|
206
212
|
}
|
|
213
|
+
/**
|
|
214
|
+
* Responses `prompt_cache_options.ttl`.
|
|
215
|
+
* `"30m"` is the provider default. `"12h"` is the 12-hour minimum for GPT-5.6 and later on Responses.
|
|
216
|
+
* Chat Completions ignore `"12h"` and leave the provider default in place.
|
|
217
|
+
* Omitting `ttl` does not send a lifetime and leaves that default in place.
|
|
218
|
+
* @see https://developers.openai.com/api/docs/guides/prompt-caching
|
|
219
|
+
*/
|
|
220
|
+
export type OpenAIPromptCacheTtl = "30m" | "12h";
|
|
207
221
|
export interface OpenAIPromptCacheOptions {
|
|
208
222
|
mode?: "implicit" | "explicit";
|
|
209
|
-
ttl?:
|
|
223
|
+
ttl?: OpenAIPromptCacheTtl;
|
|
210
224
|
}
|
|
211
225
|
export interface OpenAIMultiAgentOptions {
|
|
212
226
|
enabled: boolean;
|
|
@@ -269,6 +283,8 @@ export interface OpenAIRealtimeMcpApprovalResultOptions {
|
|
|
269
283
|
export interface OpenAIPromptCacheBreakpointData {
|
|
270
284
|
type: "prompt_cache_breakpoint";
|
|
271
285
|
mode: "explicit";
|
|
286
|
+
/** Overrides the request `prompt_cache_options.ttl` for this explicit breakpoint. */
|
|
287
|
+
ttl?: OpenAIPromptCacheTtl;
|
|
272
288
|
}
|
|
273
289
|
export interface OpenAIResponsesOutputData {
|
|
274
290
|
type: "responses_output";
|
|
@@ -317,11 +333,14 @@ export interface OpenAILanguageModelOptions {
|
|
|
317
333
|
};
|
|
318
334
|
[key: string]: unknown;
|
|
319
335
|
}
|
|
320
|
-
export
|
|
336
|
+
export interface OpenAIProvider extends CallableProviderAdapter<LanguageModel<OpenAILanguageModelOptions>> {
|
|
321
337
|
rawFetch: typeof globalThis.fetch;
|
|
322
338
|
agents: OpenAIAgentsClient;
|
|
323
339
|
experimentalDecisionModel(modelId?: string): import("@zhivex-ai/core").DecisionModel;
|
|
324
|
-
|
|
340
|
+
speechModel(modelId: string): OpenAISpeechModel;
|
|
341
|
+
realtimeModel(modelId: string): OpenAIRealtimeModel | OpenAILiveModel;
|
|
342
|
+
}
|
|
343
|
+
export declare const createOpenAI: (options?: OpenAIProviderOptions) => OpenAIProvider;
|
|
325
344
|
export declare const openAIWebSearchTool: (config?: OpenAIWebSearchToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
|
|
326
345
|
export declare const openAIFileSearchTool: (config?: OpenAIFileSearchToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
|
|
327
346
|
export declare const openAICodeInterpreterTool: (config: OpenAICodeInterpreterToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
|
|
@@ -331,7 +350,9 @@ export declare const openAIProgrammaticTool: <TSchema extends z.ZodTypeAny, TRes
|
|
|
331
350
|
export declare const openAIRemoteMcpTool: (config: OpenAIRemoteMcpToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
|
|
332
351
|
export declare const openAIMcpApprovalResponse: (response: Omit<OpenAIMcpApprovalResponse, "type">) => import("@zhivex-ai/core").ContentPart;
|
|
333
352
|
export declare const openAIRealtimeMcpApprovalResult: (response: OpenAIRealtimeMcpApprovalResultOptions) => ToolExecutionResult;
|
|
334
|
-
export declare const openAIPromptCacheBreakpoint: (
|
|
353
|
+
export declare const openAIPromptCacheBreakpoint: (breakpoint?: {
|
|
354
|
+
ttl?: OpenAIPromptCacheTtl;
|
|
355
|
+
}) => import("@zhivex-ai/core").ContentPart;
|
|
335
356
|
export declare const openAIComputerUseTool: (config: OpenAIComputerUseToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
|
|
336
357
|
export declare const openAIHostedShellTool: (config: OpenAIHostedShellToolConfig) => import("@zhivex-ai/core").HostedToolDefinition<JsonValue>;
|
|
337
358
|
export declare const openAIShellTool: (config?: OpenAIShellToolConfig) => ToolDefinition<z.ZodType<OpenAIShellToolInput>, JsonValue>;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -4,15 +4,87 @@ import { computerInputSchema, computerScreenshotSchema } from "./computer.js";
|
|
|
4
4
|
export { openAIComputerTool, OpenAIComputerExecutionError } from "./computer.js";
|
|
5
5
|
import { jsonHeaders, parseJson, RESERVED_REQUEST_HEADERS } from "./http.js";
|
|
6
6
|
import { OpenAIRealtimeModel, openAIRealtimeMcpMetadataKey, resolveOpenAIRealtimeHeaders } from "./realtime.js";
|
|
7
|
-
export { openAIRealtimeMcpMetadataKey } from "./realtime.js";
|
|
7
|
+
export { OpenAIRealtimeModel, openAIRealtimeMcpMetadataKey } from "./realtime.js";
|
|
8
8
|
import { OpenAIEmbeddingModel, OpenAITranscriptionModel, OpenAISpeechModel, toUint8Array } from "./resource-models.js";
|
|
9
|
+
export { OpenAISpeechModel } from "./resource-models.js";
|
|
9
10
|
import { OpenAIAgentsClient } from "./agents.js";
|
|
10
11
|
export { OpenAIAgentsClient } from "./agents.js";
|
|
11
12
|
import { toJSONSchema, z } from "zod";
|
|
12
13
|
import { OpenAILiveModel, isOpenAILiveModel } from "./live.js";
|
|
14
|
+
export { OpenAILiveModel } from "./live.js";
|
|
13
15
|
import { createOpenAIImageGenerationModel, normalizeOpenAIImageGenerationCall, normalizeOpenAIImageGenerationPartialImage } from "./image-generation.js";
|
|
14
16
|
import { groundedCapabilities, supportsOpenAIModernResponses, assertOpenAIModelRequestSupported, resolveOpenAIModelProfile, modelCapabilities } from "./capabilities.js";
|
|
15
|
-
import { imageInputToDataUrl, ConfigurationError, ProviderHTTPError, ProviderResponseTooLargeError, ProviderToolCallError, assertTrustedEndpoint, resolveAudioResponseLimits, openWebSocketConnection, hostedTool, providerDataPart, UnsupportedFeatureError, createProviderAdapter, isCallableToolDefinition, isHostedToolDefinition, normalizeFinishReason, streamSSE, streamChatCompletions, toolResultPayload, withRetry, withResponseRetry, withTimeoutSignal } from "@zhivex-ai/core/provider";
|
|
17
|
+
import { imageInputToDataUrl, ConfigurationError, ProviderHTTPError, ProviderResponseTooLargeError, ProviderToolCallError, ValidationError, assertTrustedEndpoint, resolveAudioResponseLimits, openWebSocketConnection, hostedTool, providerDataPart, UnsupportedFeatureError, createProviderAdapter, isCallableToolDefinition, isHostedToolDefinition, normalizeFinishReason, streamSSE, streamChatCompletions, toolResultPayload, withRetry, withResponseRetry, withTimeoutSignal } from "@zhivex-ai/core/provider";
|
|
18
|
+
const TOOL_INPUT_JSON_SCHEMA = Symbol.for("@zhivex-ai/core/json-schema");
|
|
19
|
+
/** Zod inputs stay on toJSONSchema so this package still loads against the oldest core in its peer range. */
|
|
20
|
+
const toolInputSchema = (schema) => {
|
|
21
|
+
if (schema !== null && typeof schema === "object" && schema[TOOL_INPUT_JSON_SCHEMA] === true) {
|
|
22
|
+
return { ...schema.jsonSchema };
|
|
23
|
+
}
|
|
24
|
+
return toJSONSchema(schema);
|
|
25
|
+
};
|
|
26
|
+
const openAISamplingWarnings = new Set();
|
|
27
|
+
const warnOpenAISampling = (option, detail) => {
|
|
28
|
+
const key = `openai:${option}:${detail}`;
|
|
29
|
+
if (openAISamplingWarnings.has(key))
|
|
30
|
+
return;
|
|
31
|
+
openAISamplingWarnings.add(key);
|
|
32
|
+
console.warn(`Provider "openai" does not support ${option}. ${detail} The option was ignored.`);
|
|
33
|
+
};
|
|
34
|
+
const openAIChatCacheTtlWarnings = new Set();
|
|
35
|
+
const warnOpenAIChatPromptCacheTtl = () => {
|
|
36
|
+
const key = 'openai:prompt_cache_options.ttl:12h:chat';
|
|
37
|
+
if (openAIChatCacheTtlWarnings.has(key))
|
|
38
|
+
return;
|
|
39
|
+
openAIChatCacheTtlWarnings.add(key);
|
|
40
|
+
console.warn('Provider "openai" does not support prompt_cache_options.ttl "12h" on Chat Completions. The option was ignored.');
|
|
41
|
+
};
|
|
42
|
+
/** Chat Completions support for a 12-hour cache TTL is unconfirmed, so that value is ignored. */
|
|
43
|
+
const openAIChatBodyOptions = (options) => {
|
|
44
|
+
const cache = options.prompt_cache_options;
|
|
45
|
+
if (cache?.ttl !== "12h")
|
|
46
|
+
return options;
|
|
47
|
+
warnOpenAIChatPromptCacheTtl();
|
|
48
|
+
const rest = { ...cache };
|
|
49
|
+
delete rest.ttl;
|
|
50
|
+
const next = { ...options };
|
|
51
|
+
if (Object.keys(rest).length === 0)
|
|
52
|
+
delete next.prompt_cache_options;
|
|
53
|
+
else
|
|
54
|
+
next.prompt_cache_options = rest;
|
|
55
|
+
return next;
|
|
56
|
+
};
|
|
57
|
+
/** Model profiles that already reject sampling. `topP` still throws in assertOpenAIModelRequestSupported. */
|
|
58
|
+
const openAISamplingRejected = (modelId, input, bodyOptions) => {
|
|
59
|
+
const profile = resolveOpenAIModelProfile(modelId);
|
|
60
|
+
if (profile.sampling === "allowed")
|
|
61
|
+
return null;
|
|
62
|
+
const effort = input.reasoning?.effort ?? bodyOptions.reasoning?.effort ?? bodyOptions.reasoning_effort;
|
|
63
|
+
return profile.sampling === "unsupported" || effort !== "none" ? profile.label : null;
|
|
64
|
+
};
|
|
65
|
+
const openAIChatSampling = (modelId, input, bodyOptions) => {
|
|
66
|
+
const rejected = openAISamplingRejected(modelId, input, bodyOptions);
|
|
67
|
+
if (rejected) {
|
|
68
|
+
if (input.seed !== undefined)
|
|
69
|
+
warnOpenAISampling("seed", `${rejected} does not support seed.`);
|
|
70
|
+
if (input.stopSequences !== undefined) {
|
|
71
|
+
warnOpenAISampling("stopSequences", `${rejected} does not support stop sequences.`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return {
|
|
75
|
+
...(input.topP !== undefined ? { top_p: input.topP } : {}),
|
|
76
|
+
...(!rejected && input.seed !== undefined ? { seed: input.seed } : {}),
|
|
77
|
+
...(!rejected && input.stopSequences !== undefined ? { stop: [...input.stopSequences] } : {})
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
const openAIResponsesSampling = (input) => {
|
|
81
|
+
if (input.seed !== undefined)
|
|
82
|
+
warnOpenAISampling("seed", "The Responses API does not accept seed.");
|
|
83
|
+
if (input.stopSequences !== undefined) {
|
|
84
|
+
warnOpenAISampling("stopSequences", "The Responses API does not accept stop sequences.");
|
|
85
|
+
}
|
|
86
|
+
return input.topP !== undefined ? { top_p: input.topP } : {};
|
|
87
|
+
};
|
|
16
88
|
const MIB = 1024 * 1024;
|
|
17
89
|
const DEFAULT_HOSTED_IMAGE_EVENT_BYTES = 32 * MIB;
|
|
18
90
|
const DEFAULT_HOSTED_IMAGE_TOTAL_BYTES = 128 * MIB;
|
|
@@ -182,6 +254,14 @@ const isOpenAIPromptCacheBreakpointPart = (part) => part.type === "provider-data
|
|
|
182
254
|
part.data !== null &&
|
|
183
255
|
typeof part.data === "object" &&
|
|
184
256
|
part.data.type === "prompt_cache_breakpoint";
|
|
257
|
+
const explicitPromptCacheBreakpoint = (breakpoint) => {
|
|
258
|
+
const record = breakpoint;
|
|
259
|
+
const ttl = record.ttl;
|
|
260
|
+
if (ttl !== undefined && ttl !== "30m" && ttl !== "12h") {
|
|
261
|
+
throw new ValidationError('OpenAI prompt cache breakpoint ttl must be "30m" or "12h".');
|
|
262
|
+
}
|
|
263
|
+
return ttl === "30m" || ttl === "12h" ? { mode: "explicit", ttl } : { mode: "explicit" };
|
|
264
|
+
};
|
|
185
265
|
const promptCacheBreakpointForContentPart = (part) => {
|
|
186
266
|
const metadata = part
|
|
187
267
|
.providerMetadata;
|
|
@@ -190,7 +270,7 @@ const promptCacheBreakpointForContentPart = (part) => {
|
|
|
190
270
|
: metadata;
|
|
191
271
|
const breakpoint = openAIMetadata?.prompt_cache_breakpoint;
|
|
192
272
|
return breakpoint && typeof breakpoint === "object" && !Array.isArray(breakpoint)
|
|
193
|
-
? { prompt_cache_breakpoint:
|
|
273
|
+
? { prompt_cache_breakpoint: explicitPromptCacheBreakpoint(breakpoint) }
|
|
194
274
|
: {};
|
|
195
275
|
};
|
|
196
276
|
const imageDetailForPart = (part) => {
|
|
@@ -201,12 +281,12 @@ const imageDetailForPart = (part) => {
|
|
|
201
281
|
: undefined);
|
|
202
282
|
return detail === "auto" || detail === "low" || detail === "high" || detail === "original" ? detail : undefined;
|
|
203
283
|
};
|
|
204
|
-
const markLastContentBlockForPromptCaching = (content) => {
|
|
284
|
+
const markLastContentBlockForPromptCaching = (content, breakpoint) => {
|
|
205
285
|
const last = content.at(-1);
|
|
206
286
|
if (!last) {
|
|
207
287
|
throw new ConfigurationError("OpenAI prompt cache breakpoints must follow a cacheable content part.");
|
|
208
288
|
}
|
|
209
|
-
last.prompt_cache_breakpoint =
|
|
289
|
+
last.prompt_cache_breakpoint = explicitPromptCacheBreakpoint(breakpoint);
|
|
210
290
|
};
|
|
211
291
|
const mapContentParts = (message) => {
|
|
212
292
|
const hasRichContent = message.parts.some((part) => part.type === "image" ||
|
|
@@ -251,7 +331,7 @@ const mapContentParts = (message) => {
|
|
|
251
331
|
});
|
|
252
332
|
}
|
|
253
333
|
else if (isOpenAIPromptCacheBreakpointPart(part)) {
|
|
254
|
-
markLastContentBlockForPromptCaching(content);
|
|
334
|
+
markLastContentBlockForPromptCaching(content, part.data);
|
|
255
335
|
}
|
|
256
336
|
}
|
|
257
337
|
return content;
|
|
@@ -358,7 +438,7 @@ const mapTools = (input) => input
|
|
|
358
438
|
function: {
|
|
359
439
|
name: tool.name,
|
|
360
440
|
description: tool.description,
|
|
361
|
-
parameters:
|
|
441
|
+
parameters: toolInputSchema(tool.schema)
|
|
362
442
|
}
|
|
363
443
|
};
|
|
364
444
|
}
|
|
@@ -385,7 +465,7 @@ const mapResponsesTools = (input) => input
|
|
|
385
465
|
type: "function",
|
|
386
466
|
name: tool.name,
|
|
387
467
|
description: tool.description,
|
|
388
|
-
parameters:
|
|
468
|
+
parameters: toolInputSchema(tool.schema),
|
|
389
469
|
...openAIResponsesFunctionConfig(tool)
|
|
390
470
|
};
|
|
391
471
|
}
|
|
@@ -798,7 +878,7 @@ const toResponsesInput = (messages, format, history = messages) => {
|
|
|
798
878
|
break;
|
|
799
879
|
case "provider-data":
|
|
800
880
|
if (isOpenAIPromptCacheBreakpointPart(part)) {
|
|
801
|
-
markLastContentBlockForPromptCaching(content);
|
|
881
|
+
markLastContentBlockForPromptCaching(content, part.data);
|
|
802
882
|
}
|
|
803
883
|
break;
|
|
804
884
|
}
|
|
@@ -966,36 +1046,90 @@ const attachTerminalUsage = (error, raw) => new ProviderToolCallError({
|
|
|
966
1046
|
cause: error.cause,
|
|
967
1047
|
usage: mapResponsesUsage(raw)
|
|
968
1048
|
});
|
|
969
|
-
const
|
|
970
|
-
|
|
1049
|
+
const mapOpenAICacheWriteTokensDetails = (details) => {
|
|
1050
|
+
if (!details || typeof details !== "object" || Array.isArray(details))
|
|
1051
|
+
return undefined;
|
|
1052
|
+
const record = details;
|
|
1053
|
+
const read = (key) => typeof record[key] === "number" ? record[key] : undefined;
|
|
1054
|
+
const ttl30mTokens = read("ttl_30m_tokens");
|
|
1055
|
+
const ttl12hTokens = read("ttl_12h_tokens");
|
|
1056
|
+
if (ttl30mTokens === undefined && ttl12hTokens === undefined)
|
|
1057
|
+
return undefined;
|
|
1058
|
+
return {
|
|
1059
|
+
...(ttl30mTokens !== undefined ? { ttl30mTokens } : {}),
|
|
1060
|
+
...(ttl12hTokens !== undefined ? { ttl12hTokens } : {})
|
|
1061
|
+
};
|
|
1062
|
+
};
|
|
1063
|
+
const mapResponsesUsage = (usage) => {
|
|
1064
|
+
if (!usage)
|
|
1065
|
+
return undefined;
|
|
1066
|
+
const cacheWriteTokensDetails = mapOpenAICacheWriteTokensDetails(usage.input_tokens_details?.cache_write_tokens_details);
|
|
1067
|
+
return {
|
|
971
1068
|
inputTokens: usage.input_tokens,
|
|
972
1069
|
cachedInputTokens: usage.input_tokens_details?.cached_tokens,
|
|
973
1070
|
cacheWriteTokens: usage.input_tokens_details?.cache_write_tokens,
|
|
1071
|
+
...(cacheWriteTokensDetails ? { cacheWriteTokensDetails } : {}),
|
|
974
1072
|
outputTokens: usage.output_tokens,
|
|
975
1073
|
reasoningTokens: usage.output_tokens_details?.reasoning_tokens,
|
|
976
1074
|
totalTokens: usage.total_tokens
|
|
977
|
-
}
|
|
978
|
-
|
|
979
|
-
const mapChatUsage = (usage) =>
|
|
980
|
-
|
|
1075
|
+
};
|
|
1076
|
+
};
|
|
1077
|
+
const mapChatUsage = (usage) => {
|
|
1078
|
+
if (!usage)
|
|
1079
|
+
return undefined;
|
|
1080
|
+
const cacheWriteTokensDetails = mapOpenAICacheWriteTokensDetails(usage.prompt_tokens_details?.cache_write_tokens_details);
|
|
1081
|
+
return {
|
|
981
1082
|
inputTokens: usage.prompt_tokens,
|
|
982
1083
|
cachedInputTokens: usage.prompt_tokens_details?.cached_tokens,
|
|
983
1084
|
cacheWriteTokens: usage.prompt_tokens_details?.cache_write_tokens,
|
|
1085
|
+
...(cacheWriteTokensDetails ? { cacheWriteTokensDetails } : {}),
|
|
984
1086
|
outputTokens: usage.completion_tokens,
|
|
985
1087
|
reasoningTokens: usage.completion_tokens_details?.reasoning_tokens,
|
|
986
1088
|
totalTokens: usage.total_tokens
|
|
987
|
-
}
|
|
988
|
-
|
|
1089
|
+
};
|
|
1090
|
+
};
|
|
1091
|
+
const openAIUsageCounters = (usage) => [
|
|
1092
|
+
usage.inputTokens,
|
|
1093
|
+
usage.outputTokens,
|
|
1094
|
+
usage.totalTokens,
|
|
1095
|
+
usage.cachedInputTokens,
|
|
1096
|
+
usage.cacheWriteTokens,
|
|
1097
|
+
usage.reasoningTokens,
|
|
1098
|
+
usage.cacheWriteTokensDetails?.ttl30mTokens,
|
|
1099
|
+
usage.cacheWriteTokensDetails?.ttl12hTokens
|
|
1100
|
+
];
|
|
1101
|
+
const openAIUsageCounterInvalid = (usage) => openAIUsageCounters(usage ?? {}).some((value) => value !== undefined && (!Number.isSafeInteger(value) || value < 0));
|
|
989
1102
|
const addTokenUsage = (left, right) => {
|
|
990
1103
|
if (!left)
|
|
991
1104
|
return right;
|
|
992
1105
|
if (!right)
|
|
993
1106
|
return left;
|
|
994
1107
|
const sum = (a, b) => a === undefined || b === undefined ? undefined : a + b;
|
|
1108
|
+
const consistentDetails = (writes, details) => {
|
|
1109
|
+
if (!details)
|
|
1110
|
+
return (writes ?? 0) === 0;
|
|
1111
|
+
return writes !== undefined && (details.ttl30mTokens ?? 0) + (details.ttl12hTokens ?? 0) === writes;
|
|
1112
|
+
};
|
|
1113
|
+
const cacheWriteTokensDetails = consistentDetails(left.cacheWriteTokens, left.cacheWriteTokensDetails) &&
|
|
1114
|
+
consistentDetails(right.cacheWriteTokens, right.cacheWriteTokensDetails) &&
|
|
1115
|
+
(left.cacheWriteTokensDetails || right.cacheWriteTokensDetails)
|
|
1116
|
+
? {
|
|
1117
|
+
...(left.cacheWriteTokensDetails?.ttl30mTokens !== undefined || right.cacheWriteTokensDetails?.ttl30mTokens !== undefined
|
|
1118
|
+
? { ttl30mTokens: (left.cacheWriteTokensDetails?.ttl30mTokens ?? 0) + (right.cacheWriteTokensDetails?.ttl30mTokens ?? 0) }
|
|
1119
|
+
: {}),
|
|
1120
|
+
...(left.cacheWriteTokensDetails?.ttl12hTokens !== undefined || right.cacheWriteTokensDetails?.ttl12hTokens !== undefined
|
|
1121
|
+
? { ttl12hTokens: (left.cacheWriteTokensDetails?.ttl12hTokens ?? 0) + (right.cacheWriteTokensDetails?.ttl12hTokens ?? 0) }
|
|
1122
|
+
: {})
|
|
1123
|
+
}
|
|
1124
|
+
: undefined;
|
|
995
1125
|
return {
|
|
996
1126
|
inputTokens: sum(left.inputTokens, right.inputTokens),
|
|
997
1127
|
cachedInputTokens: sum(left.cachedInputTokens, right.cachedInputTokens),
|
|
998
1128
|
cacheWriteTokens: sum(left.cacheWriteTokens, right.cacheWriteTokens),
|
|
1129
|
+
...(cacheWriteTokensDetails &&
|
|
1130
|
+
(cacheWriteTokensDetails.ttl30mTokens !== undefined || cacheWriteTokensDetails.ttl12hTokens !== undefined)
|
|
1131
|
+
? { cacheWriteTokensDetails }
|
|
1132
|
+
: {}),
|
|
999
1133
|
outputTokens: sum(left.outputTokens, right.outputTokens),
|
|
1000
1134
|
reasoningTokens: sum(left.reasoningTokens, right.reasoningTokens),
|
|
1001
1135
|
totalTokens: sum(left.totalTokens, right.totalTokens)
|
|
@@ -1569,17 +1703,18 @@ class OpenAILanguageModel {
|
|
|
1569
1703
|
...(input.toolChoice ? { tool_choice: mapResponsesToolChoice(input.toolChoice) } : {}),
|
|
1570
1704
|
text: mapResponsesStructuredOutput(input) ?? responseBodyOptions.text,
|
|
1571
1705
|
temperature: input.temperature,
|
|
1706
|
+
...openAIResponsesSampling(input),
|
|
1572
1707
|
max_output_tokens: ptc ? remainingOutputTokens : input.maxTokens,
|
|
1573
1708
|
...mapResponsesReasoning(input, responseBodyOptions.reasoning)
|
|
1574
1709
|
})
|
|
1575
1710
|
}), { ...input, abortSignal: signal, ...(ptc ? { maxRetries: 0 } : {}) }, "OpenAI");
|
|
1576
1711
|
const json = await parseJson(response);
|
|
1577
1712
|
const reportedUsage = mapResponsesUsage(json.usage);
|
|
1578
|
-
if (ptc && (!reportedUsage || ![reportedUsage.inputTokens, reportedUsage.outputTokens, reportedUsage.totalTokens].every(value => typeof value === "number" && Number.isSafeInteger(value) && value >= 0) || reportedUsage.totalTokens < reportedUsage.inputTokens + reportedUsage.outputTokens ||
|
|
1713
|
+
if (ptc && (!reportedUsage || ![reportedUsage.inputTokens, reportedUsage.outputTokens, reportedUsage.totalTokens].every(value => typeof value === "number" && Number.isSafeInteger(value) && value >= 0) || reportedUsage.totalTokens < reportedUsage.inputTokens + reportedUsage.outputTokens || openAIUsageCounterInvalid(reportedUsage))) {
|
|
1579
1714
|
throw failure("OPENAI_PTC_USAGE_UNKNOWN");
|
|
1580
1715
|
}
|
|
1581
1716
|
const nextUsage = addTokenUsage(accumulatedUsage, reportedUsage);
|
|
1582
|
-
if (ptc &&
|
|
1717
|
+
if (ptc && openAIUsageCounterInvalid(nextUsage))
|
|
1583
1718
|
throw failure("OPENAI_PTC_USAGE_UNKNOWN");
|
|
1584
1719
|
accumulatedUsage = nextUsage;
|
|
1585
1720
|
if (ptc)
|
|
@@ -1658,13 +1793,14 @@ class OpenAILanguageModel {
|
|
|
1658
1793
|
headers: options.headers,
|
|
1659
1794
|
signal,
|
|
1660
1795
|
body: JSON.stringify({
|
|
1661
|
-
...options.bodyOptions,
|
|
1796
|
+
...openAIChatBodyOptions(options.bodyOptions),
|
|
1662
1797
|
model: this.modelId,
|
|
1663
1798
|
messages: mapMessages(input.messages, input.toolResultFormat),
|
|
1664
1799
|
tools: mapTools(input.tools),
|
|
1665
1800
|
...(input.toolChoice ? { tool_choice: mapToolChoice(input.toolChoice) } : {}),
|
|
1666
1801
|
response_format: mapStructuredOutput(input) ?? options.bodyOptions.response_format,
|
|
1667
1802
|
temperature: input.temperature,
|
|
1803
|
+
...openAIChatSampling(this.modelId, input, options.bodyOptions),
|
|
1668
1804
|
...(input.reasoning ? {} : { max_tokens: input.maxTokens }),
|
|
1669
1805
|
...mapChatReasoning(input),
|
|
1670
1806
|
stream: false
|
|
@@ -1722,6 +1858,7 @@ class OpenAILanguageModel {
|
|
|
1722
1858
|
...(input.toolChoice ? { tool_choice: mapResponsesToolChoice(input.toolChoice) } : {}),
|
|
1723
1859
|
text: mapResponsesStructuredOutput(input) ?? responseBodyOptions.text,
|
|
1724
1860
|
temperature: input.temperature,
|
|
1861
|
+
...openAIResponsesSampling(input),
|
|
1725
1862
|
max_output_tokens: input.maxTokens,
|
|
1726
1863
|
...mapResponsesReasoning(input, responseBodyOptions.reasoning),
|
|
1727
1864
|
stream: true
|
|
@@ -1744,13 +1881,14 @@ class OpenAILanguageModel {
|
|
|
1744
1881
|
headers: options.headers,
|
|
1745
1882
|
signal,
|
|
1746
1883
|
body: JSON.stringify({
|
|
1747
|
-
...options.bodyOptions,
|
|
1884
|
+
...openAIChatBodyOptions(options.bodyOptions),
|
|
1748
1885
|
model: this.modelId,
|
|
1749
1886
|
messages: mapMessages(input.messages, input.toolResultFormat),
|
|
1750
1887
|
tools: mapTools(input.tools),
|
|
1751
1888
|
...(input.toolChoice ? { tool_choice: mapToolChoice(input.toolChoice) } : {}),
|
|
1752
1889
|
response_format: mapStructuredOutput(input) ?? options.bodyOptions.response_format,
|
|
1753
1890
|
temperature: input.temperature,
|
|
1891
|
+
...openAIChatSampling(this.modelId, input, options.bodyOptions),
|
|
1754
1892
|
...(input.reasoning ? {} : { max_tokens: input.maxTokens }),
|
|
1755
1893
|
...mapChatReasoning(input),
|
|
1756
1894
|
stream: true,
|
|
@@ -1949,9 +2087,10 @@ export const openAIRealtimeMcpApprovalResult = (response) => ({
|
|
|
1949
2087
|
}
|
|
1950
2088
|
}
|
|
1951
2089
|
});
|
|
1952
|
-
export const openAIPromptCacheBreakpoint = () => providerDataPart("openai", {
|
|
2090
|
+
export const openAIPromptCacheBreakpoint = (breakpoint) => providerDataPart("openai", {
|
|
1953
2091
|
type: "prompt_cache_breakpoint",
|
|
1954
|
-
mode: "explicit"
|
|
2092
|
+
mode: "explicit",
|
|
2093
|
+
...(breakpoint?.ttl ? { ttl: breakpoint.ttl } : {})
|
|
1955
2094
|
});
|
|
1956
2095
|
export const openAIComputerUseTool = (config) => hostedTool({
|
|
1957
2096
|
name: "computer",
|