@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/dist/index.mjs CHANGED
@@ -450,6 +450,9 @@ async function convertToBedrockChatMessages(prompt) {
450
450
  }
451
451
  case "tool": {
452
452
  for (const part of content) {
453
+ if (part.type === "tool-approval-response") {
454
+ continue;
455
+ }
453
456
  let toolResultContent;
454
457
  const output = part.output;
455
458
  switch (output.type) {
@@ -702,7 +705,7 @@ function mapBedrockFinishReason(finishReason, isJsonResponseFromTool) {
702
705
  case "tool_use":
703
706
  return isJsonResponseFromTool ? "stop" : "tool-calls";
704
707
  default:
705
- return "unknown";
708
+ return "other";
706
709
  }
707
710
  }
708
711
 
@@ -933,7 +936,7 @@ var BedrockChatLanguageModel = class {
933
936
  return combineHeaders(await resolve(this.config.headers), headers);
934
937
  }
935
938
  async doGenerate(options) {
936
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
939
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
937
940
  const {
938
941
  command: args,
939
942
  warnings,
@@ -1022,10 +1025,13 @@ var BedrockChatLanguageModel = class {
1022
1025
  } : void 0;
1023
1026
  return {
1024
1027
  content,
1025
- finishReason: mapBedrockFinishReason(
1026
- response.stopReason,
1027
- isJsonResponseFromTool
1028
- ),
1028
+ finishReason: {
1029
+ unified: mapBedrockFinishReason(
1030
+ response.stopReason,
1031
+ isJsonResponseFromTool
1032
+ ),
1033
+ raw: (_k = response.stopReason) != null ? _k : void 0
1034
+ },
1029
1035
  usage: convertBedrockUsage(response.usage),
1030
1036
  response: {
1031
1037
  // TODO add id, timestamp, etc
@@ -1054,7 +1060,10 @@ var BedrockChatLanguageModel = class {
1054
1060
  abortSignal: options.abortSignal,
1055
1061
  fetch: this.config.fetch
1056
1062
  });
1057
- let finishReason = "unknown";
1063
+ let finishReason = {
1064
+ unified: "other",
1065
+ raw: void 0
1066
+ };
1058
1067
  let usage = void 0;
1059
1068
  let providerMetadata = void 0;
1060
1069
  let isJsonResponseFromTool = false;
@@ -1067,9 +1076,9 @@ var BedrockChatLanguageModel = class {
1067
1076
  controller.enqueue({ type: "stream-start", warnings });
1068
1077
  },
1069
1078
  transform(chunk, controller) {
1070
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
1079
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
1071
1080
  function enqueueError(bedrockError) {
1072
- finishReason = "error";
1081
+ finishReason = { unified: "error", raw: void 0 };
1073
1082
  controller.enqueue({ type: "error", error: bedrockError });
1074
1083
  }
1075
1084
  if (options.includeRawChunks) {
@@ -1097,17 +1106,20 @@ var BedrockChatLanguageModel = class {
1097
1106
  return;
1098
1107
  }
1099
1108
  if (value.messageStop) {
1100
- finishReason = mapBedrockFinishReason(
1101
- value.messageStop.stopReason,
1102
- isJsonResponseFromTool
1103
- );
1104
- stopSequence = (_b = (_a = value.messageStop.additionalModelResponseFields) == null ? void 0 : _a.stop_sequence) != null ? _b : null;
1109
+ finishReason = {
1110
+ unified: mapBedrockFinishReason(
1111
+ value.messageStop.stopReason,
1112
+ isJsonResponseFromTool
1113
+ ),
1114
+ raw: (_a = value.messageStop.stopReason) != null ? _a : void 0
1115
+ };
1116
+ stopSequence = (_c = (_b = value.messageStop.additionalModelResponseFields) == null ? void 0 : _b.stop_sequence) != null ? _c : null;
1105
1117
  }
1106
1118
  if (value.metadata) {
1107
1119
  if (value.metadata.usage) {
1108
1120
  usage = value.metadata.usage;
1109
1121
  }
1110
- const cacheUsage = ((_c = value.metadata.usage) == null ? void 0 : _c.cacheWriteInputTokens) != null ? {
1122
+ const cacheUsage = ((_d = value.metadata.usage) == null ? void 0 : _d.cacheWriteInputTokens) != null ? {
1111
1123
  usage: {
1112
1124
  cacheWriteInputTokens: value.metadata.usage.cacheWriteInputTokens
1113
1125
  }
@@ -1124,7 +1136,7 @@ var BedrockChatLanguageModel = class {
1124
1136
  };
1125
1137
  }
1126
1138
  }
1127
- if (((_d = value.contentBlockStart) == null ? void 0 : _d.contentBlockIndex) != null && !((_f = (_e = value.contentBlockStart) == null ? void 0 : _e.start) == null ? void 0 : _f.toolUse)) {
1139
+ if (((_e = value.contentBlockStart) == null ? void 0 : _e.contentBlockIndex) != null && !((_g = (_f = value.contentBlockStart) == null ? void 0 : _f.start) == null ? void 0 : _g.toolUse)) {
1128
1140
  const blockIndex = value.contentBlockStart.contentBlockIndex;
1129
1141
  contentBlocks[blockIndex] = { type: "text" };
1130
1142
  controller.enqueue({
@@ -1132,7 +1144,7 @@ var BedrockChatLanguageModel = class {
1132
1144
  id: String(blockIndex)
1133
1145
  });
1134
1146
  }
1135
- if (((_g = value.contentBlockDelta) == null ? void 0 : _g.delta) && "text" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.text) {
1147
+ if (((_h = value.contentBlockDelta) == null ? void 0 : _h.delta) && "text" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.text) {
1136
1148
  const blockIndex = value.contentBlockDelta.contentBlockIndex || 0;
1137
1149
  if (contentBlocks[blockIndex] == null) {
1138
1150
  contentBlocks[blockIndex] = { type: "text" };
@@ -1147,7 +1159,7 @@ var BedrockChatLanguageModel = class {
1147
1159
  delta: value.contentBlockDelta.delta.text
1148
1160
  });
1149
1161
  }
1150
- if (((_h = value.contentBlockStop) == null ? void 0 : _h.contentBlockIndex) != null) {
1162
+ if (((_i = value.contentBlockStop) == null ? void 0 : _i.contentBlockIndex) != null) {
1151
1163
  const blockIndex = value.contentBlockStop.contentBlockIndex;
1152
1164
  const contentBlock = contentBlocks[blockIndex];
1153
1165
  if (contentBlock != null) {
@@ -1193,7 +1205,7 @@ var BedrockChatLanguageModel = class {
1193
1205
  delete contentBlocks[blockIndex];
1194
1206
  }
1195
1207
  }
1196
- if (((_i = value.contentBlockDelta) == null ? void 0 : _i.delta) && "reasoningContent" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.reasoningContent) {
1208
+ if (((_j = value.contentBlockDelta) == null ? void 0 : _j.delta) && "reasoningContent" in value.contentBlockDelta.delta && value.contentBlockDelta.delta.reasoningContent) {
1197
1209
  const blockIndex = value.contentBlockDelta.contentBlockIndex || 0;
1198
1210
  const reasoningContent = value.contentBlockDelta.delta.reasoningContent;
1199
1211
  if ("text" in reasoningContent && reasoningContent.text) {
@@ -1234,7 +1246,7 @@ var BedrockChatLanguageModel = class {
1234
1246
  }
1235
1247
  }
1236
1248
  const contentBlockStart = value.contentBlockStart;
1237
- if (((_j = contentBlockStart == null ? void 0 : contentBlockStart.start) == null ? void 0 : _j.toolUse) != null) {
1249
+ if (((_k = contentBlockStart == null ? void 0 : contentBlockStart.start) == null ? void 0 : _k.toolUse) != null) {
1238
1250
  const toolUse = contentBlockStart.start.toolUse;
1239
1251
  const blockIndex = contentBlockStart.contentBlockIndex;
1240
1252
  const isJsonResponseTool = usesJsonResponseTool && toolUse.name === "json";
@@ -1258,7 +1270,7 @@ var BedrockChatLanguageModel = class {
1258
1270
  const blockIndex = contentBlockDelta.contentBlockIndex;
1259
1271
  const contentBlock = contentBlocks[blockIndex];
1260
1272
  if ((contentBlock == null ? void 0 : contentBlock.type) === "tool-call") {
1261
- const delta = (_k = contentBlockDelta.delta.toolUse.input) != null ? _k : "";
1273
+ const delta = (_l = contentBlockDelta.delta.toolUse.input) != null ? _l : "";
1262
1274
  if (!contentBlock.isJsonResponseTool) {
1263
1275
  controller.enqueue({
1264
1276
  type: "tool-input-delta",
@@ -1734,7 +1746,7 @@ import {
1734
1746
  import { AwsV4Signer } from "aws4fetch";
1735
1747
 
1736
1748
  // src/version.ts
1737
- var VERSION = true ? "4.0.0-beta.105" : "0.0.0-test";
1749
+ var VERSION = true ? "4.0.0-beta.107" : "0.0.0-test";
1738
1750
 
1739
1751
  // src/bedrock-sigv4-fetch.ts
1740
1752
  function createSigV4FetchFunction(getCredentials, fetch = globalThis.fetch) {