@ai-sdk/amazon-bedrock 4.0.177 → 4.0.178
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 +8 -0
- package/dist/anthropic/index.js +1 -1
- package/dist/anthropic/index.mjs +1 -1
- package/dist/index.js +87 -94
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +12 -22
- package/dist/index.mjs.map +1 -1
- package/dist/mantle/index.js +1 -1
- package/dist/mantle/index.mjs +1 -1
- package/package.json +2 -2
- package/src/bedrock-chat-language-model.ts +5 -5
- package/src/bedrock-embedding-model.ts +2 -6
- package/src/bedrock-error.ts +7 -0
- package/src/bedrock-image-model.ts +2 -6
- package/src/reranking/bedrock-reranking-model.ts +2 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @ai-sdk/amazon-bedrock
|
|
2
2
|
|
|
3
|
+
## 4.0.178
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 96b6d3f: fix(amazon-bedrock): preserve API error messages when the error type is omitted
|
|
8
|
+
- Updated dependencies [e53d917]
|
|
9
|
+
- @ai-sdk/openai@3.0.114
|
|
10
|
+
|
|
3
11
|
## 4.0.177
|
|
4
12
|
|
|
5
13
|
### Patch Changes
|
package/dist/anthropic/index.js
CHANGED
|
@@ -35,7 +35,7 @@ var import_provider_utils = require("@ai-sdk/provider-utils");
|
|
|
35
35
|
var import_aws4fetch = require("aws4fetch");
|
|
36
36
|
|
|
37
37
|
// src/version.ts
|
|
38
|
-
var VERSION = true ? "4.0.
|
|
38
|
+
var VERSION = true ? "4.0.178" : "0.0.0-test";
|
|
39
39
|
|
|
40
40
|
// src/bedrock-sigv4-fetch.ts
|
|
41
41
|
function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|
package/dist/anthropic/index.mjs
CHANGED
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
import { AwsV4Signer } from "aws4fetch";
|
|
24
24
|
|
|
25
25
|
// src/version.ts
|
|
26
|
-
var VERSION = true ? "4.0.
|
|
26
|
+
var VERSION = true ? "4.0.178" : "0.0.0-test";
|
|
27
27
|
|
|
28
28
|
// src/bedrock-sigv4-fetch.ts
|
|
29
29
|
function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|
package/dist/index.js
CHANGED
|
@@ -28,10 +28,10 @@ module.exports = __toCommonJS(index_exports);
|
|
|
28
28
|
|
|
29
29
|
// src/bedrock-provider.ts
|
|
30
30
|
var import_internal3 = require("@ai-sdk/anthropic/internal");
|
|
31
|
-
var
|
|
31
|
+
var import_provider_utils13 = require("@ai-sdk/provider-utils");
|
|
32
32
|
|
|
33
33
|
// src/bedrock-chat-language-model.ts
|
|
34
|
-
var
|
|
34
|
+
var import_provider_utils5 = require("@ai-sdk/provider-utils");
|
|
35
35
|
var import_internal2 = require("@ai-sdk/anthropic/internal");
|
|
36
36
|
var import_v44 = require("zod/v4");
|
|
37
37
|
|
|
@@ -155,15 +155,20 @@ function matchesModel(modelId, models) {
|
|
|
155
155
|
}
|
|
156
156
|
|
|
157
157
|
// src/bedrock-error.ts
|
|
158
|
+
var import_provider_utils = require("@ai-sdk/provider-utils");
|
|
158
159
|
var import_v42 = require("zod/v4");
|
|
159
160
|
var BedrockErrorSchema = import_v42.z.object({
|
|
160
161
|
message: import_v42.z.string(),
|
|
161
162
|
type: import_v42.z.string().nullish()
|
|
162
163
|
});
|
|
164
|
+
var bedrockFailedResponseHandler = (0, import_provider_utils.createJsonErrorResponseHandler)({
|
|
165
|
+
errorSchema: BedrockErrorSchema,
|
|
166
|
+
errorToMessage: (error) => error.type == null ? error.message : `${error.type}: ${error.message}`
|
|
167
|
+
});
|
|
163
168
|
|
|
164
169
|
// src/bedrock-event-stream-response-handler.ts
|
|
165
170
|
var import_provider = require("@ai-sdk/provider");
|
|
166
|
-
var
|
|
171
|
+
var import_provider_utils2 = require("@ai-sdk/provider-utils");
|
|
167
172
|
|
|
168
173
|
// src/bedrock-event-stream-decoder.ts
|
|
169
174
|
var import_eventstream_codec = require("@smithy/eventstream-codec");
|
|
@@ -215,7 +220,7 @@ function createBedrockEventStreamDecoder(body, processEvent) {
|
|
|
215
220
|
|
|
216
221
|
// src/bedrock-event-stream-response-handler.ts
|
|
217
222
|
var createBedrockEventStreamResponseHandler = (chunkSchema) => async ({ response }) => {
|
|
218
|
-
const responseHeaders = (0,
|
|
223
|
+
const responseHeaders = (0, import_provider_utils2.extractResponseHeaders)(response);
|
|
219
224
|
if (response.body == null) {
|
|
220
225
|
throw new import_provider.EmptyResponseBodyError({});
|
|
221
226
|
}
|
|
@@ -228,7 +233,7 @@ var createBedrockEventStreamResponseHandler = (chunkSchema) => async ({ response
|
|
|
228
233
|
if (payloadType == null) {
|
|
229
234
|
return;
|
|
230
235
|
}
|
|
231
|
-
const parsedDataResult = await (0,
|
|
236
|
+
const parsedDataResult = await (0, import_provider_utils2.safeParseJSON)({ text: event.data });
|
|
232
237
|
if (!parsedDataResult.success) {
|
|
233
238
|
controller.enqueue(parsedDataResult);
|
|
234
239
|
return;
|
|
@@ -237,7 +242,7 @@ var createBedrockEventStreamResponseHandler = (chunkSchema) => async ({ response
|
|
|
237
242
|
const wrappedData = {
|
|
238
243
|
[payloadType]: parsedDataResult.value
|
|
239
244
|
};
|
|
240
|
-
const validatedWrappedData = await (0,
|
|
245
|
+
const validatedWrappedData = await (0, import_provider_utils2.safeValidateTypes)({
|
|
241
246
|
value: wrappedData,
|
|
242
247
|
schema: chunkSchema
|
|
243
248
|
});
|
|
@@ -257,7 +262,7 @@ var createBedrockEventStreamResponseHandler = (chunkSchema) => async ({ response
|
|
|
257
262
|
|
|
258
263
|
// src/bedrock-prepare-tools.ts
|
|
259
264
|
var import_provider2 = require("@ai-sdk/provider");
|
|
260
|
-
var
|
|
265
|
+
var import_provider_utils3 = require("@ai-sdk/provider-utils");
|
|
261
266
|
var import_internal = require("@ai-sdk/anthropic/internal");
|
|
262
267
|
async function prepareTools({
|
|
263
268
|
tools,
|
|
@@ -337,7 +342,7 @@ async function prepareTools({
|
|
|
337
342
|
toolSpec: {
|
|
338
343
|
name: tool.name,
|
|
339
344
|
inputSchema: {
|
|
340
|
-
json: await (0,
|
|
345
|
+
json: await (0, import_provider_utils3.asSchema)(fullToolDefinition.inputSchema).jsonSchema
|
|
341
346
|
}
|
|
342
347
|
}
|
|
343
348
|
});
|
|
@@ -455,7 +460,7 @@ function convertBedrockUsage(usage) {
|
|
|
455
460
|
|
|
456
461
|
// src/convert-to-bedrock-chat-messages.ts
|
|
457
462
|
var import_provider3 = require("@ai-sdk/provider");
|
|
458
|
-
var
|
|
463
|
+
var import_provider_utils4 = require("@ai-sdk/provider-utils");
|
|
459
464
|
|
|
460
465
|
// src/bedrock-reasoning-metadata.ts
|
|
461
466
|
var import_v43 = require("zod/v4");
|
|
@@ -509,7 +514,7 @@ function getBedrockImageSource({
|
|
|
509
514
|
}
|
|
510
515
|
};
|
|
511
516
|
}
|
|
512
|
-
return { bytes: (0,
|
|
517
|
+
return { bytes: (0, import_provider_utils4.convertToBase64)(data) };
|
|
513
518
|
}
|
|
514
519
|
function getBedrockImageFormatFromUrl(url) {
|
|
515
520
|
var _a;
|
|
@@ -520,7 +525,7 @@ function getBedrockImageFormatFromUrl(url) {
|
|
|
520
525
|
}
|
|
521
526
|
async function shouldEnableCitations(providerMetadata) {
|
|
522
527
|
var _a, _b;
|
|
523
|
-
const bedrockOptions = await (0,
|
|
528
|
+
const bedrockOptions = await (0, import_provider_utils4.parseProviderOptions)({
|
|
524
529
|
provider: "bedrock",
|
|
525
530
|
providerOptions: providerMetadata,
|
|
526
531
|
schema: bedrockFilePartProviderOptions
|
|
@@ -598,8 +603,8 @@ async function convertToBedrockChatMessages(prompt, isMistral = false) {
|
|
|
598
603
|
bedrockContent.push({
|
|
599
604
|
document: {
|
|
600
605
|
format: getBedrockDocumentFormat(part.mediaType),
|
|
601
|
-
name: part.filename ? (0,
|
|
602
|
-
source: { bytes: (0,
|
|
606
|
+
name: part.filename ? (0, import_provider_utils4.stripFileExtension)(part.filename) : generateDocumentName(),
|
|
607
|
+
source: { bytes: (0, import_provider_utils4.convertToBase64)(part.data) },
|
|
603
608
|
...enableCitations && {
|
|
604
609
|
citations: { enabled: true }
|
|
605
610
|
}
|
|
@@ -634,7 +639,7 @@ async function convertToBedrockChatMessages(prompt, isMistral = false) {
|
|
|
634
639
|
contentPart.mediaType
|
|
635
640
|
),
|
|
636
641
|
source: {
|
|
637
|
-
bytes: (0,
|
|
642
|
+
bytes: (0, import_provider_utils4.convertToBase64)(contentPart.data)
|
|
638
643
|
}
|
|
639
644
|
}
|
|
640
645
|
};
|
|
@@ -661,9 +666,9 @@ async function convertToBedrockChatMessages(prompt, isMistral = false) {
|
|
|
661
666
|
format: getBedrockDocumentFormat(
|
|
662
667
|
contentPart.mediaType
|
|
663
668
|
),
|
|
664
|
-
name: "filename" in contentPart && contentPart.filename ? (0,
|
|
669
|
+
name: "filename" in contentPart && contentPart.filename ? (0, import_provider_utils4.stripFileExtension)(contentPart.filename) : generateDocumentName(),
|
|
665
670
|
source: {
|
|
666
|
-
bytes: (0,
|
|
671
|
+
bytes: (0, import_provider_utils4.convertToBase64)(contentPart.data)
|
|
667
672
|
},
|
|
668
673
|
...enableCitations && {
|
|
669
674
|
citations: { enabled: true }
|
|
@@ -677,7 +682,7 @@ async function convertToBedrockChatMessages(prompt, isMistral = false) {
|
|
|
677
682
|
contentPart.mediaType
|
|
678
683
|
),
|
|
679
684
|
source: {
|
|
680
|
-
bytes: (0,
|
|
685
|
+
bytes: (0, import_provider_utils4.convertToBase64)(contentPart.data)
|
|
681
686
|
}
|
|
682
687
|
}
|
|
683
688
|
};
|
|
@@ -745,7 +750,7 @@ async function convertToBedrockChatMessages(prompt, isMistral = false) {
|
|
|
745
750
|
if (part.type !== "reasoning") {
|
|
746
751
|
return void 0;
|
|
747
752
|
}
|
|
748
|
-
const metadata = await (0,
|
|
753
|
+
const metadata = await (0, import_provider_utils4.parseProviderOptions)({
|
|
749
754
|
provider: "bedrock",
|
|
750
755
|
providerOptions: part.providerOptions,
|
|
751
756
|
schema: bedrockReasoningMetadataSchema
|
|
@@ -973,12 +978,12 @@ var BedrockChatLanguageModel = class {
|
|
|
973
978
|
providerOptions
|
|
974
979
|
}) {
|
|
975
980
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t;
|
|
976
|
-
const bedrockOptions = (_a = await (0,
|
|
981
|
+
const bedrockOptions = (_a = await (0, import_provider_utils5.parseProviderOptions)({
|
|
977
982
|
provider: "bedrock",
|
|
978
983
|
providerOptions,
|
|
979
984
|
schema: amazonBedrockLanguageModelOptions
|
|
980
985
|
})) != null ? _a : {};
|
|
981
|
-
const anthropicOptions = await (0,
|
|
986
|
+
const anthropicOptions = await (0, import_provider_utils5.parseProviderOptions)({
|
|
982
987
|
provider: "anthropic",
|
|
983
988
|
providerOptions,
|
|
984
989
|
schema: anthropicProviderOptions
|
|
@@ -1228,7 +1233,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1228
1233
|
}
|
|
1229
1234
|
}
|
|
1230
1235
|
if (useJsonInstructionForStructuredOutput) {
|
|
1231
|
-
filteredPrompt = (0,
|
|
1236
|
+
filteredPrompt = (0, import_provider_utils5.injectJsonInstructionIntoMessages)({
|
|
1232
1237
|
messages: filteredPrompt,
|
|
1233
1238
|
schema: responseFormat.schema,
|
|
1234
1239
|
schemaSuffix: "You MUST answer with only a JSON object that matches the JSON schema above. Do not wrap it in markdown fences or include any other text."
|
|
@@ -1275,7 +1280,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1275
1280
|
async getHeaders({
|
|
1276
1281
|
headers
|
|
1277
1282
|
}) {
|
|
1278
|
-
return (0,
|
|
1283
|
+
return (0, import_provider_utils5.combineHeaders)(await (0, import_provider_utils5.resolve)(this.config.headers), headers);
|
|
1279
1284
|
}
|
|
1280
1285
|
async doGenerate(options) {
|
|
1281
1286
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r;
|
|
@@ -1286,18 +1291,18 @@ var BedrockChatLanguageModel = class {
|
|
|
1286
1291
|
usesJsonResponseTool
|
|
1287
1292
|
} = await this.getArgs(options);
|
|
1288
1293
|
const url = `${this.getUrl(this.modelId)}/converse`;
|
|
1289
|
-
const { value: response, responseHeaders } = await (0,
|
|
1294
|
+
const { value: response, responseHeaders } = await (0, import_provider_utils5.postJsonToApi)({
|
|
1290
1295
|
url,
|
|
1291
1296
|
headers: await this.getHeaders({ headers: options.headers }),
|
|
1292
1297
|
body: args,
|
|
1293
|
-
failedResponseHandler: (0,
|
|
1298
|
+
failedResponseHandler: (0, import_provider_utils5.createJsonErrorResponseHandler)({
|
|
1294
1299
|
errorSchema: BedrockErrorSchema,
|
|
1295
1300
|
errorToMessage: (error) => {
|
|
1296
1301
|
var _a2;
|
|
1297
1302
|
return `${(_a2 = error.message) != null ? _a2 : "Unknown error"}`;
|
|
1298
1303
|
}
|
|
1299
1304
|
}),
|
|
1300
|
-
successfulResponseHandler: (0,
|
|
1305
|
+
successfulResponseHandler: (0, import_provider_utils5.createJsonResponseHandler)(
|
|
1301
1306
|
BedrockResponseSchema
|
|
1302
1307
|
),
|
|
1303
1308
|
abortSignal: options.abortSignal,
|
|
@@ -1426,14 +1431,11 @@ var BedrockChatLanguageModel = class {
|
|
|
1426
1431
|
const modelId = this.modelId;
|
|
1427
1432
|
const isMistral = isMistralModel(modelId);
|
|
1428
1433
|
const url = `${this.getUrl(modelId)}/converse-stream`;
|
|
1429
|
-
const { value: response, responseHeaders } = await (0,
|
|
1434
|
+
const { value: response, responseHeaders } = await (0, import_provider_utils5.postJsonToApi)({
|
|
1430
1435
|
url,
|
|
1431
1436
|
headers: await this.getHeaders({ headers: options.headers }),
|
|
1432
1437
|
body: args,
|
|
1433
|
-
failedResponseHandler:
|
|
1434
|
-
errorSchema: BedrockErrorSchema,
|
|
1435
|
-
errorToMessage: (error) => `${error.type}: ${error.message}`
|
|
1436
|
-
}),
|
|
1438
|
+
failedResponseHandler: bedrockFailedResponseHandler,
|
|
1437
1439
|
successfulResponseHandler: createBedrockEventStreamResponseHandler(BedrockStreamSchema),
|
|
1438
1440
|
abortSignal: options.abortSignal,
|
|
1439
1441
|
fetch: this.config.fetch
|
|
@@ -1952,7 +1954,7 @@ var BedrockStreamSchema = import_v44.z.object({
|
|
|
1952
1954
|
|
|
1953
1955
|
// src/bedrock-embedding-model.ts
|
|
1954
1956
|
var import_provider4 = require("@ai-sdk/provider");
|
|
1955
|
-
var
|
|
1957
|
+
var import_provider_utils6 = require("@ai-sdk/provider-utils");
|
|
1956
1958
|
|
|
1957
1959
|
// src/bedrock-embedding-options.ts
|
|
1958
1960
|
var import_v45 = require("zod/v4");
|
|
@@ -2042,7 +2044,7 @@ var BedrockEmbeddingModel = class {
|
|
|
2042
2044
|
values
|
|
2043
2045
|
});
|
|
2044
2046
|
}
|
|
2045
|
-
const bedrockOptions = (_a = await (0,
|
|
2047
|
+
const bedrockOptions = (_a = await (0, import_provider_utils6.parseProviderOptions)({
|
|
2046
2048
|
provider: "bedrock",
|
|
2047
2049
|
providerOptions,
|
|
2048
2050
|
schema: amazonBedrockEmbeddingModelOptionsSchema
|
|
@@ -2071,17 +2073,14 @@ var BedrockEmbeddingModel = class {
|
|
|
2071
2073
|
normalize: bedrockOptions.normalize
|
|
2072
2074
|
};
|
|
2073
2075
|
const url = this.getUrl(this.modelId);
|
|
2074
|
-
const { value: response, responseHeaders } = await (0,
|
|
2076
|
+
const { value: response, responseHeaders } = await (0, import_provider_utils6.postJsonToApi)({
|
|
2075
2077
|
url,
|
|
2076
|
-
headers: await (0,
|
|
2077
|
-
(0,
|
|
2078
|
+
headers: await (0, import_provider_utils6.resolve)(
|
|
2079
|
+
(0, import_provider_utils6.combineHeaders)(await (0, import_provider_utils6.resolve)(this.config.headers), headers)
|
|
2078
2080
|
),
|
|
2079
2081
|
body: args,
|
|
2080
|
-
failedResponseHandler:
|
|
2081
|
-
|
|
2082
|
-
errorToMessage: (error) => `${error.type}: ${error.message}`
|
|
2083
|
-
}),
|
|
2084
|
-
successfulResponseHandler: (0, import_provider_utils5.createJsonResponseHandler)(
|
|
2082
|
+
failedResponseHandler: bedrockFailedResponseHandler,
|
|
2083
|
+
successfulResponseHandler: (0, import_provider_utils6.createJsonResponseHandler)(
|
|
2085
2084
|
BedrockEmbeddingResponseSchema
|
|
2086
2085
|
),
|
|
2087
2086
|
fetch: this.config.fetch,
|
|
@@ -2149,7 +2148,7 @@ var BedrockEmbeddingResponseSchema = import_v46.z.union([
|
|
|
2149
2148
|
]);
|
|
2150
2149
|
|
|
2151
2150
|
// src/bedrock-image-model.ts
|
|
2152
|
-
var
|
|
2151
|
+
var import_provider_utils7 = require("@ai-sdk/provider-utils");
|
|
2153
2152
|
|
|
2154
2153
|
// src/bedrock-image-settings.ts
|
|
2155
2154
|
var modelMaxImagesPerCall = {
|
|
@@ -2293,17 +2292,14 @@ var BedrockImageModel = class {
|
|
|
2293
2292
|
});
|
|
2294
2293
|
}
|
|
2295
2294
|
const currentDate = (_o = (_n = (_m = this.config._internal) == null ? void 0 : _m.currentDate) == null ? void 0 : _n.call(_m)) != null ? _o : /* @__PURE__ */ new Date();
|
|
2296
|
-
const { value: response, responseHeaders } = await (0,
|
|
2295
|
+
const { value: response, responseHeaders } = await (0, import_provider_utils7.postJsonToApi)({
|
|
2297
2296
|
url: this.getUrl(this.modelId),
|
|
2298
|
-
headers: await (0,
|
|
2299
|
-
(0,
|
|
2297
|
+
headers: await (0, import_provider_utils7.resolve)(
|
|
2298
|
+
(0, import_provider_utils7.combineHeaders)(await (0, import_provider_utils7.resolve)(this.config.headers), headers)
|
|
2300
2299
|
),
|
|
2301
2300
|
body: args,
|
|
2302
|
-
failedResponseHandler:
|
|
2303
|
-
|
|
2304
|
-
errorToMessage: (error) => `${error.type}: ${error.message}`
|
|
2305
|
-
}),
|
|
2306
|
-
successfulResponseHandler: (0, import_provider_utils6.createJsonResponseHandler)(
|
|
2301
|
+
failedResponseHandler: bedrockFailedResponseHandler,
|
|
2302
|
+
successfulResponseHandler: (0, import_provider_utils7.createJsonResponseHandler)(
|
|
2307
2303
|
bedrockImageResponseSchema
|
|
2308
2304
|
),
|
|
2309
2305
|
abortSignal,
|
|
@@ -2339,7 +2335,7 @@ function getBase64Data(file) {
|
|
|
2339
2335
|
);
|
|
2340
2336
|
}
|
|
2341
2337
|
if (file.data instanceof Uint8Array) {
|
|
2342
|
-
return (0,
|
|
2338
|
+
return (0, import_provider_utils7.convertUint8ArrayToBase64)(file.data);
|
|
2343
2339
|
}
|
|
2344
2340
|
return file.data;
|
|
2345
2341
|
}
|
|
@@ -2356,11 +2352,11 @@ var bedrockImageResponseSchema = import_v47.z.object({
|
|
|
2356
2352
|
});
|
|
2357
2353
|
|
|
2358
2354
|
// src/bedrock-sigv4-fetch.ts
|
|
2359
|
-
var
|
|
2355
|
+
var import_provider_utils8 = require("@ai-sdk/provider-utils");
|
|
2360
2356
|
var import_aws4fetch = require("aws4fetch");
|
|
2361
2357
|
|
|
2362
2358
|
// src/version.ts
|
|
2363
|
-
var VERSION = true ? "4.0.
|
|
2359
|
+
var VERSION = true ? "4.0.178" : "0.0.0-test";
|
|
2364
2360
|
|
|
2365
2361
|
// src/bedrock-sigv4-fetch.ts
|
|
2366
2362
|
function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|
|
@@ -2368,14 +2364,14 @@ function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|
|
|
2368
2364
|
var _a, _b;
|
|
2369
2365
|
const effectiveFetch = fetch != null ? fetch : globalThis.fetch;
|
|
2370
2366
|
const request = input instanceof Request ? input : void 0;
|
|
2371
|
-
const originalHeaders = (0,
|
|
2372
|
-
(0,
|
|
2373
|
-
(0,
|
|
2367
|
+
const originalHeaders = (0, import_provider_utils8.combineHeaders)(
|
|
2368
|
+
(0, import_provider_utils8.normalizeHeaders)(request == null ? void 0 : request.headers),
|
|
2369
|
+
(0, import_provider_utils8.normalizeHeaders)(init == null ? void 0 : init.headers)
|
|
2374
2370
|
);
|
|
2375
|
-
const headersWithUserAgent = (0,
|
|
2371
|
+
const headersWithUserAgent = (0, import_provider_utils8.withUserAgentSuffix)(
|
|
2376
2372
|
originalHeaders,
|
|
2377
2373
|
`ai-sdk/amazon-bedrock/${VERSION}`,
|
|
2378
|
-
(0,
|
|
2374
|
+
(0, import_provider_utils8.getRuntimeEnvironmentUserAgent)()
|
|
2379
2375
|
);
|
|
2380
2376
|
let effectiveBody = (_a = init == null ? void 0 : init.body) != null ? _a : void 0;
|
|
2381
2377
|
if (effectiveBody === void 0 && request && request.body !== null) {
|
|
@@ -2406,8 +2402,8 @@ function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|
|
|
2406
2402
|
service
|
|
2407
2403
|
});
|
|
2408
2404
|
const signingResult = await signer.sign();
|
|
2409
|
-
const signedHeaders = (0,
|
|
2410
|
-
const combinedHeaders = (0,
|
|
2405
|
+
const signedHeaders = (0, import_provider_utils8.normalizeHeaders)(signingResult.headers);
|
|
2406
|
+
const combinedHeaders = (0, import_provider_utils8.combineHeaders)(headersWithUserAgent, signedHeaders);
|
|
2411
2407
|
return effectiveFetch(input, {
|
|
2412
2408
|
...init,
|
|
2413
2409
|
body,
|
|
@@ -2429,13 +2425,13 @@ function prepareBodyString(body) {
|
|
|
2429
2425
|
function createApiKeyFetchFunction(apiKey, fetch) {
|
|
2430
2426
|
return async (input, init) => {
|
|
2431
2427
|
const effectiveFetch = fetch != null ? fetch : globalThis.fetch;
|
|
2432
|
-
const originalHeaders = (0,
|
|
2433
|
-
const headersWithUserAgent = (0,
|
|
2428
|
+
const originalHeaders = (0, import_provider_utils8.normalizeHeaders)(init == null ? void 0 : init.headers);
|
|
2429
|
+
const headersWithUserAgent = (0, import_provider_utils8.withUserAgentSuffix)(
|
|
2434
2430
|
originalHeaders,
|
|
2435
2431
|
`ai-sdk/amazon-bedrock/${VERSION}`,
|
|
2436
|
-
(0,
|
|
2432
|
+
(0, import_provider_utils8.getRuntimeEnvironmentUserAgent)()
|
|
2437
2433
|
);
|
|
2438
|
-
const finalHeaders = (0,
|
|
2434
|
+
const finalHeaders = (0, import_provider_utils8.combineHeaders)(headersWithUserAgent, {
|
|
2439
2435
|
Authorization: `Bearer ${apiKey}`
|
|
2440
2436
|
});
|
|
2441
2437
|
return effectiveFetch(input, {
|
|
@@ -2446,13 +2442,13 @@ function createApiKeyFetchFunction(apiKey, fetch) {
|
|
|
2446
2442
|
}
|
|
2447
2443
|
|
|
2448
2444
|
// src/reranking/bedrock-reranking-model.ts
|
|
2449
|
-
var
|
|
2445
|
+
var import_provider_utils11 = require("@ai-sdk/provider-utils");
|
|
2450
2446
|
|
|
2451
2447
|
// src/reranking/bedrock-reranking-api.ts
|
|
2452
|
-
var
|
|
2448
|
+
var import_provider_utils9 = require("@ai-sdk/provider-utils");
|
|
2453
2449
|
var import_v48 = require("zod/v4");
|
|
2454
|
-
var bedrockRerankingResponseSchema = (0,
|
|
2455
|
-
() => (0,
|
|
2450
|
+
var bedrockRerankingResponseSchema = (0, import_provider_utils9.lazySchema)(
|
|
2451
|
+
() => (0, import_provider_utils9.zodSchema)(
|
|
2456
2452
|
import_v48.z.object({
|
|
2457
2453
|
results: import_v48.z.array(
|
|
2458
2454
|
import_v48.z.object({
|
|
@@ -2466,10 +2462,10 @@ var bedrockRerankingResponseSchema = (0, import_provider_utils8.lazySchema)(
|
|
|
2466
2462
|
);
|
|
2467
2463
|
|
|
2468
2464
|
// src/reranking/bedrock-reranking-options.ts
|
|
2469
|
-
var
|
|
2465
|
+
var import_provider_utils10 = require("@ai-sdk/provider-utils");
|
|
2470
2466
|
var import_v49 = require("zod/v4");
|
|
2471
|
-
var amazonBedrockRerankingModelOptionsSchema = (0,
|
|
2472
|
-
() => (0,
|
|
2467
|
+
var amazonBedrockRerankingModelOptionsSchema = (0, import_provider_utils10.lazySchema)(
|
|
2468
|
+
() => (0, import_provider_utils10.zodSchema)(
|
|
2473
2469
|
import_v49.z.object({
|
|
2474
2470
|
/**
|
|
2475
2471
|
* If the total number of results was greater than could fit in a response, a token is returned in the nextToken field. You can enter that token in this field to return the next batch of results.
|
|
@@ -2499,7 +2495,7 @@ var BedrockRerankingModel = class {
|
|
|
2499
2495
|
abortSignal,
|
|
2500
2496
|
providerOptions
|
|
2501
2497
|
}) {
|
|
2502
|
-
const bedrockOptions = await (0,
|
|
2498
|
+
const bedrockOptions = await (0, import_provider_utils11.parseProviderOptions)({
|
|
2503
2499
|
provider: "bedrock",
|
|
2504
2500
|
providerOptions,
|
|
2505
2501
|
schema: amazonBedrockRerankingModelOptionsSchema
|
|
@@ -2508,10 +2504,10 @@ var BedrockRerankingModel = class {
|
|
|
2508
2504
|
value: response,
|
|
2509
2505
|
responseHeaders,
|
|
2510
2506
|
rawValue
|
|
2511
|
-
} = await (0,
|
|
2507
|
+
} = await (0, import_provider_utils11.postJsonToApi)({
|
|
2512
2508
|
url: `${this.config.baseUrl()}/rerank`,
|
|
2513
|
-
headers: await (0,
|
|
2514
|
-
(0,
|
|
2509
|
+
headers: await (0, import_provider_utils11.resolve)(
|
|
2510
|
+
(0, import_provider_utils11.combineHeaders)(await (0, import_provider_utils11.resolve)(this.config.headers), headers)
|
|
2515
2511
|
),
|
|
2516
2512
|
body: {
|
|
2517
2513
|
nextToken: bedrockOptions == null ? void 0 : bedrockOptions.nextToken,
|
|
@@ -2542,11 +2538,8 @@ var BedrockRerankingModel = class {
|
|
|
2542
2538
|
}
|
|
2543
2539
|
}))
|
|
2544
2540
|
},
|
|
2545
|
-
failedResponseHandler:
|
|
2546
|
-
|
|
2547
|
-
errorToMessage: (error) => `${error.type}: ${error.message}`
|
|
2548
|
-
}),
|
|
2549
|
-
successfulResponseHandler: (0, import_provider_utils10.createJsonResponseHandler)(
|
|
2541
|
+
failedResponseHandler: bedrockFailedResponseHandler,
|
|
2542
|
+
successfulResponseHandler: (0, import_provider_utils11.createJsonResponseHandler)(
|
|
2550
2543
|
bedrockRerankingResponseSchema
|
|
2551
2544
|
),
|
|
2552
2545
|
fetch: this.config.fetch,
|
|
@@ -2563,7 +2556,7 @@ var BedrockRerankingModel = class {
|
|
|
2563
2556
|
};
|
|
2564
2557
|
|
|
2565
2558
|
// src/resolve-bedrock-base-url.ts
|
|
2566
|
-
var
|
|
2559
|
+
var import_provider_utils12 = require("@ai-sdk/provider-utils");
|
|
2567
2560
|
var AWS_PARTITION_DNS_SUFFIXES = [
|
|
2568
2561
|
{ regionPrefix: "cn-", dnsSuffix: "amazonaws.com.cn" },
|
|
2569
2562
|
{ regionPrefix: "us-iso-", dnsSuffix: "c2s.ic.gov" },
|
|
@@ -2579,33 +2572,33 @@ function resolveBedrockBaseURL({
|
|
|
2579
2572
|
serviceEndpointUrlEnvironmentVariableName
|
|
2580
2573
|
}) {
|
|
2581
2574
|
var _a, _b, _c, _d, _e;
|
|
2582
|
-
const resolvedBaseURL = (_a = baseURL != null ? baseURL : (0,
|
|
2575
|
+
const resolvedBaseURL = (_a = baseURL != null ? baseURL : (0, import_provider_utils12.loadOptionalSetting)({
|
|
2583
2576
|
settingValue: void 0,
|
|
2584
2577
|
environmentVariableName: serviceEndpointUrlEnvironmentVariableName
|
|
2585
|
-
})) != null ? _a : (0,
|
|
2578
|
+
})) != null ? _a : (0, import_provider_utils12.loadOptionalSetting)({
|
|
2586
2579
|
settingValue: void 0,
|
|
2587
2580
|
environmentVariableName: "AWS_ENDPOINT_URL"
|
|
2588
2581
|
});
|
|
2589
2582
|
if (resolvedBaseURL != null) {
|
|
2590
|
-
return (_b = (0,
|
|
2583
|
+
return (_b = (0, import_provider_utils12.withoutTrailingSlash)(resolvedBaseURL)) != null ? _b : resolvedBaseURL;
|
|
2591
2584
|
}
|
|
2592
2585
|
const region = getRegion();
|
|
2593
2586
|
const dnsSuffix = (_d = (_c = AWS_PARTITION_DNS_SUFFIXES.find(
|
|
2594
2587
|
({ regionPrefix }) => region.startsWith(regionPrefix)
|
|
2595
2588
|
)) == null ? void 0 : _c.dnsSuffix) != null ? _d : "amazonaws.com";
|
|
2596
2589
|
const generatedBaseURL = `https://${service}.${region}.${dnsSuffix}`;
|
|
2597
|
-
return (_e = (0,
|
|
2590
|
+
return (_e = (0, import_provider_utils12.withoutTrailingSlash)(generatedBaseURL)) != null ? _e : generatedBaseURL;
|
|
2598
2591
|
}
|
|
2599
2592
|
|
|
2600
2593
|
// src/bedrock-provider.ts
|
|
2601
2594
|
function createAmazonBedrock(options = {}) {
|
|
2602
|
-
const rawApiKey = (0,
|
|
2595
|
+
const rawApiKey = (0, import_provider_utils13.loadOptionalSetting)({
|
|
2603
2596
|
settingValue: options.apiKey,
|
|
2604
2597
|
environmentVariableName: "AWS_BEARER_TOKEN_BEDROCK"
|
|
2605
2598
|
});
|
|
2606
2599
|
const apiKey = rawApiKey && rawApiKey.trim().length > 0 ? rawApiKey.trim() : void 0;
|
|
2607
2600
|
const fetchFunction = apiKey ? createApiKeyFetchFunction(apiKey, options.fetch) : createSigV4FetchFunction(async () => {
|
|
2608
|
-
const region = (0,
|
|
2601
|
+
const region = (0, import_provider_utils13.loadSetting)({
|
|
2609
2602
|
settingValue: options.region,
|
|
2610
2603
|
settingName: "region",
|
|
2611
2604
|
environmentVariableName: "AWS_REGION",
|
|
@@ -2627,19 +2620,19 @@ function createAmazonBedrock(options = {}) {
|
|
|
2627
2620
|
try {
|
|
2628
2621
|
return {
|
|
2629
2622
|
region,
|
|
2630
|
-
accessKeyId: (0,
|
|
2623
|
+
accessKeyId: (0, import_provider_utils13.loadSetting)({
|
|
2631
2624
|
settingValue: options.accessKeyId,
|
|
2632
2625
|
settingName: "accessKeyId",
|
|
2633
2626
|
environmentVariableName: "AWS_ACCESS_KEY_ID",
|
|
2634
2627
|
description: "AWS access key ID"
|
|
2635
2628
|
}),
|
|
2636
|
-
secretAccessKey: (0,
|
|
2629
|
+
secretAccessKey: (0, import_provider_utils13.loadSetting)({
|
|
2637
2630
|
settingValue: options.secretAccessKey,
|
|
2638
2631
|
settingName: "secretAccessKey",
|
|
2639
2632
|
environmentVariableName: "AWS_SECRET_ACCESS_KEY",
|
|
2640
2633
|
description: "AWS secret access key"
|
|
2641
2634
|
}),
|
|
2642
|
-
sessionToken: options.accessKeyId != null && options.secretAccessKey != null ? options.sessionToken : (0,
|
|
2635
|
+
sessionToken: options.accessKeyId != null && options.secretAccessKey != null ? options.sessionToken : (0, import_provider_utils13.loadOptionalSetting)({
|
|
2643
2636
|
settingValue: options.sessionToken,
|
|
2644
2637
|
environmentVariableName: "AWS_SESSION_TOKEN"
|
|
2645
2638
|
})
|
|
@@ -2668,11 +2661,11 @@ Original error: ${errorMessage}`
|
|
|
2668
2661
|
const getHeaders = () => {
|
|
2669
2662
|
var _a;
|
|
2670
2663
|
const baseHeaders = (_a = options.headers) != null ? _a : {};
|
|
2671
|
-
return (0,
|
|
2664
|
+
return (0, import_provider_utils13.withUserAgentSuffix)(baseHeaders, `ai-sdk/amazon-bedrock/${VERSION}`);
|
|
2672
2665
|
};
|
|
2673
2666
|
const getBedrockRuntimeBaseUrl = () => resolveBedrockBaseURL({
|
|
2674
2667
|
baseURL: options.baseURL,
|
|
2675
|
-
getRegion: () => (0,
|
|
2668
|
+
getRegion: () => (0, import_provider_utils13.loadSetting)({
|
|
2676
2669
|
settingValue: options.region,
|
|
2677
2670
|
settingName: "region",
|
|
2678
2671
|
environmentVariableName: "AWS_REGION",
|
|
@@ -2683,7 +2676,7 @@ Original error: ${errorMessage}`
|
|
|
2683
2676
|
});
|
|
2684
2677
|
const getBedrockAgentRuntimeBaseUrl = () => resolveBedrockBaseURL({
|
|
2685
2678
|
baseURL: options.baseURL,
|
|
2686
|
-
getRegion: () => (0,
|
|
2679
|
+
getRegion: () => (0, import_provider_utils13.loadSetting)({
|
|
2687
2680
|
settingValue: options.region,
|
|
2688
2681
|
settingName: "region",
|
|
2689
2682
|
environmentVariableName: "AWS_REGION",
|
|
@@ -2696,7 +2689,7 @@ Original error: ${errorMessage}`
|
|
|
2696
2689
|
baseUrl: getBedrockRuntimeBaseUrl,
|
|
2697
2690
|
headers: getHeaders,
|
|
2698
2691
|
fetch: fetchFunction,
|
|
2699
|
-
generateId:
|
|
2692
|
+
generateId: import_provider_utils13.generateId,
|
|
2700
2693
|
modelFamily: settings.modelFamily
|
|
2701
2694
|
});
|
|
2702
2695
|
const provider = function(modelId, settings) {
|
|
@@ -2720,7 +2713,7 @@ Original error: ${errorMessage}`
|
|
|
2720
2713
|
});
|
|
2721
2714
|
const createRerankingModel = (modelId) => new BedrockRerankingModel(modelId, {
|
|
2722
2715
|
baseUrl: getBedrockAgentRuntimeBaseUrl,
|
|
2723
|
-
region: (0,
|
|
2716
|
+
region: (0, import_provider_utils13.loadSetting)({
|
|
2724
2717
|
settingValue: options.region,
|
|
2725
2718
|
settingName: "region",
|
|
2726
2719
|
environmentVariableName: "AWS_REGION",
|