@ai-sdk/amazon-bedrock 4.0.0-beta.105 → 4.0.0-beta.107

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 CHANGED
@@ -1,5 +1,25 @@
1
1
  # @ai-sdk/amazon-bedrock
2
2
 
3
+ ## 4.0.0-beta.107
4
+
5
+ ### Patch Changes
6
+
7
+ - 2625a04: feat(openai); update spec for mcp approval
8
+ - Updated dependencies [2625a04]
9
+ - @ai-sdk/anthropic@3.0.0-beta.96
10
+ - @ai-sdk/provider@3.0.0-beta.31
11
+ - @ai-sdk/provider-utils@4.0.0-beta.58
12
+
13
+ ## 4.0.0-beta.106
14
+
15
+ ### Patch Changes
16
+
17
+ - cbf52cd: feat: expose raw finish reason
18
+ - Updated dependencies [cbf52cd]
19
+ - @ai-sdk/anthropic@3.0.0-beta.95
20
+ - @ai-sdk/provider@3.0.0-beta.30
21
+ - @ai-sdk/provider-utils@4.0.0-beta.57
22
+
3
23
  ## 4.0.0-beta.105
4
24
 
5
25
  ### Patch Changes
package/dist/index.js CHANGED
@@ -454,6 +454,9 @@ async function convertToBedrockChatMessages(prompt) {
454
454
  }
455
455
  case "tool": {
456
456
  for (const part of content) {
457
+ if (part.type === "tool-approval-response") {
458
+ continue;
459
+ }
457
460
  let toolResultContent;
458
461
  const output = part.output;
459
462
  switch (output.type) {
@@ -706,7 +709,7 @@ function mapBedrockFinishReason(finishReason, isJsonResponseFromTool) {
706
709
  case "tool_use":
707
710
  return isJsonResponseFromTool ? "stop" : "tool-calls";
708
711
  default:
709
- return "unknown";
712
+ return "other";
710
713
  }
711
714
  }
712
715
 
@@ -937,7 +940,7 @@ var BedrockChatLanguageModel = class {
937
940
  return (0, import_provider_utils4.combineHeaders)(await (0, import_provider_utils4.resolve)(this.config.headers), headers);
938
941
  }
939
942
  async doGenerate(options) {
940
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
943
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
941
944
  const {
942
945
  command: args,
943
946
  warnings,
@@ -1026,10 +1029,13 @@ var BedrockChatLanguageModel = class {
1026
1029
  } : void 0;
1027
1030
  return {
1028
1031
  content,
1029
- finishReason: mapBedrockFinishReason(
1030
- response.stopReason,
1031
- isJsonResponseFromTool
1032
- ),
1032
+ finishReason: {
1033
+ unified: mapBedrockFinishReason(
1034
+ response.stopReason,
1035
+ isJsonResponseFromTool
1036
+ ),
1037
+ raw: (_k = response.stopReason) != null ? _k : void 0
1038
+ },
1033
1039
  usage: convertBedrockUsage(response.usage),
1034
1040
  response: {
1035
1041
  // TODO add id, timestamp, etc
@@ -1058,7 +1064,10 @@ var BedrockChatLanguageModel = class {
1058
1064
  abortSignal: options.abortSignal,
1059
1065
  fetch: this.config.fetch
1060
1066
  });
1061
- let finishReason = "unknown";
1067
+ let finishReason = {
1068
+ unified: "other",
1069
+ raw: void 0
1070
+ };
1062
1071
  let usage = void 0;
1063
1072
  let providerMetadata = void 0;
1064
1073
  let isJsonResponseFromTool = false;
@@ -1071,9 +1080,9 @@ var BedrockChatLanguageModel = class {
1071
1080
  controller.enqueue({ type: "stream-start", warnings });
1072
1081
  },
1073
1082
  transform(chunk, controller) {
1074
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
1083
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
1075
1084
  function enqueueError(bedrockError) {
1076
- finishReason = "error";
1085
+ finishReason = { unified: "error", raw: void 0 };
1077
1086
  controller.enqueue({ type: "error", error: bedrockError });
1078
1087
  }
1079
1088
  if (options.includeRawChunks) {
@@ -1101,17 +1110,20 @@ var BedrockChatLanguageModel = class {
1101
1110
  return;
1102
1111
  }
1103
1112
  if (value.messageStop) {
1104
- finishReason = mapBedrockFinishReason(
1105
- value.messageStop.stopReason,
1106
- isJsonResponseFromTool
1107
- );
1108
- stopSequence = (_b = (_a = value.messageStop.additionalModelResponseFields) == null ? void 0 : _a.stop_sequence) != null ? _b : null;
1113
+ finishReason = {
1114
+ unified: mapBedrockFinishReason(
1115
+ value.messageStop.stopReason,
1116
+ isJsonResponseFromTool
1117
+ ),
1118
+ raw: (_a = value.messageStop.stopReason) != null ? _a : void 0
1119
+ };
1120
+ stopSequence = (_c = (_b = value.messageStop.additionalModelResponseFields) == null ? void 0 : _b.stop_sequence) != null ? _c : null;
1109
1121
  }
1110
1122
  if (value.metadata) {
1111
1123
  if (value.metadata.usage) {
1112
1124
  usage = value.metadata.usage;
1113
1125
  }
1114
- const cacheUsage = ((_c = value.metadata.usage) == null ? void 0 : _c.cacheWriteInputTokens) != null ? {
1126
+ const cacheUsage = ((_d = value.metadata.usage) == null ? void 0 : _d.cacheWriteInputTokens) != null ? {
1115
1127
  usage: {
1116
1128
  cacheWriteInputTokens: value.metadata.usage.cacheWriteInputTokens
1117
1129
  }
@@ -1128,7 +1140,7 @@ var BedrockChatLanguageModel = class {
1128
1140
  };
1129
1141
  }
1130
1142
  }
1131
- if (((_d = value.contentBlockStart) == null ? void 0 : _d.contentBlockIndex) != null && !((_f = (_e = value.contentBlockStart) == null ? void 0 : _e.start) == null ? void 0 : _f.toolUse)) {
1143
+ if (((_e = value.contentBlockStart) == null ? void 0 : _e.contentBlockIndex) != null && !((_g = (_f = value.contentBlockStart) == null ? void 0 : _f.start) == null ? void 0 : _g.toolUse)) {
1132
1144
  const blockIndex = value.contentBlockStart.contentBlockIndex;
1133
1145
  contentBlocks[blockIndex] = { type: "text" };
1134
1146
  controller.enqueue({
@@ -1136,7 +1148,7 @@ var BedrockChatLanguageModel = class {
1136
1148
  id: String(blockIndex)
1137
1149
  });
1138
1150
  }
1139
- if (((_g = value.contentBlockDelta) == null ? void 0 : _g.delta) && "text" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.text) {
1151
+ if (((_h = value.contentBlockDelta) == null ? void 0 : _h.delta) && "text" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.text) {
1140
1152
  const blockIndex = value.contentBlockDelta.contentBlockIndex || 0;
1141
1153
  if (contentBlocks[blockIndex] == null) {
1142
1154
  contentBlocks[blockIndex] = { type: "text" };
@@ -1151,7 +1163,7 @@ var BedrockChatLanguageModel = class {
1151
1163
  delta: value.contentBlockDelta.delta.text
1152
1164
  });
1153
1165
  }
1154
- if (((_h = value.contentBlockStop) == null ? void 0 : _h.contentBlockIndex) != null) {
1166
+ if (((_i = value.contentBlockStop) == null ? void 0 : _i.contentBlockIndex) != null) {
1155
1167
  const blockIndex = value.contentBlockStop.contentBlockIndex;
1156
1168
  const contentBlock = contentBlocks[blockIndex];
1157
1169
  if (contentBlock != null) {
@@ -1197,7 +1209,7 @@ var BedrockChatLanguageModel = class {
1197
1209
  delete contentBlocks[blockIndex];
1198
1210
  }
1199
1211
  }
1200
- if (((_i = value.contentBlockDelta) == null ? void 0 : _i.delta) && "reasoningContent" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.reasoningContent) {
1212
+ if (((_j = value.contentBlockDelta) == null ? void 0 : _j.delta) && "reasoningContent" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.reasoningContent) {
1201
1213
  const blockIndex = value.contentBlockDelta.contentBlockIndex || 0;
1202
1214
  const reasoningContent = value.contentBlockDelta.delta.reasoningContent;
1203
1215
  if ("text" in reasoningContent && reasoningContent.text) {
@@ -1238,7 +1250,7 @@ var BedrockChatLanguageModel = class {
1238
1250
  }
1239
1251
  }
1240
1252
  const contentBlockStart = value.contentBlockStart;
1241
- if (((_j = contentBlockStart == null ? void 0 : contentBlockStart.start) == null ? void 0 : _j.toolUse) != null) {
1253
+ if (((_k = contentBlockStart == null ? void 0 : contentBlockStart.start) == null ? void 0 : _k.toolUse) != null) {
1242
1254
  const toolUse = contentBlockStart.start.toolUse;
1243
1255
  const blockIndex = contentBlockStart.contentBlockIndex;
1244
1256
  const isJsonResponseTool = usesJsonResponseTool && toolUse.name === "json";
@@ -1262,7 +1274,7 @@ var BedrockChatLanguageModel = class {
1262
1274
  const blockIndex = contentBlockDelta.contentBlockIndex;
1263
1275
  const contentBlock = contentBlocks[blockIndex];
1264
1276
  if ((contentBlock == null ? void 0 : contentBlock.type) === "tool-call") {
1265
- const delta = (_k = contentBlockDelta.delta.toolUse.input) != null ? _k : "";
1277
+ const delta = (_l = contentBlockDelta.delta.toolUse.input) != null ? _l : "";
1266
1278
  if (!contentBlock.isJsonResponseTool) {
1267
1279
  controller.enqueue({
1268
1280
  type: "tool-input-delta",
@@ -1717,7 +1729,7 @@ var import_provider_utils7 = require("@ai-sdk/provider-utils");
1717
1729
  var import_aws4fetch = require("aws4fetch");
1718
1730
 
1719
1731
  // src/version.ts
1720
- var VERSION = true ? "4.0.0-beta.105" : "0.0.0-test";
1732
+ var VERSION = true ? "4.0.0-beta.107" : "0.0.0-test";
1721
1733
 
1722
1734
  // src/bedrock-sigv4-fetch.ts
1723
1735
  function createSigV4FetchFunction(getCredentials, fetch = globalThis.fetch) {