@ai-sdk/amazon-bedrock 4.0.161 → 4.0.163
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 +14 -0
- package/dist/anthropic/index.js +1 -1
- package/dist/anthropic/index.mjs +1 -1
- package/dist/index.js +32 -19
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +32 -19
- 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 +38 -19
- package/src/convert-bedrock-usage.ts +7 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @ai-sdk/amazon-bedrock
|
|
2
2
|
|
|
3
|
+
## 4.0.163
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 1eb654d: Preserve complete Amazon Bedrock Converse usage objects in raw usage metadata.
|
|
8
|
+
|
|
9
|
+
## 4.0.162
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 46e5f91: Send nested reasoning effort for CRIS-prefixed OpenAI GPT-5.x Converse requests while preserving the flat gpt-oss format.
|
|
14
|
+
- Updated dependencies [087d7e2]
|
|
15
|
+
- @ai-sdk/openai@3.0.102
|
|
16
|
+
|
|
3
17
|
## 4.0.161
|
|
4
18
|
|
|
5
19
|
### 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.163" : "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
|
@@ -24,7 +24,7 @@ import {
|
|
|
24
24
|
import { AwsV4Signer } from "aws4fetch";
|
|
25
25
|
|
|
26
26
|
// src/version.ts
|
|
27
|
-
var VERSION = true ? "4.0.
|
|
27
|
+
var VERSION = true ? "4.0.163" : "0.0.0-test";
|
|
28
28
|
|
|
29
29
|
// src/bedrock-sigv4-fetch.ts
|
|
30
30
|
function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|
package/dist/index.js
CHANGED
|
@@ -904,7 +904,7 @@ var BedrockChatLanguageModel = class {
|
|
|
904
904
|
toolChoice,
|
|
905
905
|
providerOptions
|
|
906
906
|
}) {
|
|
907
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m;
|
|
907
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p;
|
|
908
908
|
const bedrockOptions = (_a = await (0, import_provider_utils4.parseProviderOptions)({
|
|
909
909
|
provider: "bedrock",
|
|
910
910
|
providerOptions,
|
|
@@ -952,7 +952,10 @@ var BedrockChatLanguageModel = class {
|
|
|
952
952
|
});
|
|
953
953
|
}
|
|
954
954
|
const isAnthropicModel = this.modelId.includes("anthropic");
|
|
955
|
-
const
|
|
955
|
+
const openAIModelId = (_b = /^(?:[^.]+\.)?(openai\..+)$/.exec(this.modelId)) == null ? void 0 : _b[1];
|
|
956
|
+
const isOpenAIModel = openAIModelId != null;
|
|
957
|
+
const isOpenAIGptOssModel = (_c = openAIModelId == null ? void 0 : openAIModelId.startsWith("openai.gpt-oss-")) != null ? _c : false;
|
|
958
|
+
const isThinkingEnabled = ((_d = bedrockOptions.reasoningConfig) == null ? void 0 : _d.type) === "enabled" || ((_e = bedrockOptions.reasoningConfig) == null ? void 0 : _e.type) === "adaptive";
|
|
956
959
|
const { supportsStructuredOutput: modelSupportsStructuredOutput } = (0, import_internal2.getModelCapabilities)(this.modelId);
|
|
957
960
|
const useNativeStructuredOutput = isAnthropicModel && supportsNativeStructuredOutput(this.modelId) && (modelSupportsStructuredOutput || isThinkingEnabled) && (responseFormat == null ? void 0 : responseFormat.type) === "json" && responseFormat.schema != null;
|
|
958
961
|
const useJsonInstructionForStructuredOutput = isAnthropicModel && !supportsStrictTools(this.modelId) && (responseFormat == null ? void 0 : responseFormat.type) === "json" && responseFormat.schema != null && tools != null && tools.length > 0;
|
|
@@ -975,16 +978,16 @@ var BedrockChatLanguageModel = class {
|
|
|
975
978
|
};
|
|
976
979
|
}
|
|
977
980
|
if (betas.size > 0 || bedrockOptions.anthropicBeta) {
|
|
978
|
-
const existingBetas = (
|
|
981
|
+
const existingBetas = (_f = bedrockOptions.anthropicBeta) != null ? _f : [];
|
|
979
982
|
const mergedBetas = betas.size > 0 ? [...existingBetas, ...Array.from(betas)] : existingBetas;
|
|
980
983
|
bedrockOptions.additionalModelRequestFields = {
|
|
981
984
|
...bedrockOptions.additionalModelRequestFields,
|
|
982
985
|
anthropic_beta: mergedBetas
|
|
983
986
|
};
|
|
984
987
|
}
|
|
985
|
-
const thinkingType = (
|
|
986
|
-
const thinkingBudget = thinkingType === "enabled" ? (
|
|
987
|
-
const thinkingDisplay = thinkingType === "adaptive" ? (
|
|
988
|
+
const thinkingType = (_g = bedrockOptions.reasoningConfig) == null ? void 0 : _g.type;
|
|
989
|
+
const thinkingBudget = thinkingType === "enabled" ? (_h = bedrockOptions.reasoningConfig) == null ? void 0 : _h.budgetTokens : void 0;
|
|
990
|
+
const thinkingDisplay = thinkingType === "adaptive" ? (_i = bedrockOptions.reasoningConfig) == null ? void 0 : _i.display : void 0;
|
|
988
991
|
const isAnthropicThinkingEnabled = isAnthropicModel && isThinkingEnabled;
|
|
989
992
|
const inferenceConfig = {
|
|
990
993
|
...maxOutputTokens != null && { maxTokens: maxOutputTokens },
|
|
@@ -1017,7 +1020,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1017
1020
|
};
|
|
1018
1021
|
}
|
|
1019
1022
|
} else if (!isAnthropicModel) {
|
|
1020
|
-
if (((
|
|
1023
|
+
if (((_j = bedrockOptions.reasoningConfig) == null ? void 0 : _j.budgetTokens) != null) {
|
|
1021
1024
|
warnings.push({
|
|
1022
1025
|
type: "unsupported",
|
|
1023
1026
|
feature: "budgetTokens",
|
|
@@ -1032,21 +1035,26 @@ var BedrockChatLanguageModel = class {
|
|
|
1032
1035
|
});
|
|
1033
1036
|
}
|
|
1034
1037
|
}
|
|
1035
|
-
const maxReasoningEffort = (
|
|
1036
|
-
const isOpenAIModel = this.modelId.startsWith("openai.");
|
|
1038
|
+
const maxReasoningEffort = (_k = bedrockOptions.reasoningConfig) == null ? void 0 : _k.maxReasoningEffort;
|
|
1037
1039
|
if (maxReasoningEffort != null) {
|
|
1038
1040
|
if (isAnthropicModel) {
|
|
1039
1041
|
bedrockOptions.additionalModelRequestFields = {
|
|
1040
1042
|
...bedrockOptions.additionalModelRequestFields,
|
|
1041
1043
|
output_config: {
|
|
1042
|
-
...(
|
|
1044
|
+
...(_l = bedrockOptions.additionalModelRequestFields) == null ? void 0 : _l.output_config,
|
|
1043
1045
|
effort: maxReasoningEffort
|
|
1044
1046
|
}
|
|
1045
1047
|
};
|
|
1046
1048
|
} else if (isOpenAIModel) {
|
|
1047
|
-
bedrockOptions.additionalModelRequestFields = {
|
|
1049
|
+
bedrockOptions.additionalModelRequestFields = isOpenAIGptOssModel ? {
|
|
1048
1050
|
...bedrockOptions.additionalModelRequestFields,
|
|
1049
1051
|
reasoning_effort: maxReasoningEffort
|
|
1052
|
+
} : {
|
|
1053
|
+
...bedrockOptions.additionalModelRequestFields,
|
|
1054
|
+
reasoning: {
|
|
1055
|
+
...(_m = bedrockOptions.additionalModelRequestFields) == null ? void 0 : _m.reasoning,
|
|
1056
|
+
effort: maxReasoningEffort
|
|
1057
|
+
}
|
|
1050
1058
|
};
|
|
1051
1059
|
} else {
|
|
1052
1060
|
bedrockOptions.additionalModelRequestFields = {
|
|
@@ -1063,7 +1071,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1063
1071
|
bedrockOptions.additionalModelRequestFields = {
|
|
1064
1072
|
...bedrockOptions.additionalModelRequestFields,
|
|
1065
1073
|
output_config: {
|
|
1066
|
-
...(
|
|
1074
|
+
...(_n = bedrockOptions.additionalModelRequestFields) == null ? void 0 : _n.output_config,
|
|
1067
1075
|
format: {
|
|
1068
1076
|
type: "json_schema",
|
|
1069
1077
|
schema: (0, import_internal2.sanitizeJsonSchema)(responseFormat.schema)
|
|
@@ -1095,7 +1103,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1095
1103
|
details: "topK is not supported when thinking is enabled"
|
|
1096
1104
|
});
|
|
1097
1105
|
}
|
|
1098
|
-
const hasAnyTools = ((
|
|
1106
|
+
const hasAnyTools = ((_p = (_o = toolConfig.tools) == null ? void 0 : _o.length) != null ? _p : 0) > 0 || additionalTools;
|
|
1099
1107
|
let filteredPrompt = prompt;
|
|
1100
1108
|
if (!hasAnyTools) {
|
|
1101
1109
|
const hasToolContent = prompt.some(
|
|
@@ -1725,6 +1733,10 @@ var BedrockReasoningTextSchema = import_v44.z.object({
|
|
|
1725
1733
|
var BedrockRedactedReasoningSchema = import_v44.z.object({
|
|
1726
1734
|
data: import_v44.z.string()
|
|
1727
1735
|
});
|
|
1736
|
+
var AmazonBedrockCacheDetailSchema = import_v44.z.object({
|
|
1737
|
+
inputTokens: import_v44.z.number(),
|
|
1738
|
+
ttl: import_v44.z.string()
|
|
1739
|
+
}).catchall(import_v44.z.json());
|
|
1728
1740
|
var BedrockResponseSchema = import_v44.z.object({
|
|
1729
1741
|
metrics: import_v44.z.object({
|
|
1730
1742
|
latencyMs: import_v44.z.number()
|
|
@@ -1766,8 +1778,8 @@ var BedrockResponseSchema = import_v44.z.object({
|
|
|
1766
1778
|
totalTokens: import_v44.z.number(),
|
|
1767
1779
|
cacheReadInputTokens: import_v44.z.number().nullish(),
|
|
1768
1780
|
cacheWriteInputTokens: import_v44.z.number().nullish(),
|
|
1769
|
-
cacheDetails: import_v44.z.array(
|
|
1770
|
-
})
|
|
1781
|
+
cacheDetails: import_v44.z.array(AmazonBedrockCacheDetailSchema).nullish()
|
|
1782
|
+
}).catchall(import_v44.z.json())
|
|
1771
1783
|
});
|
|
1772
1784
|
var BedrockStreamSchema = import_v44.z.object({
|
|
1773
1785
|
contentBlockDelta: import_v44.z.object({
|
|
@@ -1815,10 +1827,11 @@ var BedrockStreamSchema = import_v44.z.object({
|
|
|
1815
1827
|
usage: import_v44.z.object({
|
|
1816
1828
|
cacheReadInputTokens: import_v44.z.number().nullish(),
|
|
1817
1829
|
cacheWriteInputTokens: import_v44.z.number().nullish(),
|
|
1818
|
-
cacheDetails: import_v44.z.array(
|
|
1830
|
+
cacheDetails: import_v44.z.array(AmazonBedrockCacheDetailSchema).nullish(),
|
|
1819
1831
|
inputTokens: import_v44.z.number(),
|
|
1820
|
-
outputTokens: import_v44.z.number()
|
|
1821
|
-
|
|
1832
|
+
outputTokens: import_v44.z.number(),
|
|
1833
|
+
totalTokens: import_v44.z.number().optional()
|
|
1834
|
+
}).catchall(import_v44.z.json()).nullish()
|
|
1822
1835
|
}).nullish(),
|
|
1823
1836
|
modelStreamErrorException: import_v44.z.record(import_v44.z.string(), import_v44.z.unknown()).nullish(),
|
|
1824
1837
|
serviceUnavailableException: import_v44.z.record(import_v44.z.string(), import_v44.z.unknown()).nullish(),
|
|
@@ -2230,7 +2243,7 @@ var import_provider_utils7 = require("@ai-sdk/provider-utils");
|
|
|
2230
2243
|
var import_aws4fetch = require("aws4fetch");
|
|
2231
2244
|
|
|
2232
2245
|
// src/version.ts
|
|
2233
|
-
var VERSION = true ? "4.0.
|
|
2246
|
+
var VERSION = true ? "4.0.163" : "0.0.0-test";
|
|
2234
2247
|
|
|
2235
2248
|
// src/bedrock-sigv4-fetch.ts
|
|
2236
2249
|
function createSigV4FetchFunction(getCredentials, fetch, service = "bedrock") {
|