@wmaurer/effect-ai-amazon-bedrock 0.2.0 → 0.4.0

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.
@@ -20,7 +20,11 @@
20
20
  * loudly with `AiError.InvalidUserInputError` rather than silently dropping
21
21
  * content. Prompt caching is opt-in per message or per part via provider
22
22
  * options. Citations are opt-in per document, and the citation blocks and
23
- * deltas Converse returns are surfaced as document source parts.
23
+ * deltas Converse returns are surfaced as document source parts. A guardrail
24
+ * applies through `Config.guardrailConfig`, and `guardContent` options on text
25
+ * parts, png and jpeg file parts, and system messages choose what it
26
+ * evaluates. Every finish part reports the raw stop reason and, when the trace
27
+ * is enabled, what the guardrail did.
24
28
  *
25
29
  * @stability unstable
26
30
  * @since 0.1.0
@@ -42,6 +46,7 @@ import * as Result from "effect/Result";
42
46
  import * as SchemaAST from "effect/SchemaAST";
43
47
  import * as Stream from "effect/Stream";
44
48
  import { AmazonBedrockClient } from "./AmazonBedrockClient.js";
49
+ import * as InternalGuardrails from "./internal/guardrails.js";
45
50
  import * as InternalUtilities from "./internal/utilities.js";
46
51
  /**
47
52
  * Marks a tool as the end of the cacheable prefix of the tool list.
@@ -163,6 +168,24 @@ const reasoningTextInfo = signature => ({
163
168
  type: "reasoningText",
164
169
  signature: signature ?? null
165
170
  });
171
+ const textBlock = (text, options) => {
172
+ const guard = options.amazonBedrock?.guardContent;
173
+ if (Predicate.isNullish(guard)) {
174
+ return {
175
+ text
176
+ };
177
+ }
178
+ return {
179
+ guardContent: {
180
+ text: guard === true ? {
181
+ text
182
+ } : {
183
+ text,
184
+ qualifiers: guard.qualifiers
185
+ }
186
+ }
187
+ };
188
+ };
166
189
  // =============================================================================
167
190
  // Configuration
168
191
  // =============================================================================
@@ -171,12 +194,17 @@ const reasoningTextInfo = signature => ({
171
194
  *
172
195
  * **Details**
173
196
  *
174
- * Derived from `ConverseRequest`, minus the fields built from the prompt, so
175
- * every Converse request parameter is settable per request. That includes
176
- * `additionalModelRequestFields`, which carries inference parameters specific
177
- * to the target model — among them extended thinking on Anthropic models. The
178
- * thinking budget is drawn from the same ceiling as the visible answer, so
179
- * `inferenceConfig.maxTokens` must exceed `budget_tokens`.
197
+ * Derived from `ConverseStreamRequest`, minus the fields built from the
198
+ * prompt, so every Converse request parameter is settable per request. That
199
+ * includes `additionalModelRequestFields`, which carries inference parameters
200
+ * specific to the target model — among them extended thinking on Anthropic
201
+ * models. The thinking budget is drawn from the same ceiling as the visible
202
+ * answer, so `inferenceConfig.maxTokens` must exceed `budget_tokens`.
203
+ *
204
+ * It also includes `guardrailConfig` (see {@link GuardrailConfig}). An
205
+ * override replaces the whole object, and `guardrailConfig: undefined` turns
206
+ * off a layer's guardrail for one request. `generateText` does not send
207
+ * `streamProcessingMode`.
180
208
  *
181
209
  * **Example** (Enabling extended thinking for one request)
182
210
  *
@@ -283,9 +311,9 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
283
311
  }
284
312
  };
285
313
  } else {
286
- // The object is asked for through a tool, which replaces the
287
- // caller's tools. A model that rejects a forced `toolChoice` gets
288
- // the tool unforced, and the request says to call it.
314
+ // The object tool is the only tool, so `any` forces it, and
315
+ // Mistral Large 2402 and Pixtral Large accept `any` but reject a
316
+ // named `tool`.
289
317
  const forced = forcedToolChoice ?? capabilities.supportsForcedToolChoice;
290
318
  nameMapper = new Tool.NameMapper([]);
291
319
  toolConfig = {
@@ -299,9 +327,7 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
299
327
  }
300
328
  }],
301
329
  toolChoice: forced ? {
302
- tool: {
303
- name: responseFormat.objectName
304
- }
330
+ any: {}
305
331
  } : {
306
332
  auto: {}
307
333
  }
@@ -346,8 +372,9 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
346
372
  const {
347
373
  documents,
348
374
  nameMapper,
349
- request
375
+ request: streamRequest
350
376
  } = yield* makeRequest(options);
377
+ const request = toConverseRequest(streamRequest);
351
378
  const rawResponse = yield* client.converse({
352
379
  payload: request
353
380
  });
@@ -366,6 +393,23 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
366
393
  }, (effect, _options) => effect.pipe(Stream.unwrap))
367
394
  });
368
395
  });
396
+ const toConverseRequest = request => {
397
+ const {
398
+ guardrailConfig,
399
+ ...rest
400
+ } = request;
401
+ if (Predicate.isUndefined(guardrailConfig)) {
402
+ return rest;
403
+ }
404
+ const {
405
+ streamProcessingMode: _,
406
+ ...converseGuardrail
407
+ } = guardrailConfig;
408
+ return {
409
+ ...rest,
410
+ guardrailConfig: converseGuardrail
411
+ };
412
+ };
369
413
  /**
370
414
  * Creates a layer for the Amazon Bedrock language model.
371
415
  *
@@ -494,6 +538,39 @@ const documentName = (fileName, position) => {
494
538
  }
495
539
  return `document ${position}`;
496
540
  };
541
+ const guardedImageFormats = {
542
+ "image/jpeg": "jpeg",
543
+ "image/png": "png"
544
+ };
545
+ const guardedImage = /*#__PURE__*/Effect.fnUntraced(function* (part) {
546
+ const format = guardedImageFormats[part.mediaType];
547
+ if (Predicate.isUndefined(format)) {
548
+ const reason = part.mediaType === "image/*" ? "its format is unknown, and a guarded image must be image/png or image/jpeg" : part.mediaType.startsWith("image/") ? "a guarded image must be image/png or image/jpeg" : "only text parts and png or jpeg images can be guarded";
549
+ return yield* AiError.make({
550
+ module: "AmazonBedrockLanguageModel",
551
+ method: "prepareMessages",
552
+ reason: new AiError.InvalidUserInputError({
553
+ description: `Unsupported guardContent on a file part of media type '${part.mediaType}' - ${reason}`
554
+ })
555
+ });
556
+ }
557
+ const source = yield* fileSource(part.data);
558
+ if (Predicate.isUndefined(source.bytes)) {
559
+ return yield* AiError.make({
560
+ module: "AmazonBedrockLanguageModel",
561
+ method: "prepareMessages",
562
+ reason: new AiError.InvalidUserInputError({
563
+ description: `Unsupported guardContent on an image at '${source.s3Location?.uri}' - a guarded image ` + "must be sent as bytes or base64, not as an s3:// location"
564
+ })
565
+ });
566
+ }
567
+ return {
568
+ format,
569
+ source: {
570
+ bytes: source.bytes
571
+ }
572
+ };
573
+ });
497
574
  const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* (options) {
498
575
  const groups = groupMessages(options.prompt);
499
576
  const system = [];
@@ -518,9 +595,7 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* (options) {
518
595
  });
519
596
  }
520
597
  for (const message of group.messages) {
521
- system.push({
522
- text: message.content
523
- });
598
+ system.push(textBlock(message.content, message.options));
524
599
  const cachePoint = getCachePoint(message);
525
600
  if (Predicate.isNotNull(cachePoint)) {
526
601
  system.push({
@@ -539,11 +614,18 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* (options) {
539
614
  {
540
615
  for (const part of message.content) {
541
616
  if (part.type === "text") {
542
- content.push({
543
- text: part.text
544
- });
617
+ content.push(textBlock(part.text, part.options));
545
618
  pushCachePoint(content, part);
546
619
  } else if (part.type === "file") {
620
+ if (part.options.amazonBedrock?.guardContent === true) {
621
+ content.push({
622
+ guardContent: {
623
+ image: yield* guardedImage(part)
624
+ }
625
+ });
626
+ pushCachePoint(content, part);
627
+ continue;
628
+ }
547
629
  const imageFormat = imageFormats[part.mediaType];
548
630
  if (Predicate.isNotUndefined(imageFormat)) {
549
631
  content.push({
@@ -646,6 +728,15 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* (options) {
646
728
  const part = message.content[k];
647
729
  const isLastPart = k === message.content.length - 1;
648
730
  if (part.type === "text") {
731
+ if (!Predicate.isNullish(part.options.amazonBedrock?.guardContent)) {
732
+ return yield* AiError.make({
733
+ module: "AmazonBedrockLanguageModel",
734
+ method: "prepareMessages",
735
+ reason: new AiError.InvalidUserInputError({
736
+ description: "Unsupported guardContent on an assistant text part - this provider guards only " + "user text parts, user png and jpeg images, and system messages"
737
+ })
738
+ });
739
+ }
649
740
  // Skip empty text blocks
650
741
  if (part.text.trim().length === 0) {
651
742
  continue;
@@ -729,16 +820,36 @@ const tryToolJsonSchema = (tool, method) => Effect.try({
729
820
  catch: error => unsupportedSchemaError(error, method)
730
821
  });
731
822
  /**
732
- * Returns what a model accepts for structured output, optimistically assuming
733
- * modern capabilities for unknown IDs. Matched by substring, so foundation
734
- * model ids and inference profile ids (`eu.anthropic.…`) both resolve.
823
+ * Returns what a model accepts for structured output, looked up by the
824
+ * provider that the model ID names: `anthropic` in
825
+ * `eu.anthropic.claude-opus-4-8`, `amazon` in `amazon.nova-pro-v1:0`. A
826
+ * foundation model or inference profile ARN names its model at the end. Other
827
+ * ARNs, such as an application inference profile or a provisioned model, do
828
+ * not. They get the Claude rules, which give them the native structured output
829
+ * and forced tool of 0.2.0, on the unmeasured assumption that most of them
830
+ * wrap a Claude model.
735
831
  *
832
+ * Probes on 2026-10-17, one run per model and call unless noted:
833
+ *
834
+ * - Only Claude gets native structured output. Nova, Mistral Large 2402 and
835
+ * Pixtral Large in eu-west-1, and Llama, Palmyra, DeepSeek R1, Mistral 7B
836
+ * and Mixtral in us-east-1, answer `outputConfig` with a 400. gpt-oss-120b
837
+ * accepts it but wrote text before the JSON in 3 of 4 runs.
838
+ * - The forced object tool, sent as `{ any: {} }`, returned the object on 15
839
+ * of 16 models in eu-west-1, Claude Haiku 4.5 and Opus 4.8 included, and
840
+ * on all 17 models in us-east-1 that accept a forced tool. Magistral Small
841
+ * fails every object path.
842
+ * - Llama 3.1, 3.3 and 4 and Palmyra X4 and X5 (`meta`, `writer`) answer
843
+ * `any` with a 400 in us-east-1, and so does each of them that the probe
844
+ * sent a named `tool`, all but Llama 3.1 8B. They get the unforced tool. It
845
+ * returned the object on Llama 3.1 8B, Llama 4 Scout and Maverick and
846
+ * Palmyra X5, and a wrong object on Llama 3.1 70B and 3.3 70B.
736
847
  * - Claude models before Opus 4.1 / Sonnet 4.5 predate structured output, as
737
848
  * in the Anthropic provider. This is not checked on Bedrock: a probe of 17
738
- * Claude inference profiles in eu-west-1 on 2026-10-17 found Claude 3 Haiku,
739
- * Claude 3 Sonnet and Sonnet 4 at end of life there, and did not try Claude
740
- * 3 Opus, 3.5 Haiku, 3.5 Sonnet, 3.7 Sonnet, Opus 4 or Opus 4.1.
741
- * - Every Claude profile that served the probe's requests (12 of 17)
849
+ * Claude inference profiles in eu-west-1 found Claude 3 Haiku, Claude 3
850
+ * Sonnet and Sonnet 4 at end of life there, and did not try Claude 3 Opus,
851
+ * 3.5 Haiku, 3.5 Sonnet, 3.7 Sonnet, Opus 4 or Opus 4.1.
852
+ * - Every Claude profile that served that probe's requests (12 of 17)
742
853
  * accepted `outputConfig.textFormat`: Haiku 4.5 and 5.5, Opus 4.5 to 4.8, 5
743
854
  * and 5.5, and Sonnet 4.5, 4.6, 5 and 5.5. Fable 5 and 5.1 rejected every
744
855
  * request, with or without `textFormat`, with a data-retention
@@ -751,13 +862,33 @@ const tryToolJsonSchema = (tool, method) => Effect.try({
751
862
  * @see https://platform.claude.com/docs/en/build-with-claude/structured-outputs
752
863
  */
753
864
  const getModelCapabilities = modelId => {
754
- const supportsForcedToolChoice = !(modelId.includes("claude-opus-5-5") || modelId.includes("claude-sonnet-5-5") || modelId.includes("claude-fable-5-1") || modelId.includes("claude-mythos-5-1"));
755
- const supportsStructuredOutput = !(modelId.includes("claude-sonnet-4-0") || modelId.includes("claude-sonnet-4-20250514") || modelId.includes("claude-3-7-sonnet") || modelId.includes("claude-opus-4-0") || modelId.includes("claude-opus-4-20250514") || modelId.includes("claude-3-"));
756
- return {
757
- supportsStructuredOutput,
758
- supportsForcedToolChoice
759
- };
865
+ const named = modelId.startsWith("arn:") ? namingArn.exec(modelId)?.[1] : modelId;
866
+ if (Predicate.isUndefined(named)) {
867
+ return claudeCapabilities(modelId);
868
+ }
869
+ // `provider.model`, or `geo.provider.model` for an inference profile.
870
+ const [first = "", second = ""] = named.split(".");
871
+ const byProvider = capabilitiesByProvider.get(first) ?? capabilitiesByProvider.get(second);
872
+ return Predicate.isUndefined(byProvider) ? otherProvider : byProvider(named);
760
873
  };
874
+ // Of the ARNs Converse accepts, only these two end in the ID of the model
875
+ // they invoke.
876
+ const namingArn = /^arn:[^:]+:bedrock:[^:]*:[^:]*:(?:foundation-model|inference-profile)\/(.+)$/;
877
+ const otherProvider = {
878
+ supportsStructuredOutput: false,
879
+ supportsForcedToolChoice: true
880
+ };
881
+ const unforcedTool = {
882
+ supportsStructuredOutput: false,
883
+ supportsForcedToolChoice: false
884
+ };
885
+ const claudeWithoutStructuredOutput = ["claude-sonnet-4-0", "claude-sonnet-4-20250514", "claude-3-7-sonnet", "claude-opus-4-0", "claude-opus-4-20250514", "claude-3-"];
886
+ const claudeWithoutForcedToolChoice = ["claude-opus-5-5", "claude-sonnet-5-5", "claude-fable-5-1", "claude-mythos-5-1"];
887
+ const claudeCapabilities = modelId => ({
888
+ supportsStructuredOutput: !claudeWithoutStructuredOutput.some(id => modelId.includes(id)),
889
+ supportsForcedToolChoice: !claudeWithoutForcedToolChoice.some(id => modelId.includes(id))
890
+ });
891
+ const capabilitiesByProvider = /*#__PURE__*/new Map([["anthropic", claudeCapabilities], ["meta", () => unforcedTool], ["writer", () => unforcedTool]]);
761
892
  const tryJsonSchema = (schema, method) => Effect.try({
762
893
  try: () => Tool.getJsonSchemaFromSchema(schema, {
763
894
  transformer: toCodecAnthropic
@@ -965,6 +1096,22 @@ const makeResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, response
965
1096
  const finishReason = hasObjectTool && response.stopReason === "tool_use" ? "stop" : InternalUtilities.resolveFinishReason(response.stopReason);
966
1097
  const cacheReadTokens = response.usage.cacheReadInputTokens ?? 0;
967
1098
  const cacheWriteTokens = response.usage.cacheWriteInputTokens ?? 0;
1099
+ const metadata = InternalGuardrails.finishMetadata(response.stopReason, response.trace);
1100
+ if (options.responseFormat.type === "json") {
1101
+ const text = parts.flatMap(part => part.type === "text" ? [part.text] : []).join("");
1102
+ if (InternalGuardrails.blocksObject(response.stopReason, text)) {
1103
+ return yield* AiError.make({
1104
+ module: "AmazonBedrockLanguageModel",
1105
+ method: "generateObject",
1106
+ reason: new AiError.ContentPolicyError({
1107
+ description: "An Amazon Bedrock guardrail intervened, and the response holds no JSON object. " + `Bedrock answered: ${truncate(text, 200)}`,
1108
+ metadata: {
1109
+ amazonBedrock: metadata
1110
+ }
1111
+ })
1112
+ });
1113
+ }
1114
+ }
968
1115
  parts.push({
969
1116
  type: "finish",
970
1117
  reason: finishReason,
@@ -983,7 +1130,10 @@ const makeResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, response
983
1130
  },
984
1131
  // `Response.FinishPart` models `response` with `Schema.UndefinedOr`, which
985
1132
  // requires the key; HTTP response details are not surfaced by the client.
986
- response: undefined
1133
+ response: undefined,
1134
+ metadata: {
1135
+ amazonBedrock: metadata
1136
+ }
987
1137
  });
988
1138
  return parts;
989
1139
  });
@@ -1011,6 +1161,7 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1011
1161
  // (which AWS sends AFTER messageStop and which carries the usage), so finish
1012
1162
  // reports the real token counts rather than the pre-metadata zeros.
1013
1163
  let finishReason = "unknown";
1164
+ let stopReason = null;
1014
1165
  return stream.pipe(Stream.mapEffect(Effect.fnUntraced(function* (event) {
1015
1166
  const parts = [];
1016
1167
  switch (event.type) {
@@ -1152,6 +1303,17 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1152
1303
  const block = toolBlocks.get(index);
1153
1304
  if (Predicate.isNotUndefined(block)) {
1154
1305
  toolBlocks.delete(index);
1306
+ const params = yield* Effect.try({
1307
+ // A tool taking no arguments streams no deltas at all.
1308
+ try: () => Tool.unsafeSecureJsonParse(block.params.length === 0 ? "{}" : block.params),
1309
+ catch: () => AiError.make({
1310
+ module: "AmazonBedrockLanguageModel",
1311
+ method: "makeStreamResponse",
1312
+ reason: new AiError.InvalidOutputError({
1313
+ description: `Bedrock streamed input for the \`${block.name}\` tool that is not valid JSON: ` + truncate(block.params, 500)
1314
+ })
1315
+ })
1316
+ });
1155
1317
  parts.push({
1156
1318
  type: "tool-params-end",
1157
1319
  id: block.id
@@ -1160,8 +1322,7 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1160
1322
  type: "tool-call",
1161
1323
  id: block.id,
1162
1324
  name: block.name,
1163
- // A tool taking no arguments streams no deltas at all.
1164
- params: Tool.unsafeSecureJsonParse(block.params.length === 0 ? "{}" : block.params),
1325
+ params,
1165
1326
  providerExecuted: false
1166
1327
  });
1167
1328
  }
@@ -1172,6 +1333,7 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1172
1333
  // Defer the `finish` part to the trailing `metadata` event (usage
1173
1334
  // is still zero here — metadata has not arrived yet).
1174
1335
  finishReason = InternalUtilities.resolveFinishReason(event.messageStop.stopReason);
1336
+ stopReason = event.messageStop.stopReason;
1175
1337
  break;
1176
1338
  }
1177
1339
  case "metadata":
@@ -1200,7 +1362,10 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1200
1362
  }
1201
1363
  },
1202
1364
  // See `makeResponse`: the key is required (`Schema.UndefinedOr`).
1203
- response: undefined
1365
+ response: undefined,
1366
+ metadata: {
1367
+ amazonBedrock: InternalGuardrails.finishMetadata(stopReason, event.metadata.trace)
1368
+ }
1204
1369
  });
1205
1370
  break;
1206
1371
  }
@@ -1300,4 +1465,5 @@ const groupMessages = prompt => {
1300
1465
  * the group.
1301
1466
  */
1302
1467
  const trimIfLast = (isLastGroup, isLastMessage, isLastPart, text) => isLastGroup && isLastMessage && isLastPart ? text.trim() : text;
1468
+ const truncate = (text, maxLength) => text.length > maxLength ? `${text.slice(0, maxLength)}...` : text;
1303
1469
  //# sourceMappingURL=AmazonBedrockLanguageModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AmazonBedrockLanguageModel.js","names":[],"sources":["../src/AmazonBedrockLanguageModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"AmazonBedrockLanguageModel.js","names":[],"sources":["../src/AmazonBedrockLanguageModel.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}