@ai-sdk/google 3.0.136 → 3.0.137
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 +9 -0
- package/dist/index.d.mts +8 -11
- package/dist/index.d.ts +8 -11
- package/dist/index.js +243 -230
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +153 -135
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.js +14 -14
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/index.mjs +14 -14
- package/dist/internal/index.mjs.map +1 -1
- package/package.json +2 -2
- package/src/google-generative-ai-embedding-options.ts +15 -14
- package/src/google-generative-ai-image-model.ts +1 -1
- package/src/google-generative-ai-language-model.ts +43 -40
- package/src/google-generative-ai-video-model.ts +30 -26
- package/src/tool/file-search.ts +33 -30
- package/src/tool/google-search.ts +19 -18
- package/src/transcription/google-transcription-model-options.ts +40 -31
- package/src/transcription/google-transcription-model.ts +37 -30
package/dist/index.js
CHANGED
|
@@ -29,7 +29,7 @@ module.exports = __toCommonJS(index_exports);
|
|
|
29
29
|
|
|
30
30
|
// src/transcription/google-transcription-model.ts
|
|
31
31
|
var import_provider = require("@ai-sdk/provider");
|
|
32
|
-
var
|
|
32
|
+
var import_provider_utils3 = require("@ai-sdk/provider-utils");
|
|
33
33
|
var import_v43 = require("zod/v4");
|
|
34
34
|
|
|
35
35
|
// src/google-error.ts
|
|
@@ -53,37 +53,42 @@ var googleFailedResponseHandler = (0, import_provider_utils.createJsonErrorRespo
|
|
|
53
53
|
});
|
|
54
54
|
|
|
55
55
|
// src/transcription/google-transcription-model-options.ts
|
|
56
|
+
var import_provider_utils2 = require("@ai-sdk/provider-utils");
|
|
56
57
|
var import_v42 = require("zod/v4");
|
|
57
|
-
var googleTranscriptionModelOptions =
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
58
|
+
var googleTranscriptionModelOptions = (0, import_provider_utils2.lazySchema)(
|
|
59
|
+
() => (0, import_provider_utils2.zodSchema)(
|
|
60
|
+
import_v42.z.object({
|
|
61
|
+
/**
|
|
62
|
+
* BCP-47 language codes providing hints about the languages present in the
|
|
63
|
+
* audio. If omitted or empty, defaults to automatic language detection.
|
|
64
|
+
*/
|
|
65
|
+
languageCodes: import_v42.z.array(import_v42.z.string()).optional(),
|
|
66
|
+
/**
|
|
67
|
+
* Custom vocabulary phrases, which bias the speech recognition model
|
|
68
|
+
* toward recognizing specific terms.
|
|
69
|
+
*/
|
|
70
|
+
customVocabulary: import_v42.z.array(import_v42.z.string()).optional(),
|
|
71
|
+
/**
|
|
72
|
+
* Enables word-level timestamp generation.
|
|
73
|
+
*/
|
|
74
|
+
wordTimestamp: import_v42.z.boolean().optional(),
|
|
75
|
+
/**
|
|
76
|
+
* Enables speaker diarization.
|
|
77
|
+
*/
|
|
78
|
+
diarization: import_v42.z.boolean().optional(),
|
|
79
|
+
/**
|
|
80
|
+
* Transcription output formatting mode.
|
|
81
|
+
*
|
|
82
|
+
* - `VERBATIM` (default): exact literal transcript preserving filler
|
|
83
|
+
* words, repetitions, and false starts.
|
|
84
|
+
* - `SMART`: cleans up and structures the transcript in real time —
|
|
85
|
+
* disfluency removal, inline self-corrections, structured formatting
|
|
86
|
+
* (lists, numbers, dates, paragraph breaks), and grammar/casing polish.
|
|
87
|
+
*/
|
|
88
|
+
mode: import_v42.z.enum(["SMART", "VERBATIM"]).optional()
|
|
89
|
+
})
|
|
90
|
+
)
|
|
91
|
+
);
|
|
87
92
|
|
|
88
93
|
// src/transcription/google-transcription-model.ts
|
|
89
94
|
function isLiveTranscriptionModelId(modelId) {
|
|
@@ -99,7 +104,7 @@ var GoogleTranscriptionModel = class {
|
|
|
99
104
|
return this.config.provider;
|
|
100
105
|
}
|
|
101
106
|
async parseOptions(providerOptions) {
|
|
102
|
-
return (0,
|
|
107
|
+
return (0, import_provider_utils3.parseProviderOptions)({
|
|
103
108
|
provider: "google",
|
|
104
109
|
providerOptions,
|
|
105
110
|
schema: googleTranscriptionModelOptions
|
|
@@ -122,7 +127,7 @@ var GoogleTranscriptionModel = class {
|
|
|
122
127
|
input: [
|
|
123
128
|
{
|
|
124
129
|
type: "audio",
|
|
125
|
-
data: (0,
|
|
130
|
+
data: (0, import_provider_utils3.convertToBase64)(options.audio),
|
|
126
131
|
mime_type: options.mediaType
|
|
127
132
|
}
|
|
128
133
|
],
|
|
@@ -132,15 +137,15 @@ var GoogleTranscriptionModel = class {
|
|
|
132
137
|
value: response,
|
|
133
138
|
responseHeaders,
|
|
134
139
|
rawValue: rawResponse
|
|
135
|
-
} = await (0,
|
|
140
|
+
} = await (0, import_provider_utils3.postJsonToApi)({
|
|
136
141
|
url: `${this.config.baseURL}/interactions`,
|
|
137
|
-
headers: (0,
|
|
138
|
-
this.config.headers ? await (0,
|
|
142
|
+
headers: (0, import_provider_utils3.combineHeaders)(
|
|
143
|
+
this.config.headers ? await (0, import_provider_utils3.resolve)(this.config.headers) : void 0,
|
|
139
144
|
options.headers
|
|
140
145
|
),
|
|
141
146
|
body: requestBody,
|
|
142
147
|
failedResponseHandler: googleFailedResponseHandler,
|
|
143
|
-
successfulResponseHandler: (0,
|
|
148
|
+
successfulResponseHandler: (0, import_provider_utils3.createJsonResponseHandler)(
|
|
144
149
|
googleInteractionsTranscriptionResponseSchema
|
|
145
150
|
),
|
|
146
151
|
abortSignal: options.abortSignal,
|
|
@@ -207,45 +212,49 @@ function parseOffsetSeconds(offset) {
|
|
|
207
212
|
const parsed = Number.parseFloat(offset);
|
|
208
213
|
return Number.isFinite(parsed) ? parsed : void 0;
|
|
209
214
|
}
|
|
210
|
-
var googleInteractionsWordAnnotationSchema = import_v43.z.object({
|
|
215
|
+
var googleInteractionsWordAnnotationSchema = () => import_v43.z.object({
|
|
211
216
|
type: import_v43.z.string().nullish(),
|
|
212
217
|
text: import_v43.z.string().nullish(),
|
|
213
218
|
speaker: import_v43.z.string().nullish(),
|
|
214
219
|
start_offset: import_v43.z.string().nullish(),
|
|
215
220
|
end_offset: import_v43.z.string().nullish()
|
|
216
221
|
});
|
|
217
|
-
var googleInteractionsTranscriptionResponseSchema =
|
|
218
|
-
|
|
219
|
-
steps: import_v43.z.array(
|
|
222
|
+
var googleInteractionsTranscriptionResponseSchema = (0, import_provider_utils3.lazySchema)(
|
|
223
|
+
() => (0, import_provider_utils3.zodSchema)(
|
|
220
224
|
import_v43.z.object({
|
|
221
|
-
|
|
222
|
-
|
|
225
|
+
status: import_v43.z.string().nullish(),
|
|
226
|
+
steps: import_v43.z.array(
|
|
223
227
|
import_v43.z.object({
|
|
224
228
|
type: import_v43.z.string().nullish(),
|
|
225
|
-
|
|
226
|
-
|
|
229
|
+
content: import_v43.z.array(
|
|
230
|
+
import_v43.z.object({
|
|
231
|
+
type: import_v43.z.string().nullish(),
|
|
232
|
+
text: import_v43.z.string().nullish(),
|
|
233
|
+
annotations: import_v43.z.array(googleInteractionsWordAnnotationSchema()).nullish()
|
|
234
|
+
})
|
|
235
|
+
).nullish()
|
|
227
236
|
})
|
|
228
|
-
).nullish()
|
|
237
|
+
).nullish(),
|
|
238
|
+
usage: import_v43.z.record(import_v43.z.string(), import_v43.z.unknown()).nullish()
|
|
229
239
|
})
|
|
230
|
-
)
|
|
231
|
-
|
|
232
|
-
});
|
|
240
|
+
)
|
|
241
|
+
);
|
|
233
242
|
|
|
234
243
|
// src/google-provider.ts
|
|
235
|
-
var
|
|
244
|
+
var import_provider_utils26 = require("@ai-sdk/provider-utils");
|
|
236
245
|
|
|
237
246
|
// src/version.ts
|
|
238
|
-
var VERSION = true ? "3.0.
|
|
247
|
+
var VERSION = true ? "3.0.137" : "0.0.0-test";
|
|
239
248
|
|
|
240
249
|
// src/google-generative-ai-embedding-model.ts
|
|
241
250
|
var import_provider2 = require("@ai-sdk/provider");
|
|
242
|
-
var
|
|
251
|
+
var import_provider_utils5 = require("@ai-sdk/provider-utils");
|
|
243
252
|
var import_v45 = require("zod/v4");
|
|
244
253
|
|
|
245
254
|
// src/google-generative-ai-embedding-options.ts
|
|
246
|
-
var
|
|
255
|
+
var import_provider_utils4 = require("@ai-sdk/provider-utils");
|
|
247
256
|
var import_v44 = require("zod/v4");
|
|
248
|
-
var googleEmbeddingContentPartSchema = import_v44.z.union([
|
|
257
|
+
var googleEmbeddingContentPartSchema = () => import_v44.z.union([
|
|
249
258
|
import_v44.z.object({ text: import_v44.z.string() }),
|
|
250
259
|
import_v44.z.object({
|
|
251
260
|
inlineData: import_v44.z.object({
|
|
@@ -260,8 +269,8 @@ var googleEmbeddingContentPartSchema = import_v44.z.union([
|
|
|
260
269
|
})
|
|
261
270
|
})
|
|
262
271
|
]);
|
|
263
|
-
var googleEmbeddingModelOptions = (0,
|
|
264
|
-
() => (0,
|
|
272
|
+
var googleEmbeddingModelOptions = (0, import_provider_utils4.lazySchema)(
|
|
273
|
+
() => (0, import_provider_utils4.zodSchema)(
|
|
265
274
|
import_v44.z.object({
|
|
266
275
|
/**
|
|
267
276
|
* Optional. Optional reduced dimension for the output embedding.
|
|
@@ -299,14 +308,14 @@ var googleEmbeddingModelOptions = (0, import_provider_utils3.lazySchema)(
|
|
|
299
308
|
* The array length must match the number of values being embedded. In
|
|
300
309
|
* the case of a single embedding, the array length must be 1.
|
|
301
310
|
*/
|
|
302
|
-
content: import_v44.z.array(import_v44.z.array(googleEmbeddingContentPartSchema).min(1).nullable()).optional()
|
|
311
|
+
content: import_v44.z.array(import_v44.z.array(googleEmbeddingContentPartSchema()).min(1).nullable()).optional()
|
|
303
312
|
})
|
|
304
313
|
)
|
|
305
314
|
);
|
|
306
315
|
|
|
307
316
|
// src/google-generative-ai-embedding-model.ts
|
|
308
317
|
var _a;
|
|
309
|
-
_a =
|
|
318
|
+
_a = import_provider_utils5.EXPERIMENTAL_EMBEDDING_MODEL_PROVIDER_OPTIONS_TRANSFORMER;
|
|
310
319
|
var GoogleGenerativeAIEmbeddingModel = class {
|
|
311
320
|
constructor(modelId, config) {
|
|
312
321
|
this.specificationVersion = "v3";
|
|
@@ -342,7 +351,7 @@ var GoogleGenerativeAIEmbeddingModel = class {
|
|
|
342
351
|
abortSignal,
|
|
343
352
|
providerOptions
|
|
344
353
|
}) {
|
|
345
|
-
const googleOptions = await (0,
|
|
354
|
+
const googleOptions = await (0, import_provider_utils5.parseProviderOptions)({
|
|
346
355
|
provider: "google",
|
|
347
356
|
providerOptions,
|
|
348
357
|
schema: googleEmbeddingModelOptions
|
|
@@ -355,8 +364,8 @@ var GoogleGenerativeAIEmbeddingModel = class {
|
|
|
355
364
|
values
|
|
356
365
|
});
|
|
357
366
|
}
|
|
358
|
-
const mergedHeaders = (0,
|
|
359
|
-
await (0,
|
|
367
|
+
const mergedHeaders = (0, import_provider_utils5.combineHeaders)(
|
|
368
|
+
await (0, import_provider_utils5.resolve)(this.config.headers),
|
|
360
369
|
headers
|
|
361
370
|
);
|
|
362
371
|
const multimodalContent = googleOptions == null ? void 0 : googleOptions.content;
|
|
@@ -369,7 +378,7 @@ var GoogleGenerativeAIEmbeddingModel = class {
|
|
|
369
378
|
responseHeaders: responseHeaders2,
|
|
370
379
|
value: response2,
|
|
371
380
|
rawValue: rawValue2
|
|
372
|
-
} = await (0,
|
|
381
|
+
} = await (0, import_provider_utils5.postJsonToApi)({
|
|
373
382
|
url: `${this.config.baseURL}/models/${this.modelId}:embedContent`,
|
|
374
383
|
headers: mergedHeaders,
|
|
375
384
|
body: {
|
|
@@ -381,7 +390,7 @@ var GoogleGenerativeAIEmbeddingModel = class {
|
|
|
381
390
|
taskType: googleOptions == null ? void 0 : googleOptions.taskType
|
|
382
391
|
},
|
|
383
392
|
failedResponseHandler: googleFailedResponseHandler,
|
|
384
|
-
successfulResponseHandler: (0,
|
|
393
|
+
successfulResponseHandler: (0, import_provider_utils5.createJsonResponseHandler)(
|
|
385
394
|
googleGenerativeAISingleEmbeddingResponseSchema
|
|
386
395
|
),
|
|
387
396
|
abortSignal,
|
|
@@ -398,7 +407,7 @@ var GoogleGenerativeAIEmbeddingModel = class {
|
|
|
398
407
|
responseHeaders,
|
|
399
408
|
value: response,
|
|
400
409
|
rawValue
|
|
401
|
-
} = await (0,
|
|
410
|
+
} = await (0, import_provider_utils5.postJsonToApi)({
|
|
402
411
|
url: `${this.config.baseURL}/models/${this.modelId}:batchEmbedContents`,
|
|
403
412
|
headers: mergedHeaders,
|
|
404
413
|
body: {
|
|
@@ -417,7 +426,7 @@ var GoogleGenerativeAIEmbeddingModel = class {
|
|
|
417
426
|
})
|
|
418
427
|
},
|
|
419
428
|
failedResponseHandler: googleFailedResponseHandler,
|
|
420
|
-
successfulResponseHandler: (0,
|
|
429
|
+
successfulResponseHandler: (0, import_provider_utils5.createJsonResponseHandler)(
|
|
421
430
|
googleGenerativeAITextEmbeddingResponseSchema
|
|
422
431
|
),
|
|
423
432
|
abortSignal,
|
|
@@ -431,15 +440,15 @@ var GoogleGenerativeAIEmbeddingModel = class {
|
|
|
431
440
|
};
|
|
432
441
|
}
|
|
433
442
|
};
|
|
434
|
-
var googleGenerativeAITextEmbeddingResponseSchema = (0,
|
|
435
|
-
() => (0,
|
|
443
|
+
var googleGenerativeAITextEmbeddingResponseSchema = (0, import_provider_utils5.lazySchema)(
|
|
444
|
+
() => (0, import_provider_utils5.zodSchema)(
|
|
436
445
|
import_v45.z.object({
|
|
437
446
|
embeddings: import_v45.z.array(import_v45.z.object({ values: import_v45.z.array(import_v45.z.number()) }))
|
|
438
447
|
})
|
|
439
448
|
)
|
|
440
449
|
);
|
|
441
|
-
var googleGenerativeAISingleEmbeddingResponseSchema = (0,
|
|
442
|
-
() => (0,
|
|
450
|
+
var googleGenerativeAISingleEmbeddingResponseSchema = (0, import_provider_utils5.lazySchema)(
|
|
451
|
+
() => (0, import_provider_utils5.zodSchema)(
|
|
443
452
|
import_v45.z.object({
|
|
444
453
|
embedding: import_v45.z.object({ values: import_v45.z.array(import_v45.z.number()) })
|
|
445
454
|
})
|
|
@@ -457,7 +466,7 @@ function validateMultimodalContentLength({
|
|
|
457
466
|
}
|
|
458
467
|
|
|
459
468
|
// src/google-generative-ai-language-model.ts
|
|
460
|
-
var
|
|
469
|
+
var import_provider_utils9 = require("@ai-sdk/provider-utils");
|
|
461
470
|
var import_v47 = require("zod/v4");
|
|
462
471
|
|
|
463
472
|
// src/continue-google-stream.ts
|
|
@@ -875,7 +884,7 @@ function isEmptyObjectSchema(jsonSchema) {
|
|
|
875
884
|
|
|
876
885
|
// src/convert-to-google-generative-ai-messages.ts
|
|
877
886
|
var import_provider4 = require("@ai-sdk/provider");
|
|
878
|
-
var
|
|
887
|
+
var import_provider_utils6 = require("@ai-sdk/provider-utils");
|
|
879
888
|
var SKIP_THOUGHT_SIGNATURE_VALIDATOR = "skip_thought_signature_validator";
|
|
880
889
|
function getGoogleProviderOptions(providerOptions, providerOptionsName) {
|
|
881
890
|
const namespaces = [
|
|
@@ -914,7 +923,7 @@ function convertUrlToolResultPart(url, mediaType, supportedFunctionResponseUrls)
|
|
|
914
923
|
}
|
|
915
924
|
};
|
|
916
925
|
}
|
|
917
|
-
return mediaType != null && (0,
|
|
926
|
+
return mediaType != null && (0, import_provider_utils6.isUrlSupported)({
|
|
918
927
|
url,
|
|
919
928
|
mediaType,
|
|
920
929
|
supportedUrls: supportedFunctionResponseUrls
|
|
@@ -1063,7 +1072,7 @@ function convertToGoogleGenerativeAIMessages(prompt, options) {
|
|
|
1063
1072
|
} : {
|
|
1064
1073
|
inlineData: {
|
|
1065
1074
|
mimeType: mediaType,
|
|
1066
|
-
data: (0,
|
|
1075
|
+
data: (0, import_provider_utils6.convertToBase64)(part.data)
|
|
1067
1076
|
}
|
|
1068
1077
|
}
|
|
1069
1078
|
);
|
|
@@ -1108,7 +1117,7 @@ function convertToGoogleGenerativeAIMessages(prompt, options) {
|
|
|
1108
1117
|
return {
|
|
1109
1118
|
inlineData: {
|
|
1110
1119
|
mimeType: part.mediaType,
|
|
1111
|
-
data: (0,
|
|
1120
|
+
data: (0, import_provider_utils6.convertToBase64)(part.data)
|
|
1112
1121
|
},
|
|
1113
1122
|
...(providerOpts == null ? void 0 : providerOpts.thought) === true ? { thought: true } : {},
|
|
1114
1123
|
thoughtSignature
|
|
@@ -1133,7 +1142,7 @@ function convertToGoogleGenerativeAIMessages(prompt, options) {
|
|
|
1133
1142
|
return {
|
|
1134
1143
|
toolCall: {
|
|
1135
1144
|
toolType: serverToolType,
|
|
1136
|
-
args: typeof part.input === "string" ? (0,
|
|
1145
|
+
args: typeof part.input === "string" ? (0, import_provider_utils6.secureJsonParse)(part.input) : part.input,
|
|
1137
1146
|
id: serverToolCallId
|
|
1138
1147
|
},
|
|
1139
1148
|
thoughtSignature: effectiveThoughtSignature
|
|
@@ -1257,7 +1266,7 @@ function convertToGoogleGenerativeAIMessages(prompt, options) {
|
|
|
1257
1266
|
}
|
|
1258
1267
|
|
|
1259
1268
|
// src/download-tool-result-files.ts
|
|
1260
|
-
var
|
|
1269
|
+
var import_provider_utils7 = require("@ai-sdk/provider-utils");
|
|
1261
1270
|
async function downloadToolResultFiles(prompt, {
|
|
1262
1271
|
abortSignal,
|
|
1263
1272
|
supportedUrls = {}
|
|
@@ -1274,17 +1283,17 @@ async function downloadToolResultFiles(prompt, {
|
|
|
1274
1283
|
if (part.type !== "file-url" && part.type !== "image-url") {
|
|
1275
1284
|
return part;
|
|
1276
1285
|
}
|
|
1277
|
-
if (part.type === "file-url" && part.mediaType != null && (0,
|
|
1286
|
+
if (part.type === "file-url" && part.mediaType != null && (0, import_provider_utils7.isUrlSupported)({
|
|
1278
1287
|
url: part.url,
|
|
1279
1288
|
mediaType: part.mediaType,
|
|
1280
1289
|
supportedUrls
|
|
1281
1290
|
})) {
|
|
1282
1291
|
return part;
|
|
1283
1292
|
}
|
|
1284
|
-
const blob = await (0,
|
|
1293
|
+
const blob = await (0, import_provider_utils7.downloadBlob)(part.url, { abortSignal });
|
|
1285
1294
|
return {
|
|
1286
1295
|
type: part.type === "file-url" ? "file-data" : "image-data",
|
|
1287
|
-
data: (0,
|
|
1296
|
+
data: (0, import_provider_utils7.convertUint8ArrayToBase64)(
|
|
1288
1297
|
new Uint8Array(await blob.arrayBuffer())
|
|
1289
1298
|
),
|
|
1290
1299
|
mediaType: blob.type || (part.type === "file-url" ? (_a2 = part.mediaType) != null ? _a2 : "application/octet-stream" : "image/*"),
|
|
@@ -1328,10 +1337,10 @@ function getModelPath(modelId) {
|
|
|
1328
1337
|
}
|
|
1329
1338
|
|
|
1330
1339
|
// src/google-generative-ai-options.ts
|
|
1331
|
-
var
|
|
1340
|
+
var import_provider_utils8 = require("@ai-sdk/provider-utils");
|
|
1332
1341
|
var import_v46 = require("zod/v4");
|
|
1333
|
-
var googleLanguageModelOptions = (0,
|
|
1334
|
-
() => (0,
|
|
1342
|
+
var googleLanguageModelOptions = (0, import_provider_utils8.lazySchema)(
|
|
1343
|
+
() => (0, import_provider_utils8.zodSchema)(
|
|
1335
1344
|
import_v46.z.object({
|
|
1336
1345
|
responseModalities: import_v46.z.array(import_v46.z.enum(["TEXT", "IMAGE"])).optional(),
|
|
1337
1346
|
thinkingConfig: import_v46.z.object({
|
|
@@ -2091,7 +2100,7 @@ var GoogleGenerativeAILanguageModel = class {
|
|
|
2091
2100
|
var _a2;
|
|
2092
2101
|
this.modelId = modelId;
|
|
2093
2102
|
this.config = config;
|
|
2094
|
-
this.generateId = (_a2 = config.generateId) != null ? _a2 :
|
|
2103
|
+
this.generateId = (_a2 = config.generateId) != null ? _a2 : import_provider_utils9.generateId;
|
|
2095
2104
|
}
|
|
2096
2105
|
get provider() {
|
|
2097
2106
|
return this.config.provider;
|
|
@@ -2119,13 +2128,13 @@ var GoogleGenerativeAILanguageModel = class {
|
|
|
2119
2128
|
var _a2, _b, _c;
|
|
2120
2129
|
const warnings = [];
|
|
2121
2130
|
const providerOptionsName = this.config.provider.includes("vertex") ? "vertex" : "google";
|
|
2122
|
-
let googleOptions = await (0,
|
|
2131
|
+
let googleOptions = await (0, import_provider_utils9.parseProviderOptions)({
|
|
2123
2132
|
provider: providerOptionsName,
|
|
2124
2133
|
providerOptions,
|
|
2125
2134
|
schema: googleLanguageModelOptions
|
|
2126
2135
|
});
|
|
2127
2136
|
if (googleOptions == null && providerOptionsName !== "google") {
|
|
2128
|
-
googleOptions = await (0,
|
|
2137
|
+
googleOptions = await (0, import_provider_utils9.parseProviderOptions)({
|
|
2129
2138
|
provider: "google",
|
|
2130
2139
|
providerOptions,
|
|
2131
2140
|
schema: googleLanguageModelOptions
|
|
@@ -2297,19 +2306,19 @@ var GoogleGenerativeAILanguageModel = class {
|
|
|
2297
2306
|
async doGenerate(options) {
|
|
2298
2307
|
var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B;
|
|
2299
2308
|
const { args, warnings, providerOptionsName, extraHeaders } = await this.getArgs(options);
|
|
2300
|
-
const mergedHeaders = (0,
|
|
2301
|
-
await (0,
|
|
2309
|
+
const mergedHeaders = (0, import_provider_utils9.combineHeaders)(
|
|
2310
|
+
await (0, import_provider_utils9.resolve)(this.config.headers),
|
|
2302
2311
|
options.headers,
|
|
2303
2312
|
extraHeaders
|
|
2304
2313
|
);
|
|
2305
|
-
const generateContent = (body) => (0,
|
|
2314
|
+
const generateContent = (body) => (0, import_provider_utils9.postJsonToApi)({
|
|
2306
2315
|
url: `${this.config.baseURL}/${getModelPath(
|
|
2307
2316
|
this.modelId
|
|
2308
2317
|
)}:generateContent`,
|
|
2309
2318
|
headers: mergedHeaders,
|
|
2310
2319
|
body,
|
|
2311
2320
|
failedResponseHandler: googleFailedResponseHandler,
|
|
2312
|
-
successfulResponseHandler: (0,
|
|
2321
|
+
successfulResponseHandler: (0, import_provider_utils9.createJsonResponseHandler)(responseSchema),
|
|
2313
2322
|
abortSignal: options.abortSignal,
|
|
2314
2323
|
fetch: this.config.fetch
|
|
2315
2324
|
});
|
|
@@ -2513,19 +2522,19 @@ var GoogleGenerativeAILanguageModel = class {
|
|
|
2513
2522
|
}
|
|
2514
2523
|
async doStream(options) {
|
|
2515
2524
|
const { args, warnings, providerOptionsName, extraHeaders } = await this.getArgs(options, { isStreaming: true });
|
|
2516
|
-
const headers = (0,
|
|
2517
|
-
await (0,
|
|
2525
|
+
const headers = (0, import_provider_utils9.combineHeaders)(
|
|
2526
|
+
await (0, import_provider_utils9.resolve)(this.config.headers),
|
|
2518
2527
|
options.headers,
|
|
2519
2528
|
extraHeaders
|
|
2520
2529
|
);
|
|
2521
|
-
const streamGenerateContent = (body) => (0,
|
|
2530
|
+
const streamGenerateContent = (body) => (0, import_provider_utils9.postJsonToApi)({
|
|
2522
2531
|
url: `${this.config.baseURL}/${getModelPath(
|
|
2523
2532
|
this.modelId
|
|
2524
2533
|
)}:streamGenerateContent?alt=sse`,
|
|
2525
2534
|
headers,
|
|
2526
2535
|
body,
|
|
2527
2536
|
failedResponseHandler: googleFailedResponseHandler,
|
|
2528
|
-
successfulResponseHandler: (0,
|
|
2537
|
+
successfulResponseHandler: (0, import_provider_utils9.createEventSourceResponseHandler)(chunkSchema),
|
|
2529
2538
|
abortSignal: options.abortSignal,
|
|
2530
2539
|
fetch: this.config.fetch
|
|
2531
2540
|
});
|
|
@@ -3163,7 +3172,7 @@ var getGroundingMetadataSchema = () => import_v47.z.object({
|
|
|
3163
3172
|
import_v47.z.object({})
|
|
3164
3173
|
]).nullish()
|
|
3165
3174
|
});
|
|
3166
|
-
var partialArgSchema = import_v47.z.object({
|
|
3175
|
+
var partialArgSchema = () => import_v47.z.object({
|
|
3167
3176
|
jsonPath: import_v47.z.string(),
|
|
3168
3177
|
stringValue: import_v47.z.string().nullish(),
|
|
3169
3178
|
numberValue: import_v47.z.number().nullish(),
|
|
@@ -3180,7 +3189,7 @@ var getContentSchema = () => import_v47.z.object({
|
|
|
3180
3189
|
id: import_v47.z.string().nullish(),
|
|
3181
3190
|
name: import_v47.z.string().nullish(),
|
|
3182
3191
|
args: import_v47.z.unknown().nullish(),
|
|
3183
|
-
partialArgs: import_v47.z.array(partialArgSchema).nullish(),
|
|
3192
|
+
partialArgs: import_v47.z.array(partialArgSchema()).nullish(),
|
|
3184
3193
|
willContinue: import_v47.z.boolean().nullish()
|
|
3185
3194
|
}),
|
|
3186
3195
|
thoughtSignature: import_v47.z.string().nullish()
|
|
@@ -3233,13 +3242,13 @@ var getSafetyRatingSchema = () => import_v47.z.object({
|
|
|
3233
3242
|
severityScore: import_v47.z.number().nullish(),
|
|
3234
3243
|
blocked: import_v47.z.boolean().nullish()
|
|
3235
3244
|
});
|
|
3236
|
-
var tokenDetailsSchema = import_v47.z.array(
|
|
3245
|
+
var tokenDetailsSchema = () => import_v47.z.array(
|
|
3237
3246
|
import_v47.z.object({
|
|
3238
3247
|
modality: import_v47.z.string(),
|
|
3239
3248
|
tokenCount: import_v47.z.number()
|
|
3240
3249
|
}).catchall(import_v47.z.json())
|
|
3241
3250
|
).nullish();
|
|
3242
|
-
var usageSchema = import_v47.z.object({
|
|
3251
|
+
var usageSchema = () => import_v47.z.object({
|
|
3243
3252
|
cachedContentTokenCount: import_v47.z.number().nullish(),
|
|
3244
3253
|
thoughtsTokenCount: import_v47.z.number().nullish(),
|
|
3245
3254
|
promptTokenCount: import_v47.z.number().nullish(),
|
|
@@ -3250,10 +3259,10 @@ var usageSchema = import_v47.z.object({
|
|
|
3250
3259
|
trafficType: import_v47.z.string().nullish(),
|
|
3251
3260
|
serviceTier: import_v47.z.string().nullish(),
|
|
3252
3261
|
// https://ai.google.dev/api/generate-content#Modality
|
|
3253
|
-
promptTokensDetails: tokenDetailsSchema,
|
|
3254
|
-
cacheTokensDetails: tokenDetailsSchema,
|
|
3255
|
-
candidatesTokensDetails: tokenDetailsSchema,
|
|
3256
|
-
toolUsePromptTokensDetails: tokenDetailsSchema
|
|
3262
|
+
promptTokensDetails: tokenDetailsSchema(),
|
|
3263
|
+
cacheTokensDetails: tokenDetailsSchema(),
|
|
3264
|
+
candidatesTokensDetails: tokenDetailsSchema(),
|
|
3265
|
+
toolUsePromptTokensDetails: tokenDetailsSchema()
|
|
3257
3266
|
}).catchall(import_v47.z.json());
|
|
3258
3267
|
var getUrlContextMetadataSchema = () => import_v47.z.object({
|
|
3259
3268
|
urlMetadata: import_v47.z.array(
|
|
@@ -3263,8 +3272,8 @@ var getUrlContextMetadataSchema = () => import_v47.z.object({
|
|
|
3263
3272
|
})
|
|
3264
3273
|
).nullish()
|
|
3265
3274
|
});
|
|
3266
|
-
var responseSchema = (0,
|
|
3267
|
-
() => (0,
|
|
3275
|
+
var responseSchema = (0, import_provider_utils9.lazySchema)(
|
|
3276
|
+
() => (0, import_provider_utils9.zodSchema)(
|
|
3268
3277
|
import_v47.z.object({
|
|
3269
3278
|
responseId: import_v47.z.string().nullish(),
|
|
3270
3279
|
candidates: import_v47.z.array(
|
|
@@ -3278,7 +3287,7 @@ var responseSchema = (0, import_provider_utils8.lazySchema)(
|
|
|
3278
3287
|
urlContextMetadata: getUrlContextMetadataSchema().nullish()
|
|
3279
3288
|
})
|
|
3280
3289
|
).nullish(),
|
|
3281
|
-
usageMetadata: usageSchema.nullish(),
|
|
3290
|
+
usageMetadata: usageSchema().nullish(),
|
|
3282
3291
|
promptFeedback: import_v47.z.object({
|
|
3283
3292
|
blockReason: import_v47.z.string().nullish(),
|
|
3284
3293
|
safetyRatings: import_v47.z.array(getSafetyRatingSchema()).nullish()
|
|
@@ -3286,8 +3295,8 @@ var responseSchema = (0, import_provider_utils8.lazySchema)(
|
|
|
3286
3295
|
})
|
|
3287
3296
|
)
|
|
3288
3297
|
);
|
|
3289
|
-
var chunkSchema = (0,
|
|
3290
|
-
() => (0,
|
|
3298
|
+
var chunkSchema = (0, import_provider_utils9.lazySchema)(
|
|
3299
|
+
() => (0, import_provider_utils9.zodSchema)(
|
|
3291
3300
|
import_v47.z.object({
|
|
3292
3301
|
responseId: import_v47.z.string().nullish(),
|
|
3293
3302
|
candidates: import_v47.z.array(
|
|
@@ -3301,7 +3310,7 @@ var chunkSchema = (0, import_provider_utils8.lazySchema)(
|
|
|
3301
3310
|
urlContextMetadata: getUrlContextMetadataSchema().nullish()
|
|
3302
3311
|
})
|
|
3303
3312
|
).nullish(),
|
|
3304
|
-
usageMetadata: usageSchema.nullish(),
|
|
3313
|
+
usageMetadata: usageSchema().nullish(),
|
|
3305
3314
|
promptFeedback: import_v47.z.object({
|
|
3306
3315
|
blockReason: import_v47.z.string().nullish(),
|
|
3307
3316
|
safetyRatings: import_v47.z.array(getSafetyRatingSchema()).nullish()
|
|
@@ -3314,9 +3323,9 @@ function isConfirmedPromptBlockReason(blockReason) {
|
|
|
3314
3323
|
}
|
|
3315
3324
|
|
|
3316
3325
|
// src/tool/code-execution.ts
|
|
3317
|
-
var
|
|
3326
|
+
var import_provider_utils10 = require("@ai-sdk/provider-utils");
|
|
3318
3327
|
var import_v48 = require("zod/v4");
|
|
3319
|
-
var codeExecution = (0,
|
|
3328
|
+
var codeExecution = (0, import_provider_utils10.createProviderToolFactoryWithOutputSchema)({
|
|
3320
3329
|
id: "google.code_execution",
|
|
3321
3330
|
inputSchema: import_v48.z.object({
|
|
3322
3331
|
language: import_v48.z.string().describe("The programming language of the code."),
|
|
@@ -3329,17 +3338,17 @@ var codeExecution = (0, import_provider_utils9.createProviderToolFactoryWithOutp
|
|
|
3329
3338
|
});
|
|
3330
3339
|
|
|
3331
3340
|
// src/tool/enterprise-web-search.ts
|
|
3332
|
-
var
|
|
3341
|
+
var import_provider_utils11 = require("@ai-sdk/provider-utils");
|
|
3333
3342
|
var import_v49 = require("zod/v4");
|
|
3334
|
-
var enterpriseWebSearch = (0,
|
|
3343
|
+
var enterpriseWebSearch = (0, import_provider_utils11.createProviderToolFactory)({
|
|
3335
3344
|
id: "google.enterprise_web_search",
|
|
3336
|
-
inputSchema: (0,
|
|
3345
|
+
inputSchema: (0, import_provider_utils11.lazySchema)(() => (0, import_provider_utils11.zodSchema)(import_v49.z.object({})))
|
|
3337
3346
|
});
|
|
3338
3347
|
|
|
3339
3348
|
// src/tool/file-search.ts
|
|
3340
|
-
var
|
|
3349
|
+
var import_provider_utils12 = require("@ai-sdk/provider-utils");
|
|
3341
3350
|
var import_v410 = require("zod/v4");
|
|
3342
|
-
var fileSearchArgsBaseSchema = import_v410.z.object({
|
|
3351
|
+
var fileSearchArgsBaseSchema = () => import_v410.z.object({
|
|
3343
3352
|
/** The names of the file_search_stores to retrieve from.
|
|
3344
3353
|
* Example: `fileSearchStores/my-file-search-store-123`
|
|
3345
3354
|
*/
|
|
@@ -3355,26 +3364,26 @@ var fileSearchArgsBaseSchema = import_v410.z.object({
|
|
|
3355
3364
|
"Metadata filter to apply to the file search retrieval documents. See https://google.aip.dev/160 for the syntax of the filter expression."
|
|
3356
3365
|
).optional()
|
|
3357
3366
|
}).passthrough();
|
|
3358
|
-
var fileSearchArgsSchema = (0,
|
|
3359
|
-
() => (0,
|
|
3367
|
+
var fileSearchArgsSchema = (0, import_provider_utils12.lazySchema)(
|
|
3368
|
+
() => (0, import_provider_utils12.zodSchema)(fileSearchArgsBaseSchema())
|
|
3360
3369
|
);
|
|
3361
|
-
var fileSearch = (0,
|
|
3370
|
+
var fileSearch = (0, import_provider_utils12.createProviderToolFactory)({
|
|
3362
3371
|
id: "google.file_search",
|
|
3363
3372
|
inputSchema: fileSearchArgsSchema
|
|
3364
3373
|
});
|
|
3365
3374
|
|
|
3366
3375
|
// src/tool/google-maps.ts
|
|
3367
|
-
var
|
|
3376
|
+
var import_provider_utils13 = require("@ai-sdk/provider-utils");
|
|
3368
3377
|
var import_v411 = require("zod/v4");
|
|
3369
|
-
var googleMaps = (0,
|
|
3378
|
+
var googleMaps = (0, import_provider_utils13.createProviderToolFactory)({
|
|
3370
3379
|
id: "google.google_maps",
|
|
3371
|
-
inputSchema: (0,
|
|
3380
|
+
inputSchema: (0, import_provider_utils13.lazySchema)(() => (0, import_provider_utils13.zodSchema)(import_v411.z.object({})))
|
|
3372
3381
|
});
|
|
3373
3382
|
|
|
3374
3383
|
// src/tool/google-search.ts
|
|
3375
|
-
var
|
|
3384
|
+
var import_provider_utils14 = require("@ai-sdk/provider-utils");
|
|
3376
3385
|
var import_v412 = require("zod/v4");
|
|
3377
|
-
var googleSearchToolArgsBaseSchema = import_v412.z.object({
|
|
3386
|
+
var googleSearchToolArgsBaseSchema = () => import_v412.z.object({
|
|
3378
3387
|
searchTypes: import_v412.z.object({
|
|
3379
3388
|
webSearch: import_v412.z.object({}).optional(),
|
|
3380
3389
|
imageSearch: import_v412.z.object({}).optional()
|
|
@@ -3384,10 +3393,10 @@ var googleSearchToolArgsBaseSchema = import_v412.z.object({
|
|
|
3384
3393
|
endTime: import_v412.z.string()
|
|
3385
3394
|
}).optional()
|
|
3386
3395
|
}).passthrough();
|
|
3387
|
-
var googleSearchToolArgsSchema = (0,
|
|
3388
|
-
() => (0,
|
|
3396
|
+
var googleSearchToolArgsSchema = (0, import_provider_utils14.lazySchema)(
|
|
3397
|
+
() => (0, import_provider_utils14.zodSchema)(googleSearchToolArgsBaseSchema())
|
|
3389
3398
|
);
|
|
3390
|
-
var googleSearch = (0,
|
|
3399
|
+
var googleSearch = (0, import_provider_utils14.createProviderToolFactory)(
|
|
3391
3400
|
{
|
|
3392
3401
|
id: "google.google_search",
|
|
3393
3402
|
inputSchema: googleSearchToolArgsSchema
|
|
@@ -3395,17 +3404,17 @@ var googleSearch = (0, import_provider_utils13.createProviderToolFactory)(
|
|
|
3395
3404
|
);
|
|
3396
3405
|
|
|
3397
3406
|
// src/tool/url-context.ts
|
|
3398
|
-
var
|
|
3407
|
+
var import_provider_utils15 = require("@ai-sdk/provider-utils");
|
|
3399
3408
|
var import_v413 = require("zod/v4");
|
|
3400
|
-
var urlContext = (0,
|
|
3409
|
+
var urlContext = (0, import_provider_utils15.createProviderToolFactory)({
|
|
3401
3410
|
id: "google.url_context",
|
|
3402
|
-
inputSchema: (0,
|
|
3411
|
+
inputSchema: (0, import_provider_utils15.lazySchema)(() => (0, import_provider_utils15.zodSchema)(import_v413.z.object({})))
|
|
3403
3412
|
});
|
|
3404
3413
|
|
|
3405
3414
|
// src/tool/vertex-rag-store.ts
|
|
3406
|
-
var
|
|
3415
|
+
var import_provider_utils16 = require("@ai-sdk/provider-utils");
|
|
3407
3416
|
var import_v414 = require("zod/v4");
|
|
3408
|
-
var vertexRagStore = (0,
|
|
3417
|
+
var vertexRagStore = (0, import_provider_utils16.createProviderToolFactory)({
|
|
3409
3418
|
id: "google.vertex_rag_store",
|
|
3410
3419
|
inputSchema: import_v414.z.object({
|
|
3411
3420
|
ragCorpus: import_v414.z.string(),
|
|
@@ -3474,7 +3483,7 @@ var googleTools = {
|
|
|
3474
3483
|
};
|
|
3475
3484
|
|
|
3476
3485
|
// src/google-generative-ai-image-model.ts
|
|
3477
|
-
var
|
|
3486
|
+
var import_provider_utils17 = require("@ai-sdk/provider-utils");
|
|
3478
3487
|
var import_v415 = require("zod/v4");
|
|
3479
3488
|
var GoogleGenerativeAIImageModel = class {
|
|
3480
3489
|
constructor(modelId, settings, config) {
|
|
@@ -3540,7 +3549,7 @@ var GoogleGenerativeAIImageModel = class {
|
|
|
3540
3549
|
details: "This model does not support the `seed` option through this provider."
|
|
3541
3550
|
});
|
|
3542
3551
|
}
|
|
3543
|
-
const googleOptions = await (0,
|
|
3552
|
+
const googleOptions = await (0, import_provider_utils17.parseProviderOptions)({
|
|
3544
3553
|
provider: "google",
|
|
3545
3554
|
providerOptions,
|
|
3546
3555
|
schema: googleImageModelOptionsSchema
|
|
@@ -3567,12 +3576,12 @@ var GoogleGenerativeAIImageModel = class {
|
|
|
3567
3576
|
instances: [{ prompt }],
|
|
3568
3577
|
parameters
|
|
3569
3578
|
};
|
|
3570
|
-
const { responseHeaders, value: response } = await (0,
|
|
3579
|
+
const { responseHeaders, value: response } = await (0, import_provider_utils17.postJsonToApi)({
|
|
3571
3580
|
url: `${this.config.baseURL}/models/${this.modelId}:predict`,
|
|
3572
|
-
headers: (0,
|
|
3581
|
+
headers: (0, import_provider_utils17.combineHeaders)(await (0, import_provider_utils17.resolve)(this.config.headers), headers),
|
|
3573
3582
|
body,
|
|
3574
3583
|
failedResponseHandler: googleFailedResponseHandler,
|
|
3575
|
-
successfulResponseHandler: (0,
|
|
3584
|
+
successfulResponseHandler: (0, import_provider_utils17.createJsonResponseHandler)(
|
|
3576
3585
|
googleImageResponseSchema
|
|
3577
3586
|
),
|
|
3578
3587
|
abortSignal,
|
|
@@ -3659,7 +3668,7 @@ var GoogleGenerativeAIImageModel = class {
|
|
|
3659
3668
|
const languageModelPrompt = [
|
|
3660
3669
|
{ role: "user", content: userContent }
|
|
3661
3670
|
];
|
|
3662
|
-
const googleImageOptions = await (0,
|
|
3671
|
+
const googleImageOptions = await (0, import_provider_utils17.parseProviderOptions)({
|
|
3663
3672
|
provider: "google",
|
|
3664
3673
|
providerOptions,
|
|
3665
3674
|
schema: googleImageModelOptionsSchema
|
|
@@ -3670,7 +3679,7 @@ var GoogleGenerativeAIImageModel = class {
|
|
|
3670
3679
|
baseURL: this.config.baseURL,
|
|
3671
3680
|
headers: (_b = this.config.headers) != null ? _b : {},
|
|
3672
3681
|
fetch: this.config.fetch,
|
|
3673
|
-
generateId: (_c = this.config.generateId) != null ? _c :
|
|
3682
|
+
generateId: (_c = this.config.generateId) != null ? _c : import_provider_utils17.generateId
|
|
3674
3683
|
});
|
|
3675
3684
|
const result = await languageModel.doGenerate({
|
|
3676
3685
|
prompt: languageModelPrompt,
|
|
@@ -3699,7 +3708,7 @@ var GoogleGenerativeAIImageModel = class {
|
|
|
3699
3708
|
const images = [];
|
|
3700
3709
|
for (const part of result.content) {
|
|
3701
3710
|
if (part.type === "file" && part.mediaType.startsWith("image/")) {
|
|
3702
|
-
images.push((0,
|
|
3711
|
+
images.push((0, import_provider_utils17.convertToBase64)(part.data));
|
|
3703
3712
|
}
|
|
3704
3713
|
}
|
|
3705
3714
|
const languageModelGoogleMetadata = (_h = (_g = result.providerMetadata) == null ? void 0 : _g.google) != null ? _h : {};
|
|
@@ -3729,8 +3738,8 @@ var GoogleGenerativeAIImageModel = class {
|
|
|
3729
3738
|
function isGeminiModel(modelId) {
|
|
3730
3739
|
return modelId.startsWith("gemini-");
|
|
3731
3740
|
}
|
|
3732
|
-
var googleImageResponseSchema = (0,
|
|
3733
|
-
() => (0,
|
|
3741
|
+
var googleImageResponseSchema = (0, import_provider_utils17.lazySchema)(
|
|
3742
|
+
() => (0, import_provider_utils17.zodSchema)(
|
|
3734
3743
|
import_v415.z.object({
|
|
3735
3744
|
predictions: import_v415.z.array(
|
|
3736
3745
|
import_v415.z.union([
|
|
@@ -3741,8 +3750,8 @@ var googleImageResponseSchema = (0, import_provider_utils16.lazySchema)(
|
|
|
3741
3750
|
})
|
|
3742
3751
|
)
|
|
3743
3752
|
);
|
|
3744
|
-
var googleImageModelOptionsSchema = (0,
|
|
3745
|
-
() => (0,
|
|
3753
|
+
var googleImageModelOptionsSchema = (0, import_provider_utils17.lazySchema)(
|
|
3754
|
+
() => (0, import_provider_utils17.zodSchema)(
|
|
3746
3755
|
import_v415.z.object({
|
|
3747
3756
|
personGeneration: import_v415.z.enum(["dont_allow", "allow_adult", "allow_all"]).nullish(),
|
|
3748
3757
|
aspectRatio: import_v415.z.enum(["1:1", "3:4", "4:3", "9:16", "16:9"]).nullish(),
|
|
@@ -3755,14 +3764,14 @@ var googleImageModelOptionsSchema = (0, import_provider_utils16.lazySchema)(
|
|
|
3755
3764
|
* dedicated escape hatch for grounding image generation the same way
|
|
3756
3765
|
* `generateText` does.
|
|
3757
3766
|
*/
|
|
3758
|
-
googleSearch: googleSearchToolArgsBaseSchema.optional()
|
|
3767
|
+
googleSearch: googleSearchToolArgsBaseSchema().optional()
|
|
3759
3768
|
})
|
|
3760
3769
|
)
|
|
3761
3770
|
);
|
|
3762
3771
|
|
|
3763
3772
|
// src/google-generative-ai-video-model.ts
|
|
3764
3773
|
var import_provider6 = require("@ai-sdk/provider");
|
|
3765
|
-
var
|
|
3774
|
+
var import_provider_utils18 = require("@ai-sdk/provider-utils");
|
|
3766
3775
|
var import_v416 = require("zod/v4");
|
|
3767
3776
|
function getFirstFrameImage(options) {
|
|
3768
3777
|
var _a2, _b;
|
|
@@ -3797,7 +3806,7 @@ function convertFileToGoogleImage(file, warnings) {
|
|
|
3797
3806
|
});
|
|
3798
3807
|
return void 0;
|
|
3799
3808
|
}
|
|
3800
|
-
const base64Data = typeof file.data === "string" ? file.data : (0,
|
|
3809
|
+
const base64Data = typeof file.data === "string" ? file.data : (0, import_provider_utils18.convertUint8ArrayToBase64)(file.data);
|
|
3801
3810
|
return {
|
|
3802
3811
|
bytesBase64Encoded: base64Data,
|
|
3803
3812
|
mimeType: file.mediaType || "image/png"
|
|
@@ -3842,7 +3851,7 @@ var GoogleGenerativeAIVideoModel = class {
|
|
|
3842
3851
|
var _a2, _b, _c, _d, _e, _f, _g, _h;
|
|
3843
3852
|
const currentDate = (_c = (_b = (_a2 = this.config._internal) == null ? void 0 : _a2.currentDate) == null ? void 0 : _b.call(_a2)) != null ? _c : /* @__PURE__ */ new Date();
|
|
3844
3853
|
const warnings = [];
|
|
3845
|
-
const googleOptions = await (0,
|
|
3854
|
+
const googleOptions = await (0, import_provider_utils18.parseProviderOptions)({
|
|
3846
3855
|
provider: "google",
|
|
3847
3856
|
providerOptions: options.providerOptions,
|
|
3848
3857
|
schema: googleVideoModelOptionsSchema
|
|
@@ -3917,17 +3926,17 @@ var GoogleGenerativeAIVideoModel = class {
|
|
|
3917
3926
|
}
|
|
3918
3927
|
}
|
|
3919
3928
|
}
|
|
3920
|
-
const { value: operation } = await (0,
|
|
3929
|
+
const { value: operation } = await (0, import_provider_utils18.postJsonToApi)({
|
|
3921
3930
|
url: `${this.config.baseURL}/models/${this.modelId}:predictLongRunning`,
|
|
3922
|
-
headers: (0,
|
|
3923
|
-
await (0,
|
|
3931
|
+
headers: (0, import_provider_utils18.combineHeaders)(
|
|
3932
|
+
await (0, import_provider_utils18.resolve)(this.config.headers),
|
|
3924
3933
|
options.headers
|
|
3925
3934
|
),
|
|
3926
3935
|
body: {
|
|
3927
3936
|
instances,
|
|
3928
3937
|
parameters
|
|
3929
3938
|
},
|
|
3930
|
-
successfulResponseHandler: (0,
|
|
3939
|
+
successfulResponseHandler: (0, import_provider_utils18.createJsonResponseHandler)(
|
|
3931
3940
|
googleOperationSchema
|
|
3932
3941
|
),
|
|
3933
3942
|
failedResponseHandler: googleFailedResponseHandler,
|
|
@@ -3953,20 +3962,20 @@ var GoogleGenerativeAIVideoModel = class {
|
|
|
3953
3962
|
message: `Video generation timed out after ${pollTimeoutMs}ms`
|
|
3954
3963
|
});
|
|
3955
3964
|
}
|
|
3956
|
-
await (0,
|
|
3965
|
+
await (0, import_provider_utils18.delay)(pollIntervalMs);
|
|
3957
3966
|
if ((_f = options.abortSignal) == null ? void 0 : _f.aborted) {
|
|
3958
3967
|
throw new import_provider6.AISDKError({
|
|
3959
3968
|
name: "GOOGLE_VIDEO_GENERATION_ABORTED",
|
|
3960
3969
|
message: "Video generation request was aborted"
|
|
3961
3970
|
});
|
|
3962
3971
|
}
|
|
3963
|
-
const { value: statusOperation, responseHeaders: pollHeaders } = await (0,
|
|
3972
|
+
const { value: statusOperation, responseHeaders: pollHeaders } = await (0, import_provider_utils18.getFromApi)({
|
|
3964
3973
|
url: `${this.config.baseURL}/${operationName}`,
|
|
3965
|
-
headers: (0,
|
|
3966
|
-
await (0,
|
|
3974
|
+
headers: (0, import_provider_utils18.combineHeaders)(
|
|
3975
|
+
await (0, import_provider_utils18.resolve)(this.config.headers),
|
|
3967
3976
|
options.headers
|
|
3968
3977
|
),
|
|
3969
|
-
successfulResponseHandler: (0,
|
|
3978
|
+
successfulResponseHandler: (0, import_provider_utils18.createJsonResponseHandler)(
|
|
3970
3979
|
googleOperationSchema
|
|
3971
3980
|
),
|
|
3972
3981
|
failedResponseHandler: googleFailedResponseHandler,
|
|
@@ -3991,11 +4000,11 @@ var GoogleGenerativeAIVideoModel = class {
|
|
|
3991
4000
|
}
|
|
3992
4001
|
const videos = [];
|
|
3993
4002
|
const videoMetadata = [];
|
|
3994
|
-
const resolvedHeaders = await (0,
|
|
4003
|
+
const resolvedHeaders = await (0, import_provider_utils18.resolve)(this.config.headers);
|
|
3995
4004
|
const apiKey = resolvedHeaders == null ? void 0 : resolvedHeaders["x-goog-api-key"];
|
|
3996
4005
|
for (const generatedSample of response.generateVideoResponse.generatedSamples) {
|
|
3997
4006
|
if ((_h = generatedSample.video) == null ? void 0 : _h.uri) {
|
|
3998
|
-
const urlWithAuth = apiKey && (0,
|
|
4007
|
+
const urlWithAuth = apiKey && (0, import_provider_utils18.isSameOrigin)(generatedSample.video.uri, this.config.baseURL) ? `${generatedSample.video.uri}${generatedSample.video.uri.includes("?") ? "&" : "?"}key=${apiKey}` : generatedSample.video.uri;
|
|
3999
4008
|
videos.push({
|
|
4000
4009
|
type: "url",
|
|
4001
4010
|
url: urlWithAuth,
|
|
@@ -4028,28 +4037,32 @@ var GoogleGenerativeAIVideoModel = class {
|
|
|
4028
4037
|
};
|
|
4029
4038
|
}
|
|
4030
4039
|
};
|
|
4031
|
-
var googleOperationSchema =
|
|
4032
|
-
|
|
4033
|
-
|
|
4034
|
-
|
|
4035
|
-
|
|
4036
|
-
|
|
4037
|
-
|
|
4038
|
-
|
|
4039
|
-
|
|
4040
|
-
|
|
4041
|
-
|
|
4042
|
-
import_v416.z.object({
|
|
4043
|
-
|
|
4044
|
-
|
|
4045
|
-
|
|
4046
|
-
|
|
4047
|
-
|
|
4048
|
-
|
|
4049
|
-
|
|
4050
|
-
})
|
|
4051
|
-
|
|
4052
|
-
|
|
4040
|
+
var googleOperationSchema = (0, import_provider_utils18.lazySchema)(
|
|
4041
|
+
() => (0, import_provider_utils18.zodSchema)(
|
|
4042
|
+
import_v416.z.object({
|
|
4043
|
+
name: import_v416.z.string().nullish(),
|
|
4044
|
+
done: import_v416.z.boolean().nullish(),
|
|
4045
|
+
error: import_v416.z.object({
|
|
4046
|
+
code: import_v416.z.number().nullish(),
|
|
4047
|
+
message: import_v416.z.string(),
|
|
4048
|
+
status: import_v416.z.string().nullish()
|
|
4049
|
+
}).nullish(),
|
|
4050
|
+
response: import_v416.z.object({
|
|
4051
|
+
generateVideoResponse: import_v416.z.object({
|
|
4052
|
+
generatedSamples: import_v416.z.array(
|
|
4053
|
+
import_v416.z.object({
|
|
4054
|
+
video: import_v416.z.object({
|
|
4055
|
+
uri: import_v416.z.string().nullish()
|
|
4056
|
+
}).nullish()
|
|
4057
|
+
})
|
|
4058
|
+
).nullish()
|
|
4059
|
+
}).nullish()
|
|
4060
|
+
}).nullish()
|
|
4061
|
+
})
|
|
4062
|
+
)
|
|
4063
|
+
);
|
|
4064
|
+
var googleVideoModelOptionsSchema = (0, import_provider_utils18.lazySchema)(
|
|
4065
|
+
() => (0, import_provider_utils18.zodSchema)(
|
|
4053
4066
|
import_v416.z.object({
|
|
4054
4067
|
pollIntervalMs: import_v416.z.number().positive().nullish(),
|
|
4055
4068
|
pollTimeoutMs: import_v416.z.number().positive().nullish(),
|
|
@@ -4066,7 +4079,7 @@ var googleVideoModelOptionsSchema = (0, import_provider_utils17.lazySchema)(
|
|
|
4066
4079
|
);
|
|
4067
4080
|
|
|
4068
4081
|
// src/interactions/google-interactions-language-model.ts
|
|
4069
|
-
var
|
|
4082
|
+
var import_provider_utils25 = require("@ai-sdk/provider-utils");
|
|
4070
4083
|
|
|
4071
4084
|
// src/interactions/convert-google-interactions-usage.ts
|
|
4072
4085
|
function convertGoogleInteractionsUsage(usage) {
|
|
@@ -4832,7 +4845,7 @@ function buildGoogleInteractionsStreamTransform({
|
|
|
4832
4845
|
}
|
|
4833
4846
|
|
|
4834
4847
|
// src/interactions/convert-to-google-interactions-input.ts
|
|
4835
|
-
var
|
|
4848
|
+
var import_provider_utils19 = require("@ai-sdk/provider-utils");
|
|
4836
4849
|
function getTopLevelMediaType(mediaType) {
|
|
4837
4850
|
const slashIndex = mediaType.indexOf("/");
|
|
4838
4851
|
return slashIndex === -1 ? mediaType : mediaType.substring(0, slashIndex);
|
|
@@ -5021,7 +5034,7 @@ function convertFilePartToContent({
|
|
|
5021
5034
|
}
|
|
5022
5035
|
return {
|
|
5023
5036
|
type: kind,
|
|
5024
|
-
data: (0,
|
|
5037
|
+
data: (0, import_provider_utils19.convertToBase64)(part.data),
|
|
5025
5038
|
mime_type: part.mediaType,
|
|
5026
5039
|
...resolutionField
|
|
5027
5040
|
};
|
|
@@ -5072,7 +5085,7 @@ function compactPromptForPreviousInteraction({
|
|
|
5072
5085
|
}
|
|
5073
5086
|
function safeParseToolArgs(input) {
|
|
5074
5087
|
try {
|
|
5075
|
-
const parsed = (0,
|
|
5088
|
+
const parsed = (0, import_provider_utils19.secureJsonParse)(input);
|
|
5076
5089
|
if (parsed != null && typeof parsed === "object" && !Array.isArray(parsed)) {
|
|
5077
5090
|
return parsed;
|
|
5078
5091
|
}
|
|
@@ -5195,7 +5208,7 @@ function filePartToImageBlock({
|
|
|
5195
5208
|
}
|
|
5196
5209
|
return {
|
|
5197
5210
|
type: "image",
|
|
5198
|
-
data: (0,
|
|
5211
|
+
data: (0, import_provider_utils19.convertToBase64)(part.data),
|
|
5199
5212
|
mime_type: part.mediaType
|
|
5200
5213
|
};
|
|
5201
5214
|
}
|
|
@@ -5222,7 +5235,7 @@ ${block.text}`
|
|
|
5222
5235
|
}
|
|
5223
5236
|
|
|
5224
5237
|
// src/interactions/google-interactions-api.ts
|
|
5225
|
-
var
|
|
5238
|
+
var import_provider_utils20 = require("@ai-sdk/provider-utils");
|
|
5226
5239
|
var import_v417 = require("zod/v4");
|
|
5227
5240
|
var tokenByModalitySchema = () => import_v417.z.object({
|
|
5228
5241
|
modality: import_v417.z.string().nullish(),
|
|
@@ -5385,8 +5398,8 @@ var stepSchema = () => {
|
|
|
5385
5398
|
import_v417.z.object({ type: import_v417.z.string() }).loose()
|
|
5386
5399
|
]);
|
|
5387
5400
|
};
|
|
5388
|
-
var googleInteractionsResponseSchema = (0,
|
|
5389
|
-
() => (0,
|
|
5401
|
+
var googleInteractionsResponseSchema = (0, import_provider_utils20.lazySchema)(
|
|
5402
|
+
() => (0, import_provider_utils20.zodSchema)(
|
|
5390
5403
|
import_v417.z.object({
|
|
5391
5404
|
/*
|
|
5392
5405
|
* `id` is omitted from the response body when `store: false` (fully
|
|
@@ -5407,8 +5420,8 @@ var googleInteractionsResponseSchema = (0, import_provider_utils19.lazySchema)(
|
|
|
5407
5420
|
}).loose()
|
|
5408
5421
|
)
|
|
5409
5422
|
);
|
|
5410
|
-
var googleInteractionsEventSchema = (0,
|
|
5411
|
-
() => (0,
|
|
5423
|
+
var googleInteractionsEventSchema = (0, import_provider_utils20.lazySchema)(
|
|
5424
|
+
() => (0, import_provider_utils20.zodSchema)(
|
|
5412
5425
|
(() => {
|
|
5413
5426
|
const status = interactionStatusSchema();
|
|
5414
5427
|
const annotation = annotationSchema();
|
|
@@ -5565,10 +5578,10 @@ var googleInteractionsEventSchema = (0, import_provider_utils19.lazySchema)(
|
|
|
5565
5578
|
);
|
|
5566
5579
|
|
|
5567
5580
|
// src/interactions/google-interactions-language-model-options.ts
|
|
5568
|
-
var
|
|
5581
|
+
var import_provider_utils21 = require("@ai-sdk/provider-utils");
|
|
5569
5582
|
var import_v418 = require("zod/v4");
|
|
5570
|
-
var googleInteractionsLanguageModelOptions = (0,
|
|
5571
|
-
() => (0,
|
|
5583
|
+
var googleInteractionsLanguageModelOptions = (0, import_provider_utils21.lazySchema)(
|
|
5584
|
+
() => (0, import_provider_utils21.zodSchema)(
|
|
5572
5585
|
import_v418.z.object({
|
|
5573
5586
|
previousInteractionId: import_v418.z.string().nullish(),
|
|
5574
5587
|
store: import_v418.z.boolean().nullish(),
|
|
@@ -5935,10 +5948,10 @@ function parseGoogleInteractionsOutputs({
|
|
|
5935
5948
|
}
|
|
5936
5949
|
|
|
5937
5950
|
// src/interactions/poll-google-interactions.ts
|
|
5938
|
-
var
|
|
5951
|
+
var import_provider_utils23 = require("@ai-sdk/provider-utils");
|
|
5939
5952
|
|
|
5940
5953
|
// src/interactions/cancel-google-interaction.ts
|
|
5941
|
-
var
|
|
5954
|
+
var import_provider_utils22 = require("@ai-sdk/provider-utils");
|
|
5942
5955
|
var getOriginalFetch = () => globalThis.fetch;
|
|
5943
5956
|
async function cancelGoogleInteraction({
|
|
5944
5957
|
baseURL,
|
|
@@ -5953,9 +5966,9 @@ async function cancelGoogleInteraction({
|
|
|
5953
5966
|
try {
|
|
5954
5967
|
const response = await fetch(url, {
|
|
5955
5968
|
method: "POST",
|
|
5956
|
-
headers: (0,
|
|
5957
|
-
(0,
|
|
5958
|
-
(0,
|
|
5969
|
+
headers: (0, import_provider_utils22.withUserAgentSuffix)(
|
|
5970
|
+
(0, import_provider_utils22.combineHeaders)({ "Content-Type": "application/json" }, headers),
|
|
5971
|
+
(0, import_provider_utils22.getRuntimeEnvironmentUserAgent)()
|
|
5959
5972
|
),
|
|
5960
5973
|
body: "{}"
|
|
5961
5974
|
});
|
|
@@ -6005,16 +6018,16 @@ async function pollGoogleInteractionUntilTerminal({
|
|
|
6005
6018
|
`google.interactions: timed out polling interaction ${interactionId} after ${timeoutMs}ms.`
|
|
6006
6019
|
);
|
|
6007
6020
|
}
|
|
6008
|
-
await (0,
|
|
6021
|
+
await (0, import_provider_utils23.delay)(nextDelayMs, { abortSignal });
|
|
6009
6022
|
const {
|
|
6010
6023
|
value: response,
|
|
6011
6024
|
rawValue: rawResponse,
|
|
6012
6025
|
responseHeaders
|
|
6013
|
-
} = await (0,
|
|
6026
|
+
} = await (0, import_provider_utils23.getFromApi)({
|
|
6014
6027
|
url,
|
|
6015
6028
|
headers,
|
|
6016
6029
|
failedResponseHandler: googleFailedResponseHandler,
|
|
6017
|
-
successfulResponseHandler: (0,
|
|
6030
|
+
successfulResponseHandler: (0, import_provider_utils23.createJsonResponseHandler)(
|
|
6018
6031
|
googleInteractionsResponseSchema
|
|
6019
6032
|
),
|
|
6020
6033
|
abortSignal,
|
|
@@ -6026,7 +6039,7 @@ async function pollGoogleInteractionUntilTerminal({
|
|
|
6026
6039
|
nextDelayMs = Math.min(nextDelayMs * 2, maxDelayMs);
|
|
6027
6040
|
}
|
|
6028
6041
|
} catch (error) {
|
|
6029
|
-
if ((0,
|
|
6042
|
+
if ((0, import_provider_utils23.isAbortError)(error)) {
|
|
6030
6043
|
await cancelOnServer();
|
|
6031
6044
|
}
|
|
6032
6045
|
throw error;
|
|
@@ -6182,7 +6195,7 @@ function prepareGoogleInteractionsTools({
|
|
|
6182
6195
|
}
|
|
6183
6196
|
|
|
6184
6197
|
// src/interactions/stream-google-interactions.ts
|
|
6185
|
-
var
|
|
6198
|
+
var import_provider_utils24 = require("@ai-sdk/provider-utils");
|
|
6186
6199
|
var DEFAULT_MAX_RETRIES = 3;
|
|
6187
6200
|
var DEFAULT_RETRY_DELAY_MS = 500;
|
|
6188
6201
|
function streamGoogleInteractionEvents({
|
|
@@ -6229,11 +6242,11 @@ function streamGoogleInteractionEvents({
|
|
|
6229
6242
|
return `${base}?${params.toString()}`;
|
|
6230
6243
|
}
|
|
6231
6244
|
async function openReader() {
|
|
6232
|
-
const { value: stream } = await (0,
|
|
6245
|
+
const { value: stream } = await (0, import_provider_utils24.getFromApi)({
|
|
6233
6246
|
url: buildUrl(),
|
|
6234
6247
|
headers: eventSourceHeaders,
|
|
6235
6248
|
failedResponseHandler: googleFailedResponseHandler,
|
|
6236
|
-
successfulResponseHandler: (0,
|
|
6249
|
+
successfulResponseHandler: (0, import_provider_utils24.createEventSourceResponseHandler)(
|
|
6237
6250
|
googleInteractionsEventSchema
|
|
6238
6251
|
),
|
|
6239
6252
|
abortSignal: effectiveSignal,
|
|
@@ -6250,7 +6263,7 @@ function streamGoogleInteractionEvents({
|
|
|
6250
6263
|
currentReader = await openReader();
|
|
6251
6264
|
receivedAnyEventThisAttempt = false;
|
|
6252
6265
|
} catch (error) {
|
|
6253
|
-
if ((0,
|
|
6266
|
+
if ((0, import_provider_utils24.isAbortError)(error) || effectiveSignal.aborted) {
|
|
6254
6267
|
controller.error(error);
|
|
6255
6268
|
return;
|
|
6256
6269
|
}
|
|
@@ -6259,7 +6272,7 @@ function streamGoogleInteractionEvents({
|
|
|
6259
6272
|
controller.error(error);
|
|
6260
6273
|
return;
|
|
6261
6274
|
}
|
|
6262
|
-
await (0,
|
|
6275
|
+
await (0, import_provider_utils24.delay)(retryDelayMs * attempt, {
|
|
6263
6276
|
abortSignal: effectiveSignal
|
|
6264
6277
|
});
|
|
6265
6278
|
continue;
|
|
@@ -6280,7 +6293,7 @@ function streamGoogleInteractionEvents({
|
|
|
6280
6293
|
);
|
|
6281
6294
|
return;
|
|
6282
6295
|
}
|
|
6283
|
-
await (0,
|
|
6296
|
+
await (0, import_provider_utils24.delay)(retryDelayMs * attempt, {
|
|
6284
6297
|
abortSignal: effectiveSignal
|
|
6285
6298
|
});
|
|
6286
6299
|
} else {
|
|
@@ -6300,7 +6313,7 @@ function streamGoogleInteractionEvents({
|
|
|
6300
6313
|
}
|
|
6301
6314
|
controller.enqueue(value);
|
|
6302
6315
|
} catch (error) {
|
|
6303
|
-
if ((0,
|
|
6316
|
+
if ((0, import_provider_utils24.isAbortError)(error) || effectiveSignal.aborted) {
|
|
6304
6317
|
controller.error(error);
|
|
6305
6318
|
return;
|
|
6306
6319
|
}
|
|
@@ -6310,7 +6323,7 @@ function streamGoogleInteractionEvents({
|
|
|
6310
6323
|
controller.error(error);
|
|
6311
6324
|
return;
|
|
6312
6325
|
}
|
|
6313
|
-
await (0,
|
|
6326
|
+
await (0, import_provider_utils24.delay)(retryDelayMs * attempt, {
|
|
6314
6327
|
abortSignal: effectiveSignal
|
|
6315
6328
|
});
|
|
6316
6329
|
}
|
|
@@ -6522,7 +6535,7 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6522
6535
|
async getArgs(options) {
|
|
6523
6536
|
var _a2, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F;
|
|
6524
6537
|
const warnings = [];
|
|
6525
|
-
const opts = await (0,
|
|
6538
|
+
const opts = await (0, import_provider_utils25.parseProviderOptions)({
|
|
6526
6539
|
provider: "google",
|
|
6527
6540
|
providerOptions: options.providerOptions,
|
|
6528
6541
|
schema: googleInteractionsLanguageModelOptions
|
|
@@ -6779,17 +6792,17 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6779
6792
|
var _a2, _b, _c, _d, _e, _f;
|
|
6780
6793
|
const { args, warnings, isAgent, isBackground, pollingTimeoutMs } = await this.getArgs(options);
|
|
6781
6794
|
const url = `${this.config.baseURL}/interactions`;
|
|
6782
|
-
const mergedHeaders = (0,
|
|
6795
|
+
const mergedHeaders = (0, import_provider_utils25.combineHeaders)(
|
|
6783
6796
|
INTERACTIONS_API_REVISION_HEADER,
|
|
6784
|
-
this.config.headers ? await (0,
|
|
6797
|
+
this.config.headers ? await (0, import_provider_utils25.resolve)(this.config.headers) : void 0,
|
|
6785
6798
|
options.headers
|
|
6786
6799
|
);
|
|
6787
|
-
const postResult = await (0,
|
|
6800
|
+
const postResult = await (0, import_provider_utils25.postJsonToApi)({
|
|
6788
6801
|
url,
|
|
6789
6802
|
headers: mergedHeaders,
|
|
6790
6803
|
body: args,
|
|
6791
6804
|
failedResponseHandler: googleFailedResponseHandler,
|
|
6792
|
-
successfulResponseHandler: (0,
|
|
6805
|
+
successfulResponseHandler: (0, import_provider_utils25.createJsonResponseHandler)(
|
|
6793
6806
|
googleInteractionsResponseSchema
|
|
6794
6807
|
),
|
|
6795
6808
|
abortSignal: options.abortSignal,
|
|
@@ -6816,7 +6829,7 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6816
6829
|
const interactionId = typeof response.id === "string" && response.id.length > 0 ? response.id : void 0;
|
|
6817
6830
|
const { content, hasFunctionCall } = parseGoogleInteractionsOutputs({
|
|
6818
6831
|
steps: (_b = response.steps) != null ? _b : null,
|
|
6819
|
-
generateId: (_c = this.config.generateId) != null ? _c :
|
|
6832
|
+
generateId: (_c = this.config.generateId) != null ? _c : import_provider_utils25.generateId,
|
|
6820
6833
|
interactionId
|
|
6821
6834
|
});
|
|
6822
6835
|
const finishReason = {
|
|
@@ -6864,9 +6877,9 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6864
6877
|
var _a2;
|
|
6865
6878
|
const { args, warnings, isBackground, pollingTimeoutMs } = await this.getArgs(options);
|
|
6866
6879
|
const url = `${this.config.baseURL}/interactions`;
|
|
6867
|
-
const mergedHeaders = (0,
|
|
6880
|
+
const mergedHeaders = (0, import_provider_utils25.combineHeaders)(
|
|
6868
6881
|
INTERACTIONS_API_REVISION_HEADER,
|
|
6869
|
-
this.config.headers ? await (0,
|
|
6882
|
+
this.config.headers ? await (0, import_provider_utils25.resolve)(this.config.headers) : void 0,
|
|
6870
6883
|
options.headers
|
|
6871
6884
|
);
|
|
6872
6885
|
if (isBackground) {
|
|
@@ -6880,12 +6893,12 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6880
6893
|
});
|
|
6881
6894
|
}
|
|
6882
6895
|
const body = { ...args, stream: true };
|
|
6883
|
-
const { responseHeaders, value: response } = await (0,
|
|
6896
|
+
const { responseHeaders, value: response } = await (0, import_provider_utils25.postJsonToApi)({
|
|
6884
6897
|
url,
|
|
6885
6898
|
headers: mergedHeaders,
|
|
6886
6899
|
body,
|
|
6887
6900
|
failedResponseHandler: googleFailedResponseHandler,
|
|
6888
|
-
successfulResponseHandler: (0,
|
|
6901
|
+
successfulResponseHandler: (0, import_provider_utils25.createEventSourceResponseHandler)(
|
|
6889
6902
|
googleInteractionsEventSchema
|
|
6890
6903
|
),
|
|
6891
6904
|
abortSignal: options.abortSignal,
|
|
@@ -6894,7 +6907,7 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6894
6907
|
const headerServiceTier = responseHeaders == null ? void 0 : responseHeaders["x-gemini-service-tier"];
|
|
6895
6908
|
const transform = buildGoogleInteractionsStreamTransform({
|
|
6896
6909
|
warnings,
|
|
6897
|
-
generateId: (_a2 = this.config.generateId) != null ? _a2 :
|
|
6910
|
+
generateId: (_a2 = this.config.generateId) != null ? _a2 : import_provider_utils25.generateId,
|
|
6898
6911
|
includeRawChunks: options.includeRawChunks,
|
|
6899
6912
|
serviceTier: headerServiceTier
|
|
6900
6913
|
});
|
|
@@ -6931,12 +6944,12 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6931
6944
|
pollingTimeoutMs
|
|
6932
6945
|
}) {
|
|
6933
6946
|
var _a2, _b;
|
|
6934
|
-
const postResult = await (0,
|
|
6947
|
+
const postResult = await (0, import_provider_utils25.postJsonToApi)({
|
|
6935
6948
|
url,
|
|
6936
6949
|
headers: mergedHeaders,
|
|
6937
6950
|
body: args,
|
|
6938
6951
|
failedResponseHandler: googleFailedResponseHandler,
|
|
6939
|
-
successfulResponseHandler: (0,
|
|
6952
|
+
successfulResponseHandler: (0, import_provider_utils25.createJsonResponseHandler)(
|
|
6940
6953
|
googleInteractionsResponseSchema
|
|
6941
6954
|
),
|
|
6942
6955
|
abortSignal: options.abortSignal,
|
|
@@ -6954,7 +6967,7 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6954
6967
|
const synthesized = synthesizeGoogleInteractionsAgentStream({
|
|
6955
6968
|
response: postResponse,
|
|
6956
6969
|
warnings,
|
|
6957
|
-
generateId: (_a2 = this.config.generateId) != null ? _a2 :
|
|
6970
|
+
generateId: (_a2 = this.config.generateId) != null ? _a2 : import_provider_utils25.generateId,
|
|
6958
6971
|
includeRawChunks: options.includeRawChunks,
|
|
6959
6972
|
headerServiceTier
|
|
6960
6973
|
});
|
|
@@ -6974,7 +6987,7 @@ var GoogleInteractionsLanguageModel = class {
|
|
|
6974
6987
|
});
|
|
6975
6988
|
const transform = buildGoogleInteractionsStreamTransform({
|
|
6976
6989
|
warnings,
|
|
6977
|
-
generateId: (_b = this.config.generateId) != null ? _b :
|
|
6990
|
+
generateId: (_b = this.config.generateId) != null ? _b : import_provider_utils25.generateId,
|
|
6978
6991
|
includeRawChunks: options.includeRawChunks,
|
|
6979
6992
|
serviceTier: headerServiceTier
|
|
6980
6993
|
});
|
|
@@ -7028,11 +7041,11 @@ function supportsExternalFileUrls(modelId) {
|
|
|
7028
7041
|
}
|
|
7029
7042
|
function createGoogleGenerativeAI(options = {}) {
|
|
7030
7043
|
var _a2, _b;
|
|
7031
|
-
const baseURL = (_a2 = (0,
|
|
7044
|
+
const baseURL = (_a2 = (0, import_provider_utils26.withoutTrailingSlash)(options.baseURL)) != null ? _a2 : "https://generativelanguage.googleapis.com/v1beta";
|
|
7032
7045
|
const providerName = (_b = options.name) != null ? _b : "google.generative-ai";
|
|
7033
|
-
const getHeaders = () => (0,
|
|
7046
|
+
const getHeaders = () => (0, import_provider_utils26.withUserAgentSuffix)(
|
|
7034
7047
|
{
|
|
7035
|
-
"x-goog-api-key": (0,
|
|
7048
|
+
"x-goog-api-key": (0, import_provider_utils26.loadApiKey)({
|
|
7036
7049
|
apiKey: options.apiKey,
|
|
7037
7050
|
environmentVariableName: "GOOGLE_GENERATIVE_AI_API_KEY",
|
|
7038
7051
|
description: "Google Generative AI"
|
|
@@ -7047,7 +7060,7 @@ function createGoogleGenerativeAI(options = {}) {
|
|
|
7047
7060
|
provider: providerName,
|
|
7048
7061
|
baseURL,
|
|
7049
7062
|
headers: getHeaders,
|
|
7050
|
-
generateId: (_a3 = options.generateId) != null ? _a3 :
|
|
7063
|
+
generateId: (_a3 = options.generateId) != null ? _a3 : import_provider_utils26.generateId,
|
|
7051
7064
|
supportedUrls: () => ({
|
|
7052
7065
|
"*": [
|
|
7053
7066
|
// Google Generative Language "files" endpoint
|
|
@@ -7094,7 +7107,7 @@ function createGoogleGenerativeAI(options = {}) {
|
|
|
7094
7107
|
baseURL,
|
|
7095
7108
|
headers: getHeaders,
|
|
7096
7109
|
fetch: options.fetch,
|
|
7097
|
-
generateId: (_a3 = options.generateId) != null ? _a3 :
|
|
7110
|
+
generateId: (_a3 = options.generateId) != null ? _a3 : import_provider_utils26.generateId
|
|
7098
7111
|
});
|
|
7099
7112
|
};
|
|
7100
7113
|
const createInteractionsModel = (modelIdOrAgent) => {
|
|
@@ -7105,7 +7118,7 @@ function createGoogleGenerativeAI(options = {}) {
|
|
|
7105
7118
|
provider: `${providerName}.interactions`,
|
|
7106
7119
|
baseURL,
|
|
7107
7120
|
headers: getHeaders,
|
|
7108
|
-
generateId: (_a3 = options.generateId) != null ? _a3 :
|
|
7121
|
+
generateId: (_a3 = options.generateId) != null ? _a3 : import_provider_utils26.generateId,
|
|
7109
7122
|
fetch: options.fetch
|
|
7110
7123
|
}
|
|
7111
7124
|
);
|