@ai-sdk/amazon-bedrock 4.0.0-beta.87 → 4.0.0-beta.89
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 +17 -0
- package/dist/index.js +55 -26
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +55 -26
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @ai-sdk/amazon-bedrock
|
|
2
2
|
|
|
3
|
+
## 4.0.0-beta.89
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 3bd2689: feat: extended token usage
|
|
8
|
+
- Updated dependencies [3bd2689]
|
|
9
|
+
- @ai-sdk/anthropic@3.0.0-beta.79
|
|
10
|
+
- @ai-sdk/provider@3.0.0-beta.26
|
|
11
|
+
- @ai-sdk/provider-utils@4.0.0-beta.45
|
|
12
|
+
|
|
13
|
+
## 4.0.0-beta.88
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- Updated dependencies [9e1e758]
|
|
18
|
+
- @ai-sdk/anthropic@3.0.0-beta.78
|
|
19
|
+
|
|
3
20
|
## 4.0.0-beta.87
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
package/dist/index.js
CHANGED
|
@@ -107,6 +107,45 @@ var BedrockErrorSchema = import_v42.z.object({
|
|
|
107
107
|
type: import_v42.z.string().nullish()
|
|
108
108
|
});
|
|
109
109
|
|
|
110
|
+
// src/convert-bedrock-usage.ts
|
|
111
|
+
function convertBedrockUsage(usage) {
|
|
112
|
+
var _a, _b;
|
|
113
|
+
if (usage == null) {
|
|
114
|
+
return {
|
|
115
|
+
inputTokens: {
|
|
116
|
+
total: void 0,
|
|
117
|
+
noCache: void 0,
|
|
118
|
+
cacheRead: void 0,
|
|
119
|
+
cacheWrite: void 0
|
|
120
|
+
},
|
|
121
|
+
outputTokens: {
|
|
122
|
+
total: void 0,
|
|
123
|
+
text: void 0,
|
|
124
|
+
reasoning: void 0
|
|
125
|
+
},
|
|
126
|
+
raw: void 0
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
const inputTokens = usage.inputTokens;
|
|
130
|
+
const outputTokens = usage.outputTokens;
|
|
131
|
+
const cacheReadTokens = (_a = usage.cacheReadInputTokens) != null ? _a : 0;
|
|
132
|
+
const cacheWriteTokens = (_b = usage.cacheWriteInputTokens) != null ? _b : 0;
|
|
133
|
+
return {
|
|
134
|
+
inputTokens: {
|
|
135
|
+
total: inputTokens,
|
|
136
|
+
noCache: inputTokens - cacheReadTokens,
|
|
137
|
+
cacheRead: cacheReadTokens,
|
|
138
|
+
cacheWrite: cacheWriteTokens
|
|
139
|
+
},
|
|
140
|
+
outputTokens: {
|
|
141
|
+
total: outputTokens,
|
|
142
|
+
text: outputTokens,
|
|
143
|
+
reasoning: void 0
|
|
144
|
+
},
|
|
145
|
+
raw: usage
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
|
|
110
149
|
// src/bedrock-event-stream-response-handler.ts
|
|
111
150
|
var import_provider = require("@ai-sdk/provider");
|
|
112
151
|
var import_provider_utils = require("@ai-sdk/provider-utils");
|
|
@@ -897,7 +936,7 @@ var BedrockChatLanguageModel = class {
|
|
|
897
936
|
return (0, import_provider_utils4.combineHeaders)(await (0, import_provider_utils4.resolve)(this.config.headers), headers);
|
|
898
937
|
}
|
|
899
938
|
async doGenerate(options) {
|
|
900
|
-
var _a, _b, _c, _d, _e, _f, _g, _h
|
|
939
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
901
940
|
const {
|
|
902
941
|
command: args,
|
|
903
942
|
warnings,
|
|
@@ -988,12 +1027,7 @@ var BedrockChatLanguageModel = class {
|
|
|
988
1027
|
response.stopReason,
|
|
989
1028
|
isJsonResponseFromTool
|
|
990
1029
|
),
|
|
991
|
-
usage:
|
|
992
|
-
inputTokens: (_i = response.usage) == null ? void 0 : _i.inputTokens,
|
|
993
|
-
outputTokens: (_j = response.usage) == null ? void 0 : _j.outputTokens,
|
|
994
|
-
totalTokens: ((_k = response.usage) == null ? void 0 : _k.inputTokens) + ((_l = response.usage) == null ? void 0 : _l.outputTokens),
|
|
995
|
-
cachedInputTokens: (_n = (_m = response.usage) == null ? void 0 : _m.cacheReadInputTokens) != null ? _n : void 0
|
|
996
|
-
},
|
|
1030
|
+
usage: convertBedrockUsage(response.usage),
|
|
997
1031
|
response: {
|
|
998
1032
|
// TODO add id, timestamp, etc
|
|
999
1033
|
headers: responseHeaders
|
|
@@ -1022,11 +1056,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1022
1056
|
fetch: this.config.fetch
|
|
1023
1057
|
});
|
|
1024
1058
|
let finishReason = "unknown";
|
|
1025
|
-
|
|
1026
|
-
inputTokens: void 0,
|
|
1027
|
-
outputTokens: void 0,
|
|
1028
|
-
totalTokens: void 0
|
|
1029
|
-
};
|
|
1059
|
+
let usage = void 0;
|
|
1030
1060
|
let providerMetadata = void 0;
|
|
1031
1061
|
let isJsonResponseFromTool = false;
|
|
1032
1062
|
const contentBlocks = {};
|
|
@@ -1037,7 +1067,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1037
1067
|
controller.enqueue({ type: "stream-start", warnings });
|
|
1038
1068
|
},
|
|
1039
1069
|
transform(chunk, controller) {
|
|
1040
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i
|
|
1070
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
1041
1071
|
function enqueueError(bedrockError) {
|
|
1042
1072
|
finishReason = "error";
|
|
1043
1073
|
controller.enqueue({ type: "error", error: bedrockError });
|
|
@@ -1073,11 +1103,10 @@ var BedrockChatLanguageModel = class {
|
|
|
1073
1103
|
);
|
|
1074
1104
|
}
|
|
1075
1105
|
if (value.metadata) {
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
const cacheUsage = ((_i = value.metadata.usage) == null ? void 0 : _i.cacheWriteInputTokens) != null ? {
|
|
1106
|
+
if (value.metadata.usage) {
|
|
1107
|
+
usage = value.metadata.usage;
|
|
1108
|
+
}
|
|
1109
|
+
const cacheUsage = ((_a = value.metadata.usage) == null ? void 0 : _a.cacheWriteInputTokens) != null ? {
|
|
1081
1110
|
usage: {
|
|
1082
1111
|
cacheWriteInputTokens: value.metadata.usage.cacheWriteInputTokens
|
|
1083
1112
|
}
|
|
@@ -1094,7 +1123,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1094
1123
|
};
|
|
1095
1124
|
}
|
|
1096
1125
|
}
|
|
1097
|
-
if (((
|
|
1126
|
+
if (((_b = value.contentBlockStart) == null ? void 0 : _b.contentBlockIndex) != null && !((_d = (_c = value.contentBlockStart) == null ? void 0 : _c.start) == null ? void 0 : _d.toolUse)) {
|
|
1098
1127
|
const blockIndex = value.contentBlockStart.contentBlockIndex;
|
|
1099
1128
|
contentBlocks[blockIndex] = { type: "text" };
|
|
1100
1129
|
controller.enqueue({
|
|
@@ -1102,7 +1131,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1102
1131
|
id: String(blockIndex)
|
|
1103
1132
|
});
|
|
1104
1133
|
}
|
|
1105
|
-
if (((
|
|
1134
|
+
if (((_e = value.contentBlockDelta) == null ? void 0 : _e.delta) && "text" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.text) {
|
|
1106
1135
|
const blockIndex = value.contentBlockDelta.contentBlockIndex || 0;
|
|
1107
1136
|
if (contentBlocks[blockIndex] == null) {
|
|
1108
1137
|
contentBlocks[blockIndex] = { type: "text" };
|
|
@@ -1117,7 +1146,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1117
1146
|
delta: value.contentBlockDelta.delta.text
|
|
1118
1147
|
});
|
|
1119
1148
|
}
|
|
1120
|
-
if (((
|
|
1149
|
+
if (((_f = value.contentBlockStop) == null ? void 0 : _f.contentBlockIndex) != null) {
|
|
1121
1150
|
const blockIndex = value.contentBlockStop.contentBlockIndex;
|
|
1122
1151
|
const contentBlock = contentBlocks[blockIndex];
|
|
1123
1152
|
if (contentBlock != null) {
|
|
@@ -1163,7 +1192,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1163
1192
|
delete contentBlocks[blockIndex];
|
|
1164
1193
|
}
|
|
1165
1194
|
}
|
|
1166
|
-
if (((
|
|
1195
|
+
if (((_g = value.contentBlockDelta) == null ? void 0 : _g.delta) && "reasoningContent" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.reasoningContent) {
|
|
1167
1196
|
const blockIndex = value.contentBlockDelta.contentBlockIndex || 0;
|
|
1168
1197
|
const reasoningContent = value.contentBlockDelta.delta.reasoningContent;
|
|
1169
1198
|
if ("text" in reasoningContent && reasoningContent.text) {
|
|
@@ -1204,7 +1233,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1204
1233
|
}
|
|
1205
1234
|
}
|
|
1206
1235
|
const contentBlockStart = value.contentBlockStart;
|
|
1207
|
-
if (((
|
|
1236
|
+
if (((_h = contentBlockStart == null ? void 0 : contentBlockStart.start) == null ? void 0 : _h.toolUse) != null) {
|
|
1208
1237
|
const toolUse = contentBlockStart.start.toolUse;
|
|
1209
1238
|
const blockIndex = contentBlockStart.contentBlockIndex;
|
|
1210
1239
|
const isJsonResponseTool = usesJsonResponseTool && toolUse.name === "json";
|
|
@@ -1228,7 +1257,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1228
1257
|
const blockIndex = contentBlockDelta.contentBlockIndex;
|
|
1229
1258
|
const contentBlock = contentBlocks[blockIndex];
|
|
1230
1259
|
if ((contentBlock == null ? void 0 : contentBlock.type) === "tool-call") {
|
|
1231
|
-
const delta = (
|
|
1260
|
+
const delta = (_i = contentBlockDelta.delta.toolUse.input) != null ? _i : "";
|
|
1232
1261
|
if (!contentBlock.isJsonResponseTool) {
|
|
1233
1262
|
controller.enqueue({
|
|
1234
1263
|
type: "tool-input-delta",
|
|
@@ -1258,7 +1287,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1258
1287
|
controller.enqueue({
|
|
1259
1288
|
type: "finish",
|
|
1260
1289
|
finishReason,
|
|
1261
|
-
usage,
|
|
1290
|
+
usage: convertBedrockUsage(usage),
|
|
1262
1291
|
...providerMetadata && { providerMetadata }
|
|
1263
1292
|
});
|
|
1264
1293
|
}
|
|
@@ -1563,7 +1592,7 @@ var import_provider_utils7 = require("@ai-sdk/provider-utils");
|
|
|
1563
1592
|
var import_aws4fetch = require("aws4fetch");
|
|
1564
1593
|
|
|
1565
1594
|
// src/version.ts
|
|
1566
|
-
var VERSION = true ? "4.0.0-beta.
|
|
1595
|
+
var VERSION = true ? "4.0.0-beta.89" : "0.0.0-test";
|
|
1567
1596
|
|
|
1568
1597
|
// src/bedrock-sigv4-fetch.ts
|
|
1569
1598
|
function createSigV4FetchFunction(getCredentials, fetch = globalThis.fetch) {
|