@ai-sdk/openai 2.1.0-beta.1 → 2.1.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 +88 -0
- package/dist/index.d.mts +67 -14
- package/dist/index.d.ts +67 -14
- package/dist/index.js +616 -399
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +586 -368
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.d.mts +333 -23
- package/dist/internal/index.d.ts +333 -23
- package/dist/internal/index.js +632 -407
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/index.mjs +600 -386
- package/dist/internal/index.mjs.map +1 -1
- package/package.json +5 -5
package/dist/internal/index.mjs
CHANGED
|
@@ -244,7 +244,7 @@ function mapOpenAIFinishReason(finishReason) {
|
|
|
244
244
|
|
|
245
245
|
// src/chat/openai-chat-options.ts
|
|
246
246
|
import { z as z2 } from "zod/v4";
|
|
247
|
-
var
|
|
247
|
+
var openaiChatLanguageModelOptions = z2.object({
|
|
248
248
|
/**
|
|
249
249
|
* Modify the likelihood of specified tokens appearing in the completion.
|
|
250
250
|
*
|
|
@@ -398,7 +398,7 @@ function prepareChatTools({
|
|
|
398
398
|
// src/chat/openai-chat-language-model.ts
|
|
399
399
|
var OpenAIChatLanguageModel = class {
|
|
400
400
|
constructor(modelId, config) {
|
|
401
|
-
this.specificationVersion = "
|
|
401
|
+
this.specificationVersion = "v3";
|
|
402
402
|
this.supportedUrls = {
|
|
403
403
|
"image/*": [/^https?:\/\/.*$/]
|
|
404
404
|
};
|
|
@@ -428,7 +428,7 @@ var OpenAIChatLanguageModel = class {
|
|
|
428
428
|
const openaiOptions = (_a = await parseProviderOptions({
|
|
429
429
|
provider: "openai",
|
|
430
430
|
providerOptions,
|
|
431
|
-
schema:
|
|
431
|
+
schema: openaiChatLanguageModelOptions
|
|
432
432
|
})) != null ? _a : {};
|
|
433
433
|
const structuredOutputs = (_b = openaiOptions.structuredOutputs) != null ? _b : true;
|
|
434
434
|
if (topK != null) {
|
|
@@ -1216,7 +1216,7 @@ var openaiCompletionProviderOptions = z4.object({
|
|
|
1216
1216
|
// src/completion/openai-completion-language-model.ts
|
|
1217
1217
|
var OpenAICompletionLanguageModel = class {
|
|
1218
1218
|
constructor(modelId, config) {
|
|
1219
|
-
this.specificationVersion = "
|
|
1219
|
+
this.specificationVersion = "v3";
|
|
1220
1220
|
this.supportedUrls = {
|
|
1221
1221
|
// No URLs are supported for completion models.
|
|
1222
1222
|
};
|
|
@@ -1516,7 +1516,7 @@ var openaiEmbeddingProviderOptions = z6.object({
|
|
|
1516
1516
|
// src/embedding/openai-embedding-model.ts
|
|
1517
1517
|
var OpenAIEmbeddingModel = class {
|
|
1518
1518
|
constructor(modelId, config) {
|
|
1519
|
-
this.specificationVersion = "
|
|
1519
|
+
this.specificationVersion = "v3";
|
|
1520
1520
|
this.maxEmbeddingsPerCall = 2048;
|
|
1521
1521
|
this.supportsParallelCalls = true;
|
|
1522
1522
|
this.modelId = modelId;
|
|
@@ -1602,7 +1602,7 @@ var OpenAIImageModel = class {
|
|
|
1602
1602
|
constructor(modelId, config) {
|
|
1603
1603
|
this.modelId = modelId;
|
|
1604
1604
|
this.config = config;
|
|
1605
|
-
this.specificationVersion = "
|
|
1605
|
+
this.specificationVersion = "v3";
|
|
1606
1606
|
}
|
|
1607
1607
|
get maxImagesPerCall() {
|
|
1608
1608
|
var _a;
|
|
@@ -2036,14 +2036,39 @@ import {
|
|
|
2036
2036
|
parseProviderOptions as parseProviderOptions7,
|
|
2037
2037
|
postJsonToApi as postJsonToApi6
|
|
2038
2038
|
} from "@ai-sdk/provider-utils";
|
|
2039
|
-
import { z as
|
|
2039
|
+
import { z as z19 } from "zod/v4";
|
|
2040
2040
|
|
|
2041
2041
|
// src/responses/convert-to-openai-responses-input.ts
|
|
2042
2042
|
import {
|
|
2043
2043
|
UnsupportedFunctionalityError as UnsupportedFunctionalityError4
|
|
2044
2044
|
} from "@ai-sdk/provider";
|
|
2045
2045
|
import { convertToBase64 as convertToBase642, parseProviderOptions as parseProviderOptions6 } from "@ai-sdk/provider-utils";
|
|
2046
|
+
import { z as z13 } from "zod/v4";
|
|
2047
|
+
|
|
2048
|
+
// src/tool/local-shell.ts
|
|
2049
|
+
import { createProviderDefinedToolFactoryWithOutputSchema } from "@ai-sdk/provider-utils";
|
|
2046
2050
|
import { z as z12 } from "zod/v4";
|
|
2051
|
+
var localShellInputSchema = z12.object({
|
|
2052
|
+
action: z12.object({
|
|
2053
|
+
type: z12.literal("exec"),
|
|
2054
|
+
command: z12.array(z12.string()),
|
|
2055
|
+
timeoutMs: z12.number().optional(),
|
|
2056
|
+
user: z12.string().optional(),
|
|
2057
|
+
workingDirectory: z12.string().optional(),
|
|
2058
|
+
env: z12.record(z12.string(), z12.string()).optional()
|
|
2059
|
+
})
|
|
2060
|
+
});
|
|
2061
|
+
var localShellOutputSchema = z12.object({
|
|
2062
|
+
output: z12.string()
|
|
2063
|
+
});
|
|
2064
|
+
var localShell = createProviderDefinedToolFactoryWithOutputSchema({
|
|
2065
|
+
id: "openai.local_shell",
|
|
2066
|
+
name: "local_shell",
|
|
2067
|
+
inputSchema: localShellInputSchema,
|
|
2068
|
+
outputSchema: localShellOutputSchema
|
|
2069
|
+
});
|
|
2070
|
+
|
|
2071
|
+
// src/responses/convert-to-openai-responses-input.ts
|
|
2047
2072
|
function isFileId(data, prefixes) {
|
|
2048
2073
|
if (!prefixes) return false;
|
|
2049
2074
|
return prefixes.some((prefix) => data.startsWith(prefix));
|
|
@@ -2052,9 +2077,10 @@ async function convertToOpenAIResponsesInput({
|
|
|
2052
2077
|
prompt,
|
|
2053
2078
|
systemMessageMode,
|
|
2054
2079
|
fileIdPrefixes,
|
|
2055
|
-
store
|
|
2080
|
+
store,
|
|
2081
|
+
hasLocalShellTool = false
|
|
2056
2082
|
}) {
|
|
2057
|
-
var _a, _b, _c, _d, _e, _f;
|
|
2083
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
2058
2084
|
const input = [];
|
|
2059
2085
|
const warnings = [];
|
|
2060
2086
|
for (const { role, content } of prompt) {
|
|
@@ -2147,12 +2173,29 @@ async function convertToOpenAIResponsesInput({
|
|
|
2147
2173
|
if (part.providerExecuted) {
|
|
2148
2174
|
break;
|
|
2149
2175
|
}
|
|
2176
|
+
if (hasLocalShellTool && part.toolName === "local_shell") {
|
|
2177
|
+
const parsedInput = localShellInputSchema.parse(part.input);
|
|
2178
|
+
input.push({
|
|
2179
|
+
type: "local_shell_call",
|
|
2180
|
+
call_id: part.toolCallId,
|
|
2181
|
+
id: (_f = (_e = (_d = part.providerOptions) == null ? void 0 : _d.openai) == null ? void 0 : _e.itemId) != null ? _f : void 0,
|
|
2182
|
+
action: {
|
|
2183
|
+
type: "exec",
|
|
2184
|
+
command: parsedInput.action.command,
|
|
2185
|
+
timeout_ms: parsedInput.action.timeoutMs,
|
|
2186
|
+
user: parsedInput.action.user,
|
|
2187
|
+
working_directory: parsedInput.action.workingDirectory,
|
|
2188
|
+
env: parsedInput.action.env
|
|
2189
|
+
}
|
|
2190
|
+
});
|
|
2191
|
+
break;
|
|
2192
|
+
}
|
|
2150
2193
|
input.push({
|
|
2151
2194
|
type: "function_call",
|
|
2152
2195
|
call_id: part.toolCallId,
|
|
2153
2196
|
name: part.toolName,
|
|
2154
2197
|
arguments: JSON.stringify(part.input),
|
|
2155
|
-
id: (
|
|
2198
|
+
id: (_i = (_h = (_g = part.providerOptions) == null ? void 0 : _g.openai) == null ? void 0 : _h.itemId) != null ? _i : void 0
|
|
2156
2199
|
});
|
|
2157
2200
|
break;
|
|
2158
2201
|
}
|
|
@@ -2176,26 +2219,40 @@ async function convertToOpenAIResponsesInput({
|
|
|
2176
2219
|
});
|
|
2177
2220
|
const reasoningId = providerOptions == null ? void 0 : providerOptions.itemId;
|
|
2178
2221
|
if (reasoningId != null) {
|
|
2179
|
-
const
|
|
2180
|
-
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
2184
|
-
|
|
2185
|
-
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
if (existingReasoningMessage === void 0) {
|
|
2190
|
-
reasoningMessages[reasoningId] = {
|
|
2191
|
-
type: "reasoning",
|
|
2192
|
-
id: reasoningId,
|
|
2193
|
-
encrypted_content: providerOptions == null ? void 0 : providerOptions.reasoningEncryptedContent,
|
|
2194
|
-
summary: summaryParts
|
|
2195
|
-
};
|
|
2196
|
-
input.push(reasoningMessages[reasoningId]);
|
|
2222
|
+
const reasoningMessage = reasoningMessages[reasoningId];
|
|
2223
|
+
if (store) {
|
|
2224
|
+
if (reasoningMessage === void 0) {
|
|
2225
|
+
input.push({ type: "item_reference", id: reasoningId });
|
|
2226
|
+
reasoningMessages[reasoningId] = {
|
|
2227
|
+
type: "reasoning",
|
|
2228
|
+
id: reasoningId,
|
|
2229
|
+
summary: []
|
|
2230
|
+
};
|
|
2231
|
+
}
|
|
2197
2232
|
} else {
|
|
2198
|
-
|
|
2233
|
+
const summaryParts = [];
|
|
2234
|
+
if (part.text.length > 0) {
|
|
2235
|
+
summaryParts.push({
|
|
2236
|
+
type: "summary_text",
|
|
2237
|
+
text: part.text
|
|
2238
|
+
});
|
|
2239
|
+
} else if (reasoningMessage !== void 0) {
|
|
2240
|
+
warnings.push({
|
|
2241
|
+
type: "other",
|
|
2242
|
+
message: `Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(part)}.`
|
|
2243
|
+
});
|
|
2244
|
+
}
|
|
2245
|
+
if (reasoningMessage === void 0) {
|
|
2246
|
+
reasoningMessages[reasoningId] = {
|
|
2247
|
+
type: "reasoning",
|
|
2248
|
+
id: reasoningId,
|
|
2249
|
+
encrypted_content: providerOptions == null ? void 0 : providerOptions.reasoningEncryptedContent,
|
|
2250
|
+
summary: summaryParts
|
|
2251
|
+
};
|
|
2252
|
+
input.push(reasoningMessages[reasoningId]);
|
|
2253
|
+
} else {
|
|
2254
|
+
reasoningMessage.summary.push(...summaryParts);
|
|
2255
|
+
}
|
|
2199
2256
|
}
|
|
2200
2257
|
} else {
|
|
2201
2258
|
warnings.push({
|
|
@@ -2212,6 +2269,14 @@ async function convertToOpenAIResponsesInput({
|
|
|
2212
2269
|
case "tool": {
|
|
2213
2270
|
for (const part of content) {
|
|
2214
2271
|
const output = part.output;
|
|
2272
|
+
if (hasLocalShellTool && part.toolName === "local_shell" && output.type === "json") {
|
|
2273
|
+
input.push({
|
|
2274
|
+
type: "local_shell_call_output",
|
|
2275
|
+
call_id: part.toolCallId,
|
|
2276
|
+
output: localShellOutputSchema.parse(output.value).output
|
|
2277
|
+
});
|
|
2278
|
+
break;
|
|
2279
|
+
}
|
|
2215
2280
|
let contentValue;
|
|
2216
2281
|
switch (output.type) {
|
|
2217
2282
|
case "text":
|
|
@@ -2240,9 +2305,9 @@ async function convertToOpenAIResponsesInput({
|
|
|
2240
2305
|
}
|
|
2241
2306
|
return { input, warnings };
|
|
2242
2307
|
}
|
|
2243
|
-
var openaiResponsesReasoningProviderOptionsSchema =
|
|
2244
|
-
itemId:
|
|
2245
|
-
reasoningEncryptedContent:
|
|
2308
|
+
var openaiResponsesReasoningProviderOptionsSchema = z13.object({
|
|
2309
|
+
itemId: z13.string().nullish(),
|
|
2310
|
+
reasoningEncryptedContent: z13.string().nullish()
|
|
2246
2311
|
});
|
|
2247
2312
|
|
|
2248
2313
|
// src/responses/map-openai-responses-finish-reason.ts
|
|
@@ -2269,110 +2334,113 @@ import {
|
|
|
2269
2334
|
} from "@ai-sdk/provider";
|
|
2270
2335
|
|
|
2271
2336
|
// src/tool/code-interpreter.ts
|
|
2272
|
-
import { createProviderDefinedToolFactoryWithOutputSchema } from "@ai-sdk/provider-utils";
|
|
2273
|
-
import { z as
|
|
2274
|
-
var codeInterpreterInputSchema =
|
|
2275
|
-
code:
|
|
2276
|
-
containerId:
|
|
2337
|
+
import { createProviderDefinedToolFactoryWithOutputSchema as createProviderDefinedToolFactoryWithOutputSchema2 } from "@ai-sdk/provider-utils";
|
|
2338
|
+
import { z as z14 } from "zod/v4";
|
|
2339
|
+
var codeInterpreterInputSchema = z14.object({
|
|
2340
|
+
code: z14.string().nullish(),
|
|
2341
|
+
containerId: z14.string()
|
|
2277
2342
|
});
|
|
2278
|
-
var codeInterpreterOutputSchema =
|
|
2279
|
-
outputs:
|
|
2280
|
-
|
|
2281
|
-
|
|
2282
|
-
|
|
2343
|
+
var codeInterpreterOutputSchema = z14.object({
|
|
2344
|
+
outputs: z14.array(
|
|
2345
|
+
z14.discriminatedUnion("type", [
|
|
2346
|
+
z14.object({ type: z14.literal("logs"), logs: z14.string() }),
|
|
2347
|
+
z14.object({ type: z14.literal("image"), url: z14.string() })
|
|
2283
2348
|
])
|
|
2284
2349
|
).nullish()
|
|
2285
2350
|
});
|
|
2286
|
-
var codeInterpreterArgsSchema =
|
|
2287
|
-
container:
|
|
2288
|
-
|
|
2289
|
-
|
|
2290
|
-
fileIds:
|
|
2351
|
+
var codeInterpreterArgsSchema = z14.object({
|
|
2352
|
+
container: z14.union([
|
|
2353
|
+
z14.string(),
|
|
2354
|
+
z14.object({
|
|
2355
|
+
fileIds: z14.array(z14.string()).optional()
|
|
2291
2356
|
})
|
|
2292
2357
|
]).optional()
|
|
2293
2358
|
});
|
|
2294
|
-
var codeInterpreterToolFactory =
|
|
2359
|
+
var codeInterpreterToolFactory = createProviderDefinedToolFactoryWithOutputSchema2({
|
|
2295
2360
|
id: "openai.code_interpreter",
|
|
2296
2361
|
name: "code_interpreter",
|
|
2297
2362
|
inputSchema: codeInterpreterInputSchema,
|
|
2298
2363
|
outputSchema: codeInterpreterOutputSchema
|
|
2299
2364
|
});
|
|
2365
|
+
var codeInterpreter = (args = {}) => {
|
|
2366
|
+
return codeInterpreterToolFactory(args);
|
|
2367
|
+
};
|
|
2300
2368
|
|
|
2301
2369
|
// src/tool/file-search.ts
|
|
2302
|
-
import { createProviderDefinedToolFactoryWithOutputSchema as
|
|
2303
|
-
import { z as
|
|
2304
|
-
var comparisonFilterSchema =
|
|
2305
|
-
key:
|
|
2306
|
-
type:
|
|
2307
|
-
value:
|
|
2370
|
+
import { createProviderDefinedToolFactoryWithOutputSchema as createProviderDefinedToolFactoryWithOutputSchema3 } from "@ai-sdk/provider-utils";
|
|
2371
|
+
import { z as z15 } from "zod/v4";
|
|
2372
|
+
var comparisonFilterSchema = z15.object({
|
|
2373
|
+
key: z15.string(),
|
|
2374
|
+
type: z15.enum(["eq", "ne", "gt", "gte", "lt", "lte"]),
|
|
2375
|
+
value: z15.union([z15.string(), z15.number(), z15.boolean()])
|
|
2308
2376
|
});
|
|
2309
|
-
var compoundFilterSchema =
|
|
2310
|
-
type:
|
|
2311
|
-
filters:
|
|
2312
|
-
|
|
2377
|
+
var compoundFilterSchema = z15.object({
|
|
2378
|
+
type: z15.enum(["and", "or"]),
|
|
2379
|
+
filters: z15.array(
|
|
2380
|
+
z15.union([comparisonFilterSchema, z15.lazy(() => compoundFilterSchema)])
|
|
2313
2381
|
)
|
|
2314
2382
|
});
|
|
2315
|
-
var fileSearchArgsSchema =
|
|
2316
|
-
vectorStoreIds:
|
|
2317
|
-
maxNumResults:
|
|
2318
|
-
ranking:
|
|
2319
|
-
ranker:
|
|
2320
|
-
scoreThreshold:
|
|
2383
|
+
var fileSearchArgsSchema = z15.object({
|
|
2384
|
+
vectorStoreIds: z15.array(z15.string()),
|
|
2385
|
+
maxNumResults: z15.number().optional(),
|
|
2386
|
+
ranking: z15.object({
|
|
2387
|
+
ranker: z15.string().optional(),
|
|
2388
|
+
scoreThreshold: z15.number().optional()
|
|
2321
2389
|
}).optional(),
|
|
2322
|
-
filters:
|
|
2390
|
+
filters: z15.union([comparisonFilterSchema, compoundFilterSchema]).optional()
|
|
2323
2391
|
});
|
|
2324
|
-
var fileSearchOutputSchema =
|
|
2325
|
-
queries:
|
|
2326
|
-
results:
|
|
2327
|
-
|
|
2328
|
-
attributes:
|
|
2329
|
-
fileId:
|
|
2330
|
-
filename:
|
|
2331
|
-
score:
|
|
2332
|
-
text:
|
|
2392
|
+
var fileSearchOutputSchema = z15.object({
|
|
2393
|
+
queries: z15.array(z15.string()),
|
|
2394
|
+
results: z15.array(
|
|
2395
|
+
z15.object({
|
|
2396
|
+
attributes: z15.record(z15.string(), z15.unknown()),
|
|
2397
|
+
fileId: z15.string(),
|
|
2398
|
+
filename: z15.string(),
|
|
2399
|
+
score: z15.number(),
|
|
2400
|
+
text: z15.string()
|
|
2333
2401
|
})
|
|
2334
2402
|
).nullable()
|
|
2335
2403
|
});
|
|
2336
|
-
var fileSearch =
|
|
2404
|
+
var fileSearch = createProviderDefinedToolFactoryWithOutputSchema3({
|
|
2337
2405
|
id: "openai.file_search",
|
|
2338
2406
|
name: "file_search",
|
|
2339
|
-
inputSchema:
|
|
2407
|
+
inputSchema: z15.object({}),
|
|
2340
2408
|
outputSchema: fileSearchOutputSchema
|
|
2341
2409
|
});
|
|
2342
2410
|
|
|
2343
2411
|
// src/tool/web-search.ts
|
|
2344
2412
|
import { createProviderDefinedToolFactory } from "@ai-sdk/provider-utils";
|
|
2345
|
-
import { z as
|
|
2346
|
-
var webSearchArgsSchema =
|
|
2347
|
-
filters:
|
|
2348
|
-
allowedDomains:
|
|
2413
|
+
import { z as z16 } from "zod/v4";
|
|
2414
|
+
var webSearchArgsSchema = z16.object({
|
|
2415
|
+
filters: z16.object({
|
|
2416
|
+
allowedDomains: z16.array(z16.string()).optional()
|
|
2349
2417
|
}).optional(),
|
|
2350
|
-
searchContextSize:
|
|
2351
|
-
userLocation:
|
|
2352
|
-
type:
|
|
2353
|
-
country:
|
|
2354
|
-
city:
|
|
2355
|
-
region:
|
|
2356
|
-
timezone:
|
|
2418
|
+
searchContextSize: z16.enum(["low", "medium", "high"]).optional(),
|
|
2419
|
+
userLocation: z16.object({
|
|
2420
|
+
type: z16.literal("approximate"),
|
|
2421
|
+
country: z16.string().optional(),
|
|
2422
|
+
city: z16.string().optional(),
|
|
2423
|
+
region: z16.string().optional(),
|
|
2424
|
+
timezone: z16.string().optional()
|
|
2357
2425
|
}).optional()
|
|
2358
2426
|
});
|
|
2359
2427
|
var webSearchToolFactory = createProviderDefinedToolFactory({
|
|
2360
2428
|
id: "openai.web_search",
|
|
2361
2429
|
name: "web_search",
|
|
2362
|
-
inputSchema:
|
|
2363
|
-
action:
|
|
2364
|
-
|
|
2365
|
-
type:
|
|
2366
|
-
query:
|
|
2430
|
+
inputSchema: z16.object({
|
|
2431
|
+
action: z16.discriminatedUnion("type", [
|
|
2432
|
+
z16.object({
|
|
2433
|
+
type: z16.literal("search"),
|
|
2434
|
+
query: z16.string().nullish()
|
|
2367
2435
|
}),
|
|
2368
|
-
|
|
2369
|
-
type:
|
|
2370
|
-
url:
|
|
2436
|
+
z16.object({
|
|
2437
|
+
type: z16.literal("open_page"),
|
|
2438
|
+
url: z16.string()
|
|
2371
2439
|
}),
|
|
2372
|
-
|
|
2373
|
-
type:
|
|
2374
|
-
url:
|
|
2375
|
-
pattern:
|
|
2440
|
+
z16.object({
|
|
2441
|
+
type: z16.literal("find"),
|
|
2442
|
+
url: z16.string(),
|
|
2443
|
+
pattern: z16.string()
|
|
2376
2444
|
})
|
|
2377
2445
|
]).nullish()
|
|
2378
2446
|
})
|
|
@@ -2380,89 +2448,92 @@ var webSearchToolFactory = createProviderDefinedToolFactory({
|
|
|
2380
2448
|
|
|
2381
2449
|
// src/tool/web-search-preview.ts
|
|
2382
2450
|
import { createProviderDefinedToolFactory as createProviderDefinedToolFactory2 } from "@ai-sdk/provider-utils";
|
|
2383
|
-
import { z as
|
|
2384
|
-
var webSearchPreviewArgsSchema =
|
|
2451
|
+
import { z as z17 } from "zod/v4";
|
|
2452
|
+
var webSearchPreviewArgsSchema = z17.object({
|
|
2385
2453
|
/**
|
|
2386
2454
|
* Search context size to use for the web search.
|
|
2387
2455
|
* - high: Most comprehensive context, highest cost, slower response
|
|
2388
2456
|
* - medium: Balanced context, cost, and latency (default)
|
|
2389
2457
|
* - low: Least context, lowest cost, fastest response
|
|
2390
2458
|
*/
|
|
2391
|
-
searchContextSize:
|
|
2459
|
+
searchContextSize: z17.enum(["low", "medium", "high"]).optional(),
|
|
2392
2460
|
/**
|
|
2393
2461
|
* User location information to provide geographically relevant search results.
|
|
2394
2462
|
*/
|
|
2395
|
-
userLocation:
|
|
2463
|
+
userLocation: z17.object({
|
|
2396
2464
|
/**
|
|
2397
2465
|
* Type of location (always 'approximate')
|
|
2398
2466
|
*/
|
|
2399
|
-
type:
|
|
2467
|
+
type: z17.literal("approximate"),
|
|
2400
2468
|
/**
|
|
2401
2469
|
* Two-letter ISO country code (e.g., 'US', 'GB')
|
|
2402
2470
|
*/
|
|
2403
|
-
country:
|
|
2471
|
+
country: z17.string().optional(),
|
|
2404
2472
|
/**
|
|
2405
2473
|
* City name (free text, e.g., 'Minneapolis')
|
|
2406
2474
|
*/
|
|
2407
|
-
city:
|
|
2475
|
+
city: z17.string().optional(),
|
|
2408
2476
|
/**
|
|
2409
2477
|
* Region name (free text, e.g., 'Minnesota')
|
|
2410
2478
|
*/
|
|
2411
|
-
region:
|
|
2479
|
+
region: z17.string().optional(),
|
|
2412
2480
|
/**
|
|
2413
2481
|
* IANA timezone (e.g., 'America/Chicago')
|
|
2414
2482
|
*/
|
|
2415
|
-
timezone:
|
|
2483
|
+
timezone: z17.string().optional()
|
|
2416
2484
|
}).optional()
|
|
2417
2485
|
});
|
|
2418
2486
|
var webSearchPreview = createProviderDefinedToolFactory2({
|
|
2419
2487
|
id: "openai.web_search_preview",
|
|
2420
2488
|
name: "web_search_preview",
|
|
2421
|
-
inputSchema:
|
|
2422
|
-
action:
|
|
2423
|
-
|
|
2424
|
-
type:
|
|
2425
|
-
query:
|
|
2489
|
+
inputSchema: z17.object({
|
|
2490
|
+
action: z17.discriminatedUnion("type", [
|
|
2491
|
+
z17.object({
|
|
2492
|
+
type: z17.literal("search"),
|
|
2493
|
+
query: z17.string().nullish()
|
|
2426
2494
|
}),
|
|
2427
|
-
|
|
2428
|
-
type:
|
|
2429
|
-
url:
|
|
2495
|
+
z17.object({
|
|
2496
|
+
type: z17.literal("open_page"),
|
|
2497
|
+
url: z17.string()
|
|
2430
2498
|
}),
|
|
2431
|
-
|
|
2432
|
-
type:
|
|
2433
|
-
url:
|
|
2434
|
-
pattern:
|
|
2499
|
+
z17.object({
|
|
2500
|
+
type: z17.literal("find"),
|
|
2501
|
+
url: z17.string(),
|
|
2502
|
+
pattern: z17.string()
|
|
2435
2503
|
})
|
|
2436
2504
|
]).nullish()
|
|
2437
2505
|
})
|
|
2438
2506
|
});
|
|
2439
2507
|
|
|
2440
2508
|
// src/tool/image-generation.ts
|
|
2441
|
-
import { createProviderDefinedToolFactoryWithOutputSchema as
|
|
2442
|
-
import { z as
|
|
2443
|
-
var imageGenerationArgsSchema =
|
|
2444
|
-
background:
|
|
2445
|
-
inputFidelity:
|
|
2446
|
-
inputImageMask:
|
|
2447
|
-
fileId:
|
|
2448
|
-
imageUrl:
|
|
2509
|
+
import { createProviderDefinedToolFactoryWithOutputSchema as createProviderDefinedToolFactoryWithOutputSchema4 } from "@ai-sdk/provider-utils";
|
|
2510
|
+
import { z as z18 } from "zod/v4";
|
|
2511
|
+
var imageGenerationArgsSchema = z18.object({
|
|
2512
|
+
background: z18.enum(["auto", "opaque", "transparent"]).optional(),
|
|
2513
|
+
inputFidelity: z18.enum(["low", "high"]).optional(),
|
|
2514
|
+
inputImageMask: z18.object({
|
|
2515
|
+
fileId: z18.string().optional(),
|
|
2516
|
+
imageUrl: z18.string().optional()
|
|
2449
2517
|
}).optional(),
|
|
2450
|
-
model:
|
|
2451
|
-
moderation:
|
|
2452
|
-
outputCompression:
|
|
2453
|
-
outputFormat:
|
|
2454
|
-
quality:
|
|
2455
|
-
size:
|
|
2518
|
+
model: z18.string().optional(),
|
|
2519
|
+
moderation: z18.enum(["auto"]).optional(),
|
|
2520
|
+
outputCompression: z18.number().int().min(0).max(100).optional(),
|
|
2521
|
+
outputFormat: z18.enum(["png", "jpeg", "webp"]).optional(),
|
|
2522
|
+
quality: z18.enum(["auto", "low", "medium", "high"]).optional(),
|
|
2523
|
+
size: z18.enum(["1024x1024", "1024x1536", "1536x1024", "auto"]).optional()
|
|
2456
2524
|
}).strict();
|
|
2457
|
-
var imageGenerationOutputSchema =
|
|
2458
|
-
result:
|
|
2525
|
+
var imageGenerationOutputSchema = z18.object({
|
|
2526
|
+
result: z18.string()
|
|
2459
2527
|
});
|
|
2460
|
-
var imageGenerationToolFactory =
|
|
2528
|
+
var imageGenerationToolFactory = createProviderDefinedToolFactoryWithOutputSchema4({
|
|
2461
2529
|
id: "openai.image_generation",
|
|
2462
2530
|
name: "image_generation",
|
|
2463
|
-
inputSchema:
|
|
2531
|
+
inputSchema: z18.object({}),
|
|
2464
2532
|
outputSchema: imageGenerationOutputSchema
|
|
2465
2533
|
});
|
|
2534
|
+
var imageGeneration = (args = {}) => {
|
|
2535
|
+
return imageGenerationToolFactory(args);
|
|
2536
|
+
};
|
|
2466
2537
|
|
|
2467
2538
|
// src/responses/openai-responses-prepare-tools.ts
|
|
2468
2539
|
function prepareResponsesTools({
|
|
@@ -2503,6 +2574,12 @@ function prepareResponsesTools({
|
|
|
2503
2574
|
});
|
|
2504
2575
|
break;
|
|
2505
2576
|
}
|
|
2577
|
+
case "openai.local_shell": {
|
|
2578
|
+
openaiTools.push({
|
|
2579
|
+
type: "local_shell"
|
|
2580
|
+
});
|
|
2581
|
+
break;
|
|
2582
|
+
}
|
|
2506
2583
|
case "openai.web_search_preview": {
|
|
2507
2584
|
const args = webSearchPreviewArgsSchema.parse(tool.args);
|
|
2508
2585
|
openaiTools.push({
|
|
@@ -2582,73 +2659,86 @@ function prepareResponsesTools({
|
|
|
2582
2659
|
}
|
|
2583
2660
|
|
|
2584
2661
|
// src/responses/openai-responses-language-model.ts
|
|
2585
|
-
var webSearchCallItem =
|
|
2586
|
-
type:
|
|
2587
|
-
id:
|
|
2588
|
-
status:
|
|
2589
|
-
action:
|
|
2590
|
-
|
|
2591
|
-
type:
|
|
2592
|
-
query:
|
|
2662
|
+
var webSearchCallItem = z19.object({
|
|
2663
|
+
type: z19.literal("web_search_call"),
|
|
2664
|
+
id: z19.string(),
|
|
2665
|
+
status: z19.string(),
|
|
2666
|
+
action: z19.discriminatedUnion("type", [
|
|
2667
|
+
z19.object({
|
|
2668
|
+
type: z19.literal("search"),
|
|
2669
|
+
query: z19.string().nullish()
|
|
2593
2670
|
}),
|
|
2594
|
-
|
|
2595
|
-
type:
|
|
2596
|
-
url:
|
|
2671
|
+
z19.object({
|
|
2672
|
+
type: z19.literal("open_page"),
|
|
2673
|
+
url: z19.string()
|
|
2597
2674
|
}),
|
|
2598
|
-
|
|
2599
|
-
type:
|
|
2600
|
-
url:
|
|
2601
|
-
pattern:
|
|
2675
|
+
z19.object({
|
|
2676
|
+
type: z19.literal("find"),
|
|
2677
|
+
url: z19.string(),
|
|
2678
|
+
pattern: z19.string()
|
|
2602
2679
|
})
|
|
2603
2680
|
]).nullish()
|
|
2604
2681
|
});
|
|
2605
|
-
var fileSearchCallItem =
|
|
2606
|
-
type:
|
|
2607
|
-
id:
|
|
2608
|
-
queries:
|
|
2609
|
-
results:
|
|
2610
|
-
|
|
2611
|
-
attributes:
|
|
2612
|
-
file_id:
|
|
2613
|
-
filename:
|
|
2614
|
-
score:
|
|
2615
|
-
text:
|
|
2682
|
+
var fileSearchCallItem = z19.object({
|
|
2683
|
+
type: z19.literal("file_search_call"),
|
|
2684
|
+
id: z19.string(),
|
|
2685
|
+
queries: z19.array(z19.string()),
|
|
2686
|
+
results: z19.array(
|
|
2687
|
+
z19.object({
|
|
2688
|
+
attributes: z19.record(z19.string(), z19.unknown()),
|
|
2689
|
+
file_id: z19.string(),
|
|
2690
|
+
filename: z19.string(),
|
|
2691
|
+
score: z19.number(),
|
|
2692
|
+
text: z19.string()
|
|
2616
2693
|
})
|
|
2617
2694
|
).nullish()
|
|
2618
2695
|
});
|
|
2619
|
-
var codeInterpreterCallItem =
|
|
2620
|
-
type:
|
|
2621
|
-
id:
|
|
2622
|
-
code:
|
|
2623
|
-
container_id:
|
|
2624
|
-
outputs:
|
|
2625
|
-
|
|
2626
|
-
|
|
2627
|
-
|
|
2696
|
+
var codeInterpreterCallItem = z19.object({
|
|
2697
|
+
type: z19.literal("code_interpreter_call"),
|
|
2698
|
+
id: z19.string(),
|
|
2699
|
+
code: z19.string().nullable(),
|
|
2700
|
+
container_id: z19.string(),
|
|
2701
|
+
outputs: z19.array(
|
|
2702
|
+
z19.discriminatedUnion("type", [
|
|
2703
|
+
z19.object({ type: z19.literal("logs"), logs: z19.string() }),
|
|
2704
|
+
z19.object({ type: z19.literal("image"), url: z19.string() })
|
|
2628
2705
|
])
|
|
2629
2706
|
).nullable()
|
|
2630
2707
|
});
|
|
2631
|
-
var
|
|
2632
|
-
type:
|
|
2633
|
-
id:
|
|
2634
|
-
|
|
2708
|
+
var localShellCallItem = z19.object({
|
|
2709
|
+
type: z19.literal("local_shell_call"),
|
|
2710
|
+
id: z19.string(),
|
|
2711
|
+
call_id: z19.string(),
|
|
2712
|
+
action: z19.object({
|
|
2713
|
+
type: z19.literal("exec"),
|
|
2714
|
+
command: z19.array(z19.string()),
|
|
2715
|
+
timeout_ms: z19.number().optional(),
|
|
2716
|
+
user: z19.string().optional(),
|
|
2717
|
+
working_directory: z19.string().optional(),
|
|
2718
|
+
env: z19.record(z19.string(), z19.string()).optional()
|
|
2719
|
+
})
|
|
2720
|
+
});
|
|
2721
|
+
var imageGenerationCallItem = z19.object({
|
|
2722
|
+
type: z19.literal("image_generation_call"),
|
|
2723
|
+
id: z19.string(),
|
|
2724
|
+
result: z19.string()
|
|
2635
2725
|
});
|
|
2636
2726
|
var TOP_LOGPROBS_MAX = 20;
|
|
2637
|
-
var LOGPROBS_SCHEMA =
|
|
2638
|
-
|
|
2639
|
-
token:
|
|
2640
|
-
logprob:
|
|
2641
|
-
top_logprobs:
|
|
2642
|
-
|
|
2643
|
-
token:
|
|
2644
|
-
logprob:
|
|
2727
|
+
var LOGPROBS_SCHEMA = z19.array(
|
|
2728
|
+
z19.object({
|
|
2729
|
+
token: z19.string(),
|
|
2730
|
+
logprob: z19.number(),
|
|
2731
|
+
top_logprobs: z19.array(
|
|
2732
|
+
z19.object({
|
|
2733
|
+
token: z19.string(),
|
|
2734
|
+
logprob: z19.number()
|
|
2645
2735
|
})
|
|
2646
2736
|
)
|
|
2647
2737
|
})
|
|
2648
2738
|
);
|
|
2649
2739
|
var OpenAIResponsesLanguageModel = class {
|
|
2650
2740
|
constructor(modelId, config) {
|
|
2651
|
-
this.specificationVersion = "
|
|
2741
|
+
this.specificationVersion = "v3";
|
|
2652
2742
|
this.supportedUrls = {
|
|
2653
2743
|
"image/*": [/^https?:\/\/.*$/],
|
|
2654
2744
|
"application/pdf": [/^https?:\/\/.*$/]
|
|
@@ -2707,7 +2797,8 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
2707
2797
|
prompt,
|
|
2708
2798
|
systemMessageMode: modelConfig.systemMessageMode,
|
|
2709
2799
|
fileIdPrefixes: this.config.fileIdPrefixes,
|
|
2710
|
-
store: (_a = openaiOptions == null ? void 0 : openaiOptions.store) != null ? _a : true
|
|
2800
|
+
store: (_a = openaiOptions == null ? void 0 : openaiOptions.store) != null ? _a : true,
|
|
2801
|
+
hasLocalShellTool: hasOpenAITool("openai.local_shell")
|
|
2711
2802
|
});
|
|
2712
2803
|
warnings.push(...inputWarnings);
|
|
2713
2804
|
const strictJsonSchema = (_b = openaiOptions == null ? void 0 : openaiOptions.strictJsonSchema) != null ? _b : false;
|
|
@@ -2872,45 +2963,45 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
2872
2963
|
body,
|
|
2873
2964
|
failedResponseHandler: openaiFailedResponseHandler,
|
|
2874
2965
|
successfulResponseHandler: createJsonResponseHandler6(
|
|
2875
|
-
|
|
2876
|
-
id:
|
|
2877
|
-
created_at:
|
|
2878
|
-
error:
|
|
2879
|
-
code:
|
|
2880
|
-
message:
|
|
2966
|
+
z19.object({
|
|
2967
|
+
id: z19.string(),
|
|
2968
|
+
created_at: z19.number(),
|
|
2969
|
+
error: z19.object({
|
|
2970
|
+
code: z19.string(),
|
|
2971
|
+
message: z19.string()
|
|
2881
2972
|
}).nullish(),
|
|
2882
|
-
model:
|
|
2883
|
-
output:
|
|
2884
|
-
|
|
2885
|
-
|
|
2886
|
-
type:
|
|
2887
|
-
role:
|
|
2888
|
-
id:
|
|
2889
|
-
content:
|
|
2890
|
-
|
|
2891
|
-
type:
|
|
2892
|
-
text:
|
|
2973
|
+
model: z19.string(),
|
|
2974
|
+
output: z19.array(
|
|
2975
|
+
z19.discriminatedUnion("type", [
|
|
2976
|
+
z19.object({
|
|
2977
|
+
type: z19.literal("message"),
|
|
2978
|
+
role: z19.literal("assistant"),
|
|
2979
|
+
id: z19.string(),
|
|
2980
|
+
content: z19.array(
|
|
2981
|
+
z19.object({
|
|
2982
|
+
type: z19.literal("output_text"),
|
|
2983
|
+
text: z19.string(),
|
|
2893
2984
|
logprobs: LOGPROBS_SCHEMA.nullish(),
|
|
2894
|
-
annotations:
|
|
2895
|
-
|
|
2896
|
-
|
|
2897
|
-
type:
|
|
2898
|
-
start_index:
|
|
2899
|
-
end_index:
|
|
2900
|
-
url:
|
|
2901
|
-
title:
|
|
2985
|
+
annotations: z19.array(
|
|
2986
|
+
z19.discriminatedUnion("type", [
|
|
2987
|
+
z19.object({
|
|
2988
|
+
type: z19.literal("url_citation"),
|
|
2989
|
+
start_index: z19.number(),
|
|
2990
|
+
end_index: z19.number(),
|
|
2991
|
+
url: z19.string(),
|
|
2992
|
+
title: z19.string()
|
|
2902
2993
|
}),
|
|
2903
|
-
|
|
2904
|
-
type:
|
|
2905
|
-
file_id:
|
|
2906
|
-
filename:
|
|
2907
|
-
index:
|
|
2908
|
-
start_index:
|
|
2909
|
-
end_index:
|
|
2910
|
-
quote:
|
|
2994
|
+
z19.object({
|
|
2995
|
+
type: z19.literal("file_citation"),
|
|
2996
|
+
file_id: z19.string(),
|
|
2997
|
+
filename: z19.string().nullish(),
|
|
2998
|
+
index: z19.number().nullish(),
|
|
2999
|
+
start_index: z19.number().nullish(),
|
|
3000
|
+
end_index: z19.number().nullish(),
|
|
3001
|
+
quote: z19.string().nullish()
|
|
2911
3002
|
}),
|
|
2912
|
-
|
|
2913
|
-
type:
|
|
3003
|
+
z19.object({
|
|
3004
|
+
type: z19.literal("container_file_citation")
|
|
2914
3005
|
})
|
|
2915
3006
|
])
|
|
2916
3007
|
)
|
|
@@ -2921,33 +3012,34 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
2921
3012
|
fileSearchCallItem,
|
|
2922
3013
|
codeInterpreterCallItem,
|
|
2923
3014
|
imageGenerationCallItem,
|
|
2924
|
-
|
|
2925
|
-
|
|
2926
|
-
|
|
2927
|
-
|
|
2928
|
-
|
|
2929
|
-
|
|
3015
|
+
localShellCallItem,
|
|
3016
|
+
z19.object({
|
|
3017
|
+
type: z19.literal("function_call"),
|
|
3018
|
+
call_id: z19.string(),
|
|
3019
|
+
name: z19.string(),
|
|
3020
|
+
arguments: z19.string(),
|
|
3021
|
+
id: z19.string()
|
|
2930
3022
|
}),
|
|
2931
|
-
|
|
2932
|
-
type:
|
|
2933
|
-
id:
|
|
2934
|
-
status:
|
|
3023
|
+
z19.object({
|
|
3024
|
+
type: z19.literal("computer_call"),
|
|
3025
|
+
id: z19.string(),
|
|
3026
|
+
status: z19.string().optional()
|
|
2935
3027
|
}),
|
|
2936
|
-
|
|
2937
|
-
type:
|
|
2938
|
-
id:
|
|
2939
|
-
encrypted_content:
|
|
2940
|
-
summary:
|
|
2941
|
-
|
|
2942
|
-
type:
|
|
2943
|
-
text:
|
|
3028
|
+
z19.object({
|
|
3029
|
+
type: z19.literal("reasoning"),
|
|
3030
|
+
id: z19.string(),
|
|
3031
|
+
encrypted_content: z19.string().nullish(),
|
|
3032
|
+
summary: z19.array(
|
|
3033
|
+
z19.object({
|
|
3034
|
+
type: z19.literal("summary_text"),
|
|
3035
|
+
text: z19.string()
|
|
2944
3036
|
})
|
|
2945
3037
|
)
|
|
2946
3038
|
})
|
|
2947
3039
|
])
|
|
2948
3040
|
),
|
|
2949
|
-
service_tier:
|
|
2950
|
-
incomplete_details:
|
|
3041
|
+
service_tier: z19.string().nullish(),
|
|
3042
|
+
incomplete_details: z19.object({ reason: z19.string() }).nullish(),
|
|
2951
3043
|
usage: usageSchema2
|
|
2952
3044
|
})
|
|
2953
3045
|
),
|
|
@@ -3007,6 +3099,20 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
3007
3099
|
});
|
|
3008
3100
|
break;
|
|
3009
3101
|
}
|
|
3102
|
+
case "local_shell_call": {
|
|
3103
|
+
content.push({
|
|
3104
|
+
type: "tool-call",
|
|
3105
|
+
toolCallId: part.call_id,
|
|
3106
|
+
toolName: "local_shell",
|
|
3107
|
+
input: JSON.stringify({ action: part.action }),
|
|
3108
|
+
providerMetadata: {
|
|
3109
|
+
openai: {
|
|
3110
|
+
itemId: part.id
|
|
3111
|
+
}
|
|
3112
|
+
}
|
|
3113
|
+
});
|
|
3114
|
+
break;
|
|
3115
|
+
}
|
|
3010
3116
|
case "message": {
|
|
3011
3117
|
for (const contentPart of part.content) {
|
|
3012
3118
|
if (((_c = (_b = options.providerOptions) == null ? void 0 : _b.openai) == null ? void 0 : _c.logprobs) && contentPart.logprobs) {
|
|
@@ -3264,6 +3370,24 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
3264
3370
|
id: value.item.id,
|
|
3265
3371
|
toolName: "computer_use"
|
|
3266
3372
|
});
|
|
3373
|
+
} else if (value.item.type === "code_interpreter_call") {
|
|
3374
|
+
ongoingToolCalls[value.output_index] = {
|
|
3375
|
+
toolName: "code_interpreter",
|
|
3376
|
+
toolCallId: value.item.id,
|
|
3377
|
+
codeInterpreter: {
|
|
3378
|
+
containerId: value.item.container_id
|
|
3379
|
+
}
|
|
3380
|
+
};
|
|
3381
|
+
controller.enqueue({
|
|
3382
|
+
type: "tool-input-start",
|
|
3383
|
+
id: value.item.id,
|
|
3384
|
+
toolName: "code_interpreter"
|
|
3385
|
+
});
|
|
3386
|
+
controller.enqueue({
|
|
3387
|
+
type: "tool-input-delta",
|
|
3388
|
+
id: value.item.id,
|
|
3389
|
+
delta: `{"containerId":"${value.item.container_id}","code":"`
|
|
3390
|
+
});
|
|
3267
3391
|
} else if (value.item.type === "file_search_call") {
|
|
3268
3392
|
controller.enqueue({
|
|
3269
3393
|
type: "tool-call",
|
|
@@ -3387,16 +3511,7 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
3387
3511
|
providerExecuted: true
|
|
3388
3512
|
});
|
|
3389
3513
|
} else if (value.item.type === "code_interpreter_call") {
|
|
3390
|
-
|
|
3391
|
-
type: "tool-call",
|
|
3392
|
-
toolCallId: value.item.id,
|
|
3393
|
-
toolName: "code_interpreter",
|
|
3394
|
-
input: JSON.stringify({
|
|
3395
|
-
code: value.item.code,
|
|
3396
|
-
containerId: value.item.container_id
|
|
3397
|
-
}),
|
|
3398
|
-
providerExecuted: true
|
|
3399
|
-
});
|
|
3514
|
+
ongoingToolCalls[value.output_index] = void 0;
|
|
3400
3515
|
controller.enqueue({
|
|
3401
3516
|
type: "tool-result",
|
|
3402
3517
|
toolCallId: value.item.id,
|
|
@@ -3416,6 +3531,26 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
3416
3531
|
},
|
|
3417
3532
|
providerExecuted: true
|
|
3418
3533
|
});
|
|
3534
|
+
} else if (value.item.type === "local_shell_call") {
|
|
3535
|
+
ongoingToolCalls[value.output_index] = void 0;
|
|
3536
|
+
controller.enqueue({
|
|
3537
|
+
type: "tool-call",
|
|
3538
|
+
toolCallId: value.item.call_id,
|
|
3539
|
+
toolName: "local_shell",
|
|
3540
|
+
input: JSON.stringify({
|
|
3541
|
+
action: {
|
|
3542
|
+
type: "exec",
|
|
3543
|
+
command: value.item.action.command,
|
|
3544
|
+
timeoutMs: value.item.action.timeout_ms,
|
|
3545
|
+
user: value.item.action.user,
|
|
3546
|
+
workingDirectory: value.item.action.working_directory,
|
|
3547
|
+
env: value.item.action.env
|
|
3548
|
+
}
|
|
3549
|
+
}),
|
|
3550
|
+
providerMetadata: {
|
|
3551
|
+
openai: { itemId: value.item.id }
|
|
3552
|
+
}
|
|
3553
|
+
});
|
|
3419
3554
|
} else if (value.item.type === "message") {
|
|
3420
3555
|
controller.enqueue({
|
|
3421
3556
|
type: "text-end",
|
|
@@ -3446,6 +3581,40 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
3446
3581
|
delta: value.delta
|
|
3447
3582
|
});
|
|
3448
3583
|
}
|
|
3584
|
+
} else if (isResponseCodeInterpreterCallCodeDeltaChunk(value)) {
|
|
3585
|
+
const toolCall = ongoingToolCalls[value.output_index];
|
|
3586
|
+
if (toolCall != null) {
|
|
3587
|
+
controller.enqueue({
|
|
3588
|
+
type: "tool-input-delta",
|
|
3589
|
+
id: toolCall.toolCallId,
|
|
3590
|
+
// The delta is code, which is embedding in a JSON string.
|
|
3591
|
+
// To escape it, we use JSON.stringify and slice to remove the outer quotes.
|
|
3592
|
+
delta: JSON.stringify(value.delta).slice(1, -1)
|
|
3593
|
+
});
|
|
3594
|
+
}
|
|
3595
|
+
} else if (isResponseCodeInterpreterCallCodeDoneChunk(value)) {
|
|
3596
|
+
const toolCall = ongoingToolCalls[value.output_index];
|
|
3597
|
+
if (toolCall != null) {
|
|
3598
|
+
controller.enqueue({
|
|
3599
|
+
type: "tool-input-delta",
|
|
3600
|
+
id: toolCall.toolCallId,
|
|
3601
|
+
delta: '"}'
|
|
3602
|
+
});
|
|
3603
|
+
controller.enqueue({
|
|
3604
|
+
type: "tool-input-end",
|
|
3605
|
+
id: toolCall.toolCallId
|
|
3606
|
+
});
|
|
3607
|
+
controller.enqueue({
|
|
3608
|
+
type: "tool-call",
|
|
3609
|
+
toolCallId: toolCall.toolCallId,
|
|
3610
|
+
toolName: "code_interpreter",
|
|
3611
|
+
input: JSON.stringify({
|
|
3612
|
+
code: value.code,
|
|
3613
|
+
containerId: toolCall.codeInterpreter.containerId
|
|
3614
|
+
}),
|
|
3615
|
+
providerExecuted: true
|
|
3616
|
+
});
|
|
3617
|
+
}
|
|
3449
3618
|
} else if (isResponseCreatedChunk(value)) {
|
|
3450
3619
|
responseId = value.response.id;
|
|
3451
3620
|
controller.enqueue({
|
|
@@ -3552,166 +3721,194 @@ var OpenAIResponsesLanguageModel = class {
|
|
|
3552
3721
|
};
|
|
3553
3722
|
}
|
|
3554
3723
|
};
|
|
3555
|
-
var usageSchema2 =
|
|
3556
|
-
input_tokens:
|
|
3557
|
-
input_tokens_details:
|
|
3558
|
-
output_tokens:
|
|
3559
|
-
output_tokens_details:
|
|
3724
|
+
var usageSchema2 = z19.object({
|
|
3725
|
+
input_tokens: z19.number(),
|
|
3726
|
+
input_tokens_details: z19.object({ cached_tokens: z19.number().nullish() }).nullish(),
|
|
3727
|
+
output_tokens: z19.number(),
|
|
3728
|
+
output_tokens_details: z19.object({ reasoning_tokens: z19.number().nullish() }).nullish()
|
|
3560
3729
|
});
|
|
3561
|
-
var textDeltaChunkSchema =
|
|
3562
|
-
type:
|
|
3563
|
-
item_id:
|
|
3564
|
-
delta:
|
|
3730
|
+
var textDeltaChunkSchema = z19.object({
|
|
3731
|
+
type: z19.literal("response.output_text.delta"),
|
|
3732
|
+
item_id: z19.string(),
|
|
3733
|
+
delta: z19.string(),
|
|
3565
3734
|
logprobs: LOGPROBS_SCHEMA.nullish()
|
|
3566
3735
|
});
|
|
3567
|
-
var errorChunkSchema =
|
|
3568
|
-
type:
|
|
3569
|
-
code:
|
|
3570
|
-
message:
|
|
3571
|
-
param:
|
|
3572
|
-
sequence_number:
|
|
3736
|
+
var errorChunkSchema = z19.object({
|
|
3737
|
+
type: z19.literal("error"),
|
|
3738
|
+
code: z19.string(),
|
|
3739
|
+
message: z19.string(),
|
|
3740
|
+
param: z19.string().nullish(),
|
|
3741
|
+
sequence_number: z19.number()
|
|
3573
3742
|
});
|
|
3574
|
-
var responseFinishedChunkSchema =
|
|
3575
|
-
type:
|
|
3576
|
-
response:
|
|
3577
|
-
incomplete_details:
|
|
3743
|
+
var responseFinishedChunkSchema = z19.object({
|
|
3744
|
+
type: z19.enum(["response.completed", "response.incomplete"]),
|
|
3745
|
+
response: z19.object({
|
|
3746
|
+
incomplete_details: z19.object({ reason: z19.string() }).nullish(),
|
|
3578
3747
|
usage: usageSchema2,
|
|
3579
|
-
service_tier:
|
|
3748
|
+
service_tier: z19.string().nullish()
|
|
3580
3749
|
})
|
|
3581
3750
|
});
|
|
3582
|
-
var responseCreatedChunkSchema =
|
|
3583
|
-
type:
|
|
3584
|
-
response:
|
|
3585
|
-
id:
|
|
3586
|
-
created_at:
|
|
3587
|
-
model:
|
|
3588
|
-
service_tier:
|
|
3751
|
+
var responseCreatedChunkSchema = z19.object({
|
|
3752
|
+
type: z19.literal("response.created"),
|
|
3753
|
+
response: z19.object({
|
|
3754
|
+
id: z19.string(),
|
|
3755
|
+
created_at: z19.number(),
|
|
3756
|
+
model: z19.string(),
|
|
3757
|
+
service_tier: z19.string().nullish()
|
|
3589
3758
|
})
|
|
3590
3759
|
});
|
|
3591
|
-
var responseOutputItemAddedSchema =
|
|
3592
|
-
type:
|
|
3593
|
-
output_index:
|
|
3594
|
-
item:
|
|
3595
|
-
|
|
3596
|
-
type:
|
|
3597
|
-
id:
|
|
3760
|
+
var responseOutputItemAddedSchema = z19.object({
|
|
3761
|
+
type: z19.literal("response.output_item.added"),
|
|
3762
|
+
output_index: z19.number(),
|
|
3763
|
+
item: z19.discriminatedUnion("type", [
|
|
3764
|
+
z19.object({
|
|
3765
|
+
type: z19.literal("message"),
|
|
3766
|
+
id: z19.string()
|
|
3598
3767
|
}),
|
|
3599
|
-
|
|
3600
|
-
type:
|
|
3601
|
-
id:
|
|
3602
|
-
encrypted_content:
|
|
3768
|
+
z19.object({
|
|
3769
|
+
type: z19.literal("reasoning"),
|
|
3770
|
+
id: z19.string(),
|
|
3771
|
+
encrypted_content: z19.string().nullish()
|
|
3603
3772
|
}),
|
|
3604
|
-
|
|
3605
|
-
type:
|
|
3606
|
-
id:
|
|
3607
|
-
call_id:
|
|
3608
|
-
name:
|
|
3609
|
-
arguments:
|
|
3773
|
+
z19.object({
|
|
3774
|
+
type: z19.literal("function_call"),
|
|
3775
|
+
id: z19.string(),
|
|
3776
|
+
call_id: z19.string(),
|
|
3777
|
+
name: z19.string(),
|
|
3778
|
+
arguments: z19.string()
|
|
3610
3779
|
}),
|
|
3611
|
-
|
|
3612
|
-
type:
|
|
3613
|
-
id:
|
|
3614
|
-
status:
|
|
3615
|
-
action:
|
|
3616
|
-
type:
|
|
3617
|
-
query:
|
|
3780
|
+
z19.object({
|
|
3781
|
+
type: z19.literal("web_search_call"),
|
|
3782
|
+
id: z19.string(),
|
|
3783
|
+
status: z19.string(),
|
|
3784
|
+
action: z19.object({
|
|
3785
|
+
type: z19.literal("search"),
|
|
3786
|
+
query: z19.string().optional()
|
|
3618
3787
|
}).nullish()
|
|
3619
3788
|
}),
|
|
3620
|
-
|
|
3621
|
-
type:
|
|
3622
|
-
id:
|
|
3623
|
-
status:
|
|
3789
|
+
z19.object({
|
|
3790
|
+
type: z19.literal("computer_call"),
|
|
3791
|
+
id: z19.string(),
|
|
3792
|
+
status: z19.string()
|
|
3624
3793
|
}),
|
|
3625
|
-
|
|
3626
|
-
type:
|
|
3627
|
-
id:
|
|
3794
|
+
z19.object({
|
|
3795
|
+
type: z19.literal("file_search_call"),
|
|
3796
|
+
id: z19.string()
|
|
3628
3797
|
}),
|
|
3629
|
-
|
|
3630
|
-
type:
|
|
3631
|
-
id:
|
|
3798
|
+
z19.object({
|
|
3799
|
+
type: z19.literal("image_generation_call"),
|
|
3800
|
+
id: z19.string()
|
|
3801
|
+
}),
|
|
3802
|
+
z19.object({
|
|
3803
|
+
type: z19.literal("code_interpreter_call"),
|
|
3804
|
+
id: z19.string(),
|
|
3805
|
+
container_id: z19.string(),
|
|
3806
|
+
code: z19.string().nullable(),
|
|
3807
|
+
outputs: z19.array(
|
|
3808
|
+
z19.discriminatedUnion("type", [
|
|
3809
|
+
z19.object({ type: z19.literal("logs"), logs: z19.string() }),
|
|
3810
|
+
z19.object({ type: z19.literal("image"), url: z19.string() })
|
|
3811
|
+
])
|
|
3812
|
+
).nullable(),
|
|
3813
|
+
status: z19.string()
|
|
3632
3814
|
})
|
|
3633
3815
|
])
|
|
3634
3816
|
});
|
|
3635
|
-
var responseOutputItemDoneSchema =
|
|
3636
|
-
type:
|
|
3637
|
-
output_index:
|
|
3638
|
-
item:
|
|
3639
|
-
|
|
3640
|
-
type:
|
|
3641
|
-
id:
|
|
3817
|
+
var responseOutputItemDoneSchema = z19.object({
|
|
3818
|
+
type: z19.literal("response.output_item.done"),
|
|
3819
|
+
output_index: z19.number(),
|
|
3820
|
+
item: z19.discriminatedUnion("type", [
|
|
3821
|
+
z19.object({
|
|
3822
|
+
type: z19.literal("message"),
|
|
3823
|
+
id: z19.string()
|
|
3642
3824
|
}),
|
|
3643
|
-
|
|
3644
|
-
type:
|
|
3645
|
-
id:
|
|
3646
|
-
encrypted_content:
|
|
3825
|
+
z19.object({
|
|
3826
|
+
type: z19.literal("reasoning"),
|
|
3827
|
+
id: z19.string(),
|
|
3828
|
+
encrypted_content: z19.string().nullish()
|
|
3647
3829
|
}),
|
|
3648
|
-
|
|
3649
|
-
type:
|
|
3650
|
-
id:
|
|
3651
|
-
call_id:
|
|
3652
|
-
name:
|
|
3653
|
-
arguments:
|
|
3654
|
-
status:
|
|
3830
|
+
z19.object({
|
|
3831
|
+
type: z19.literal("function_call"),
|
|
3832
|
+
id: z19.string(),
|
|
3833
|
+
call_id: z19.string(),
|
|
3834
|
+
name: z19.string(),
|
|
3835
|
+
arguments: z19.string(),
|
|
3836
|
+
status: z19.literal("completed")
|
|
3655
3837
|
}),
|
|
3656
3838
|
codeInterpreterCallItem,
|
|
3657
3839
|
imageGenerationCallItem,
|
|
3658
3840
|
webSearchCallItem,
|
|
3659
3841
|
fileSearchCallItem,
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3842
|
+
localShellCallItem,
|
|
3843
|
+
z19.object({
|
|
3844
|
+
type: z19.literal("computer_call"),
|
|
3845
|
+
id: z19.string(),
|
|
3846
|
+
status: z19.literal("completed")
|
|
3664
3847
|
})
|
|
3665
3848
|
])
|
|
3666
3849
|
});
|
|
3667
|
-
var responseFunctionCallArgumentsDeltaSchema =
|
|
3668
|
-
type:
|
|
3669
|
-
item_id:
|
|
3670
|
-
output_index:
|
|
3671
|
-
delta:
|
|
3850
|
+
var responseFunctionCallArgumentsDeltaSchema = z19.object({
|
|
3851
|
+
type: z19.literal("response.function_call_arguments.delta"),
|
|
3852
|
+
item_id: z19.string(),
|
|
3853
|
+
output_index: z19.number(),
|
|
3854
|
+
delta: z19.string()
|
|
3855
|
+
});
|
|
3856
|
+
var responseCodeInterpreterCallCodeDeltaSchema = z19.object({
|
|
3857
|
+
type: z19.literal("response.code_interpreter_call_code.delta"),
|
|
3858
|
+
item_id: z19.string(),
|
|
3859
|
+
output_index: z19.number(),
|
|
3860
|
+
delta: z19.string()
|
|
3861
|
+
});
|
|
3862
|
+
var responseCodeInterpreterCallCodeDoneSchema = z19.object({
|
|
3863
|
+
type: z19.literal("response.code_interpreter_call_code.done"),
|
|
3864
|
+
item_id: z19.string(),
|
|
3865
|
+
output_index: z19.number(),
|
|
3866
|
+
code: z19.string()
|
|
3672
3867
|
});
|
|
3673
|
-
var responseAnnotationAddedSchema =
|
|
3674
|
-
type:
|
|
3675
|
-
annotation:
|
|
3676
|
-
|
|
3677
|
-
type:
|
|
3678
|
-
url:
|
|
3679
|
-
title:
|
|
3868
|
+
var responseAnnotationAddedSchema = z19.object({
|
|
3869
|
+
type: z19.literal("response.output_text.annotation.added"),
|
|
3870
|
+
annotation: z19.discriminatedUnion("type", [
|
|
3871
|
+
z19.object({
|
|
3872
|
+
type: z19.literal("url_citation"),
|
|
3873
|
+
url: z19.string(),
|
|
3874
|
+
title: z19.string()
|
|
3680
3875
|
}),
|
|
3681
|
-
|
|
3682
|
-
type:
|
|
3683
|
-
file_id:
|
|
3684
|
-
filename:
|
|
3685
|
-
index:
|
|
3686
|
-
start_index:
|
|
3687
|
-
end_index:
|
|
3688
|
-
quote:
|
|
3876
|
+
z19.object({
|
|
3877
|
+
type: z19.literal("file_citation"),
|
|
3878
|
+
file_id: z19.string(),
|
|
3879
|
+
filename: z19.string().nullish(),
|
|
3880
|
+
index: z19.number().nullish(),
|
|
3881
|
+
start_index: z19.number().nullish(),
|
|
3882
|
+
end_index: z19.number().nullish(),
|
|
3883
|
+
quote: z19.string().nullish()
|
|
3689
3884
|
})
|
|
3690
3885
|
])
|
|
3691
3886
|
});
|
|
3692
|
-
var responseReasoningSummaryPartAddedSchema =
|
|
3693
|
-
type:
|
|
3694
|
-
item_id:
|
|
3695
|
-
summary_index:
|
|
3887
|
+
var responseReasoningSummaryPartAddedSchema = z19.object({
|
|
3888
|
+
type: z19.literal("response.reasoning_summary_part.added"),
|
|
3889
|
+
item_id: z19.string(),
|
|
3890
|
+
summary_index: z19.number()
|
|
3696
3891
|
});
|
|
3697
|
-
var responseReasoningSummaryTextDeltaSchema =
|
|
3698
|
-
type:
|
|
3699
|
-
item_id:
|
|
3700
|
-
summary_index:
|
|
3701
|
-
delta:
|
|
3892
|
+
var responseReasoningSummaryTextDeltaSchema = z19.object({
|
|
3893
|
+
type: z19.literal("response.reasoning_summary_text.delta"),
|
|
3894
|
+
item_id: z19.string(),
|
|
3895
|
+
summary_index: z19.number(),
|
|
3896
|
+
delta: z19.string()
|
|
3702
3897
|
});
|
|
3703
|
-
var openaiResponsesChunkSchema =
|
|
3898
|
+
var openaiResponsesChunkSchema = z19.union([
|
|
3704
3899
|
textDeltaChunkSchema,
|
|
3705
3900
|
responseFinishedChunkSchema,
|
|
3706
3901
|
responseCreatedChunkSchema,
|
|
3707
3902
|
responseOutputItemAddedSchema,
|
|
3708
3903
|
responseOutputItemDoneSchema,
|
|
3709
3904
|
responseFunctionCallArgumentsDeltaSchema,
|
|
3905
|
+
responseCodeInterpreterCallCodeDeltaSchema,
|
|
3906
|
+
responseCodeInterpreterCallCodeDoneSchema,
|
|
3710
3907
|
responseAnnotationAddedSchema,
|
|
3711
3908
|
responseReasoningSummaryPartAddedSchema,
|
|
3712
3909
|
responseReasoningSummaryTextDeltaSchema,
|
|
3713
3910
|
errorChunkSchema,
|
|
3714
|
-
|
|
3911
|
+
z19.object({ type: z19.string() }).loose()
|
|
3715
3912
|
// fallback for unknown chunks
|
|
3716
3913
|
]);
|
|
3717
3914
|
function isTextDeltaChunk(chunk) {
|
|
@@ -3732,6 +3929,12 @@ function isResponseCreatedChunk(chunk) {
|
|
|
3732
3929
|
function isResponseFunctionCallArgumentsDeltaChunk(chunk) {
|
|
3733
3930
|
return chunk.type === "response.function_call_arguments.delta";
|
|
3734
3931
|
}
|
|
3932
|
+
function isResponseCodeInterpreterCallCodeDeltaChunk(chunk) {
|
|
3933
|
+
return chunk.type === "response.code_interpreter_call_code.delta";
|
|
3934
|
+
}
|
|
3935
|
+
function isResponseCodeInterpreterCallCodeDoneChunk(chunk) {
|
|
3936
|
+
return chunk.type === "response.code_interpreter_call_code.done";
|
|
3937
|
+
}
|
|
3735
3938
|
function isResponseOutputItemAddedChunk(chunk) {
|
|
3736
3939
|
return chunk.type === "response.output_item.added";
|
|
3737
3940
|
}
|
|
@@ -3784,15 +3987,15 @@ function getResponsesModelConfig(modelId) {
|
|
|
3784
3987
|
isReasoningModel: false
|
|
3785
3988
|
};
|
|
3786
3989
|
}
|
|
3787
|
-
var openaiResponsesProviderOptionsSchema =
|
|
3788
|
-
include:
|
|
3789
|
-
|
|
3990
|
+
var openaiResponsesProviderOptionsSchema = z19.object({
|
|
3991
|
+
include: z19.array(
|
|
3992
|
+
z19.enum([
|
|
3790
3993
|
"reasoning.encrypted_content",
|
|
3791
3994
|
"file_search_call.results",
|
|
3792
3995
|
"message.output_text.logprobs"
|
|
3793
3996
|
])
|
|
3794
3997
|
).nullish(),
|
|
3795
|
-
instructions:
|
|
3998
|
+
instructions: z19.string().nullish(),
|
|
3796
3999
|
/**
|
|
3797
4000
|
* Return the log probabilities of the tokens.
|
|
3798
4001
|
*
|
|
@@ -3805,25 +4008,25 @@ var openaiResponsesProviderOptionsSchema = z18.object({
|
|
|
3805
4008
|
* @see https://platform.openai.com/docs/api-reference/responses/create
|
|
3806
4009
|
* @see https://cookbook.openai.com/examples/using_logprobs
|
|
3807
4010
|
*/
|
|
3808
|
-
logprobs:
|
|
4011
|
+
logprobs: z19.union([z19.boolean(), z19.number().min(1).max(TOP_LOGPROBS_MAX)]).optional(),
|
|
3809
4012
|
/**
|
|
3810
4013
|
* The maximum number of total calls to built-in tools that can be processed in a response.
|
|
3811
4014
|
* This maximum number applies across all built-in tool calls, not per individual tool.
|
|
3812
4015
|
* Any further attempts to call a tool by the model will be ignored.
|
|
3813
4016
|
*/
|
|
3814
|
-
maxToolCalls:
|
|
3815
|
-
metadata:
|
|
3816
|
-
parallelToolCalls:
|
|
3817
|
-
previousResponseId:
|
|
3818
|
-
promptCacheKey:
|
|
3819
|
-
reasoningEffort:
|
|
3820
|
-
reasoningSummary:
|
|
3821
|
-
safetyIdentifier:
|
|
3822
|
-
serviceTier:
|
|
3823
|
-
store:
|
|
3824
|
-
strictJsonSchema:
|
|
3825
|
-
textVerbosity:
|
|
3826
|
-
user:
|
|
4017
|
+
maxToolCalls: z19.number().nullish(),
|
|
4018
|
+
metadata: z19.any().nullish(),
|
|
4019
|
+
parallelToolCalls: z19.boolean().nullish(),
|
|
4020
|
+
previousResponseId: z19.string().nullish(),
|
|
4021
|
+
promptCacheKey: z19.string().nullish(),
|
|
4022
|
+
reasoningEffort: z19.string().nullish(),
|
|
4023
|
+
reasoningSummary: z19.string().nullish(),
|
|
4024
|
+
safetyIdentifier: z19.string().nullish(),
|
|
4025
|
+
serviceTier: z19.enum(["auto", "flex", "priority"]).nullish(),
|
|
4026
|
+
store: z19.boolean().nullish(),
|
|
4027
|
+
strictJsonSchema: z19.boolean().nullish(),
|
|
4028
|
+
textVerbosity: z19.enum(["low", "medium", "high"]).nullish(),
|
|
4029
|
+
user: z19.string().nullish()
|
|
3827
4030
|
});
|
|
3828
4031
|
export {
|
|
3829
4032
|
OpenAIChatLanguageModel,
|
|
@@ -3833,11 +4036,22 @@ export {
|
|
|
3833
4036
|
OpenAIResponsesLanguageModel,
|
|
3834
4037
|
OpenAISpeechModel,
|
|
3835
4038
|
OpenAITranscriptionModel,
|
|
4039
|
+
codeInterpreter,
|
|
4040
|
+
codeInterpreterArgsSchema,
|
|
4041
|
+
codeInterpreterInputSchema,
|
|
4042
|
+
codeInterpreterOutputSchema,
|
|
4043
|
+
codeInterpreterToolFactory,
|
|
4044
|
+
fileSearch,
|
|
4045
|
+
fileSearchArgsSchema,
|
|
4046
|
+
fileSearchOutputSchema,
|
|
3836
4047
|
hasDefaultResponseFormat,
|
|
4048
|
+
imageGeneration,
|
|
4049
|
+
imageGenerationArgsSchema,
|
|
4050
|
+
imageGenerationOutputSchema,
|
|
3837
4051
|
modelMaxImagesPerCall,
|
|
3838
4052
|
openAITranscriptionProviderOptions,
|
|
4053
|
+
openaiChatLanguageModelOptions,
|
|
3839
4054
|
openaiCompletionProviderOptions,
|
|
3840
|
-
openaiEmbeddingProviderOptions
|
|
3841
|
-
openaiProviderOptions
|
|
4055
|
+
openaiEmbeddingProviderOptions
|
|
3842
4056
|
};
|
|
3843
4057
|
//# sourceMappingURL=index.mjs.map
|