@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/dist/index.mjs
CHANGED
|
@@ -92,6 +92,45 @@ var BedrockErrorSchema = z2.object({
|
|
|
92
92
|
type: z2.string().nullish()
|
|
93
93
|
});
|
|
94
94
|
|
|
95
|
+
// src/convert-bedrock-usage.ts
|
|
96
|
+
function convertBedrockUsage(usage) {
|
|
97
|
+
var _a, _b;
|
|
98
|
+
if (usage == null) {
|
|
99
|
+
return {
|
|
100
|
+
inputTokens: {
|
|
101
|
+
total: void 0,
|
|
102
|
+
noCache: void 0,
|
|
103
|
+
cacheRead: void 0,
|
|
104
|
+
cacheWrite: void 0
|
|
105
|
+
},
|
|
106
|
+
outputTokens: {
|
|
107
|
+
total: void 0,
|
|
108
|
+
text: void 0,
|
|
109
|
+
reasoning: void 0
|
|
110
|
+
},
|
|
111
|
+
raw: void 0
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
const inputTokens = usage.inputTokens;
|
|
115
|
+
const outputTokens = usage.outputTokens;
|
|
116
|
+
const cacheReadTokens = (_a = usage.cacheReadInputTokens) != null ? _a : 0;
|
|
117
|
+
const cacheWriteTokens = (_b = usage.cacheWriteInputTokens) != null ? _b : 0;
|
|
118
|
+
return {
|
|
119
|
+
inputTokens: {
|
|
120
|
+
total: inputTokens,
|
|
121
|
+
noCache: inputTokens - cacheReadTokens,
|
|
122
|
+
cacheRead: cacheReadTokens,
|
|
123
|
+
cacheWrite: cacheWriteTokens
|
|
124
|
+
},
|
|
125
|
+
outputTokens: {
|
|
126
|
+
total: outputTokens,
|
|
127
|
+
text: outputTokens,
|
|
128
|
+
reasoning: void 0
|
|
129
|
+
},
|
|
130
|
+
raw: usage
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
|
|
95
134
|
// src/bedrock-event-stream-response-handler.ts
|
|
96
135
|
import { EmptyResponseBodyError } from "@ai-sdk/provider";
|
|
97
136
|
import {
|
|
@@ -893,7 +932,7 @@ var BedrockChatLanguageModel = class {
|
|
|
893
932
|
return combineHeaders(await resolve(this.config.headers), headers);
|
|
894
933
|
}
|
|
895
934
|
async doGenerate(options) {
|
|
896
|
-
var _a, _b, _c, _d, _e, _f, _g, _h
|
|
935
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
897
936
|
const {
|
|
898
937
|
command: args,
|
|
899
938
|
warnings,
|
|
@@ -984,12 +1023,7 @@ var BedrockChatLanguageModel = class {
|
|
|
984
1023
|
response.stopReason,
|
|
985
1024
|
isJsonResponseFromTool
|
|
986
1025
|
),
|
|
987
|
-
usage:
|
|
988
|
-
inputTokens: (_i = response.usage) == null ? void 0 : _i.inputTokens,
|
|
989
|
-
outputTokens: (_j = response.usage) == null ? void 0 : _j.outputTokens,
|
|
990
|
-
totalTokens: ((_k = response.usage) == null ? void 0 : _k.inputTokens) + ((_l = response.usage) == null ? void 0 : _l.outputTokens),
|
|
991
|
-
cachedInputTokens: (_n = (_m = response.usage) == null ? void 0 : _m.cacheReadInputTokens) != null ? _n : void 0
|
|
992
|
-
},
|
|
1026
|
+
usage: convertBedrockUsage(response.usage),
|
|
993
1027
|
response: {
|
|
994
1028
|
// TODO add id, timestamp, etc
|
|
995
1029
|
headers: responseHeaders
|
|
@@ -1018,11 +1052,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1018
1052
|
fetch: this.config.fetch
|
|
1019
1053
|
});
|
|
1020
1054
|
let finishReason = "unknown";
|
|
1021
|
-
|
|
1022
|
-
inputTokens: void 0,
|
|
1023
|
-
outputTokens: void 0,
|
|
1024
|
-
totalTokens: void 0
|
|
1025
|
-
};
|
|
1055
|
+
let usage = void 0;
|
|
1026
1056
|
let providerMetadata = void 0;
|
|
1027
1057
|
let isJsonResponseFromTool = false;
|
|
1028
1058
|
const contentBlocks = {};
|
|
@@ -1033,7 +1063,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1033
1063
|
controller.enqueue({ type: "stream-start", warnings });
|
|
1034
1064
|
},
|
|
1035
1065
|
transform(chunk, controller) {
|
|
1036
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i
|
|
1066
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
1037
1067
|
function enqueueError(bedrockError) {
|
|
1038
1068
|
finishReason = "error";
|
|
1039
1069
|
controller.enqueue({ type: "error", error: bedrockError });
|
|
@@ -1069,11 +1099,10 @@ var BedrockChatLanguageModel = class {
|
|
|
1069
1099
|
);
|
|
1070
1100
|
}
|
|
1071
1101
|
if (value.metadata) {
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
const cacheUsage = ((_i = value.metadata.usage) == null ? void 0 : _i.cacheWriteInputTokens) != null ? {
|
|
1102
|
+
if (value.metadata.usage) {
|
|
1103
|
+
usage = value.metadata.usage;
|
|
1104
|
+
}
|
|
1105
|
+
const cacheUsage = ((_a = value.metadata.usage) == null ? void 0 : _a.cacheWriteInputTokens) != null ? {
|
|
1077
1106
|
usage: {
|
|
1078
1107
|
cacheWriteInputTokens: value.metadata.usage.cacheWriteInputTokens
|
|
1079
1108
|
}
|
|
@@ -1090,7 +1119,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1090
1119
|
};
|
|
1091
1120
|
}
|
|
1092
1121
|
}
|
|
1093
|
-
if (((
|
|
1122
|
+
if (((_b = value.contentBlockStart) == null ? void 0 : _b.contentBlockIndex) != null && !((_d = (_c = value.contentBlockStart) == null ? void 0 : _c.start) == null ? void 0 : _d.toolUse)) {
|
|
1094
1123
|
const blockIndex = value.contentBlockStart.contentBlockIndex;
|
|
1095
1124
|
contentBlocks[blockIndex] = { type: "text" };
|
|
1096
1125
|
controller.enqueue({
|
|
@@ -1098,7 +1127,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1098
1127
|
id: String(blockIndex)
|
|
1099
1128
|
});
|
|
1100
1129
|
}
|
|
1101
|
-
if (((
|
|
1130
|
+
if (((_e = value.contentBlockDelta) == null ? void 0 : _e.delta) && "text" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.text) {
|
|
1102
1131
|
const blockIndex = value.contentBlockDelta.contentBlockIndex || 0;
|
|
1103
1132
|
if (contentBlocks[blockIndex] == null) {
|
|
1104
1133
|
contentBlocks[blockIndex] = { type: "text" };
|
|
@@ -1113,7 +1142,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1113
1142
|
delta: value.contentBlockDelta.delta.text
|
|
1114
1143
|
});
|
|
1115
1144
|
}
|
|
1116
|
-
if (((
|
|
1145
|
+
if (((_f = value.contentBlockStop) == null ? void 0 : _f.contentBlockIndex) != null) {
|
|
1117
1146
|
const blockIndex = value.contentBlockStop.contentBlockIndex;
|
|
1118
1147
|
const contentBlock = contentBlocks[blockIndex];
|
|
1119
1148
|
if (contentBlock != null) {
|
|
@@ -1159,7 +1188,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1159
1188
|
delete contentBlocks[blockIndex];
|
|
1160
1189
|
}
|
|
1161
1190
|
}
|
|
1162
|
-
if (((
|
|
1191
|
+
if (((_g = value.contentBlockDelta) == null ? void 0 : _g.delta) && "reasoningContent" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.reasoningContent) {
|
|
1163
1192
|
const blockIndex = value.contentBlockDelta.contentBlockIndex || 0;
|
|
1164
1193
|
const reasoningContent = value.contentBlockDelta.delta.reasoningContent;
|
|
1165
1194
|
if ("text" in reasoningContent && reasoningContent.text) {
|
|
@@ -1200,7 +1229,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1200
1229
|
}
|
|
1201
1230
|
}
|
|
1202
1231
|
const contentBlockStart = value.contentBlockStart;
|
|
1203
|
-
if (((
|
|
1232
|
+
if (((_h = contentBlockStart == null ? void 0 : contentBlockStart.start) == null ? void 0 : _h.toolUse) != null) {
|
|
1204
1233
|
const toolUse = contentBlockStart.start.toolUse;
|
|
1205
1234
|
const blockIndex = contentBlockStart.contentBlockIndex;
|
|
1206
1235
|
const isJsonResponseTool = usesJsonResponseTool && toolUse.name === "json";
|
|
@@ -1224,7 +1253,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1224
1253
|
const blockIndex = contentBlockDelta.contentBlockIndex;
|
|
1225
1254
|
const contentBlock = contentBlocks[blockIndex];
|
|
1226
1255
|
if ((contentBlock == null ? void 0 : contentBlock.type) === "tool-call") {
|
|
1227
|
-
const delta = (
|
|
1256
|
+
const delta = (_i = contentBlockDelta.delta.toolUse.input) != null ? _i : "";
|
|
1228
1257
|
if (!contentBlock.isJsonResponseTool) {
|
|
1229
1258
|
controller.enqueue({
|
|
1230
1259
|
type: "tool-input-delta",
|
|
@@ -1254,7 +1283,7 @@ var BedrockChatLanguageModel = class {
|
|
|
1254
1283
|
controller.enqueue({
|
|
1255
1284
|
type: "finish",
|
|
1256
1285
|
finishReason,
|
|
1257
|
-
usage,
|
|
1286
|
+
usage: convertBedrockUsage(usage),
|
|
1258
1287
|
...providerMetadata && { providerMetadata }
|
|
1259
1288
|
});
|
|
1260
1289
|
}
|
|
@@ -1579,7 +1608,7 @@ import {
|
|
|
1579
1608
|
import { AwsV4Signer } from "aws4fetch";
|
|
1580
1609
|
|
|
1581
1610
|
// src/version.ts
|
|
1582
|
-
var VERSION = true ? "4.0.0-beta.
|
|
1611
|
+
var VERSION = true ? "4.0.0-beta.89" : "0.0.0-test";
|
|
1583
1612
|
|
|
1584
1613
|
// src/bedrock-sigv4-fetch.ts
|
|
1585
1614
|
function createSigV4FetchFunction(getCredentials, fetch = globalThis.fetch) {
|