@wmaurer/effect-ai-amazon-bedrock 0.3.0 → 0.4.1

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
@@ -30,6 +34,7 @@ import { toCodecAnthropic } from "effect/ai/AnthropicStructuredOutput";
30
34
  import * as IdGenerator from "effect/ai/IdGenerator";
31
35
  import * as LanguageModel from "effect/ai/LanguageModel";
32
36
  import * as AiModel from "effect/ai/Model";
37
+ import { addGenAIAnnotations } from "effect/ai/Telemetry";
33
38
  import * as Tool from "effect/ai/Tool";
34
39
  import * as Context from "effect/Context";
35
40
  import * as DateTime from "effect/DateTime";
@@ -39,9 +44,11 @@ import { dual } from "effect/Function";
39
44
  import * as Layer from "effect/Layer";
40
45
  import * as Predicate from "effect/Predicate";
41
46
  import * as Result from "effect/Result";
47
+ import * as Schema from "effect/Schema";
42
48
  import * as SchemaAST from "effect/SchemaAST";
43
49
  import * as Stream from "effect/Stream";
44
50
  import { AmazonBedrockClient } from "./AmazonBedrockClient.js";
51
+ import * as InternalGuardrails from "./internal/guardrails.js";
45
52
  import * as InternalUtilities from "./internal/utilities.js";
46
53
  /**
47
54
  * Marks a tool as the end of the cacheable prefix of the tool list.
@@ -163,6 +170,24 @@ const reasoningTextInfo = signature => ({
163
170
  type: "reasoningText",
164
171
  signature: signature ?? null
165
172
  });
173
+ const textBlock = (text, options) => {
174
+ const guard = options.amazonBedrock?.guardContent;
175
+ if (Predicate.isNullish(guard)) {
176
+ return {
177
+ text
178
+ };
179
+ }
180
+ return {
181
+ guardContent: {
182
+ text: guard === true ? {
183
+ text
184
+ } : {
185
+ text,
186
+ qualifiers: guard.qualifiers
187
+ }
188
+ }
189
+ };
190
+ };
166
191
  // =============================================================================
167
192
  // Configuration
168
193
  // =============================================================================
@@ -171,12 +196,17 @@ const reasoningTextInfo = signature => ({
171
196
  *
172
197
  * **Details**
173
198
  *
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`.
199
+ * Derived from `ConverseStreamRequest`, minus the fields built from the
200
+ * prompt, so every Converse request parameter is settable per request. That
201
+ * includes `additionalModelRequestFields`, which carries inference parameters
202
+ * specific to the target model — among them extended thinking on Anthropic
203
+ * models. The thinking budget is drawn from the same ceiling as the visible
204
+ * answer, so `inferenceConfig.maxTokens` must exceed `budget_tokens`.
205
+ *
206
+ * It also includes `guardrailConfig` (see {@link GuardrailConfig}). An
207
+ * override replaces the whole object, and `guardrailConfig: undefined` turns
208
+ * off a layer's guardrail for one request. `generateText` does not send
209
+ * `streamProcessingMode`.
180
210
  *
181
211
  * **Example** (Enabling extended thinking for one request)
182
212
  *
@@ -344,11 +374,16 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
344
374
  const {
345
375
  documents,
346
376
  nameMapper,
347
- request
377
+ request: streamRequest
348
378
  } = yield* makeRequest(options);
379
+ const request = toConverseRequest(streamRequest);
380
+ annotateRequest(options.span, request);
349
381
  const rawResponse = yield* client.converse({
350
382
  payload: request
351
383
  });
384
+ // Before `makeResponse`, which fails a guardrail-blocked object with a
385
+ // `ContentPolicyError` after the call has already spent its tokens.
386
+ annotateResponse(options.span, request.modelId, rawResponse.stopReason, rawResponse.usage);
352
387
  return yield* makeResponse(request, rawResponse, options, nameMapper, documents);
353
388
  }),
354
389
  streamText: Effect.fnUntraced(function* (options) {
@@ -357,13 +392,31 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* ({
357
392
  nameMapper,
358
393
  request
359
394
  } = yield* makeRequest(options);
395
+ annotateRequest(options.span, request);
360
396
  const stream = client.converseStream({
361
397
  payload: request
362
398
  });
363
- return yield* makeStreamResponse(request, stream, nameMapper, documents);
399
+ return yield* makeStreamResponse(request, stream, options.tools, nameMapper, documents, options.span);
364
400
  }, (effect, _options) => effect.pipe(Stream.unwrap))
365
401
  });
366
402
  });
403
+ const toConverseRequest = request => {
404
+ const {
405
+ guardrailConfig,
406
+ ...rest
407
+ } = request;
408
+ if (Predicate.isUndefined(guardrailConfig)) {
409
+ return rest;
410
+ }
411
+ const {
412
+ streamProcessingMode: _,
413
+ ...converseGuardrail
414
+ } = guardrailConfig;
415
+ return {
416
+ ...rest,
417
+ guardrailConfig: converseGuardrail
418
+ };
419
+ };
367
420
  /**
368
421
  * Creates a layer for the Amazon Bedrock language model.
369
422
  *
@@ -411,16 +464,41 @@ const documentFormats = {
411
464
  };
412
465
  /** Matches any absolute url, so a non-s3 one is rejected instead of being treated as base64 data. */
413
466
  const urlPattern = /^[a-z][a-z0-9+.-]*:\/\//i;
467
+ /** Matches the header of a `data:` url, up to the comma before its payload. */
468
+ const dataUrlPattern = /^data:[^,]*?(;base64)?,/i;
414
469
  /**
415
470
  * Resolves file part data into a Converse media source.
416
471
  *
417
472
  * **Details**
418
473
  *
419
474
  * String data is already base64 per `Prompt.FilePart`, so it is passed through
420
- * untouched. The only remote source Converse accepts is an S3 location.
475
+ * untouched. A `data:` url has no `://`, so it is matched on its own, and only
476
+ * its base64 payload is sent. The only remote source Converse accepts is an S3
477
+ * location.
421
478
  */
422
479
  const fileSource = /*#__PURE__*/Effect.fnUntraced(function* (data) {
423
- if (data instanceof URL || typeof data === "string" && urlPattern.test(data)) {
480
+ if (data instanceof Uint8Array) {
481
+ return {
482
+ bytes: Base64.encode(data)
483
+ };
484
+ }
485
+ const string = data instanceof URL ? data.href : data;
486
+ const dataUrl = dataUrlPattern.exec(string);
487
+ if (dataUrl !== null) {
488
+ if (Predicate.isUndefined(dataUrl[1])) {
489
+ return yield* AiError.make({
490
+ module: "AmazonBedrockLanguageModel",
491
+ method: "prepareMessages",
492
+ reason: new AiError.InvalidUserInputError({
493
+ description: `Unsupported file url '${dataUrl[0]}...' - a data url must have a base64 payload`
494
+ })
495
+ });
496
+ }
497
+ return {
498
+ bytes: string.slice(dataUrl[0].length)
499
+ };
500
+ }
501
+ if (data instanceof URL || urlPattern.test(data)) {
424
502
  const url = data instanceof URL ? data : new URL(data);
425
503
  if (url.protocol !== "s3:") {
426
504
  return yield* AiError.make({
@@ -438,7 +516,7 @@ const fileSource = /*#__PURE__*/Effect.fnUntraced(function* (data) {
438
516
  };
439
517
  }
440
518
  return {
441
- bytes: typeof data === "string" ? data : Base64.encode(data)
519
+ bytes: data
442
520
  };
443
521
  });
444
522
  /**
@@ -463,7 +541,7 @@ const documentSource = /*#__PURE__*/Effect.fnUntraced(function* (mediaType, name
463
541
  text: new TextDecoder().decode(data)
464
542
  };
465
543
  }
466
- const decoded = Base64.decodeString(data);
544
+ const decoded = Base64.decodeString(source.bytes);
467
545
  if (Result.isFailure(decoded)) {
468
546
  return yield* AiError.make({
469
547
  module: "AmazonBedrockLanguageModel",
@@ -492,6 +570,39 @@ const documentName = (fileName, position) => {
492
570
  }
493
571
  return `document ${position}`;
494
572
  };
573
+ const guardedImageFormats = {
574
+ "image/jpeg": "jpeg",
575
+ "image/png": "png"
576
+ };
577
+ const guardedImage = /*#__PURE__*/Effect.fnUntraced(function* (part) {
578
+ const format = guardedImageFormats[part.mediaType];
579
+ if (Predicate.isUndefined(format)) {
580
+ 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";
581
+ return yield* AiError.make({
582
+ module: "AmazonBedrockLanguageModel",
583
+ method: "prepareMessages",
584
+ reason: new AiError.InvalidUserInputError({
585
+ description: `Unsupported guardContent on a file part of media type '${part.mediaType}' - ${reason}`
586
+ })
587
+ });
588
+ }
589
+ const source = yield* fileSource(part.data);
590
+ if (Predicate.isUndefined(source.bytes)) {
591
+ return yield* AiError.make({
592
+ module: "AmazonBedrockLanguageModel",
593
+ method: "prepareMessages",
594
+ reason: new AiError.InvalidUserInputError({
595
+ 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"
596
+ })
597
+ });
598
+ }
599
+ return {
600
+ format,
601
+ source: {
602
+ bytes: source.bytes
603
+ }
604
+ };
605
+ });
495
606
  const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* (options) {
496
607
  const groups = groupMessages(options.prompt);
497
608
  const system = [];
@@ -516,9 +627,7 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* (options) {
516
627
  });
517
628
  }
518
629
  for (const message of group.messages) {
519
- system.push({
520
- text: message.content
521
- });
630
+ system.push(textBlock(message.content, message.options));
522
631
  const cachePoint = getCachePoint(message);
523
632
  if (Predicate.isNotNull(cachePoint)) {
524
633
  system.push({
@@ -537,11 +646,18 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* (options) {
537
646
  {
538
647
  for (const part of message.content) {
539
648
  if (part.type === "text") {
540
- content.push({
541
- text: part.text
542
- });
649
+ content.push(textBlock(part.text, part.options));
543
650
  pushCachePoint(content, part);
544
651
  } else if (part.type === "file") {
652
+ if (part.options.amazonBedrock?.guardContent === true) {
653
+ content.push({
654
+ guardContent: {
655
+ image: yield* guardedImage(part)
656
+ }
657
+ });
658
+ pushCachePoint(content, part);
659
+ continue;
660
+ }
545
661
  const imageFormat = imageFormats[part.mediaType];
546
662
  if (Predicate.isNotUndefined(imageFormat)) {
547
663
  content.push({
@@ -644,6 +760,15 @@ const prepareMessages = /*#__PURE__*/Effect.fnUntraced(function* (options) {
644
760
  const part = message.content[k];
645
761
  const isLastPart = k === message.content.length - 1;
646
762
  if (part.type === "text") {
763
+ if (!Predicate.isNullish(part.options.amazonBedrock?.guardContent)) {
764
+ return yield* AiError.make({
765
+ module: "AmazonBedrockLanguageModel",
766
+ method: "prepareMessages",
767
+ reason: new AiError.InvalidUserInputError({
768
+ description: "Unsupported guardContent on an assistant text part - this provider guards only " + "user text parts, user png and jpeg images, and system messages"
769
+ })
770
+ });
771
+ }
647
772
  // Skip empty text blocks
648
773
  if (part.text.trim().length === 0) {
649
774
  continue;
@@ -726,6 +851,17 @@ const tryToolJsonSchema = (tool, method) => Effect.try({
726
851
  }),
727
852
  catch: error => unsupportedSchemaError(error, method)
728
853
  });
854
+ // Bedrock is sent each tool's codec schema, which differs from the tool's own
855
+ // schema wherever the codec rewrites a parameter. Params that follow the codec
856
+ // are re-encoded with the tool's schema for the Toolkit to decode. Any others
857
+ // are left as they are, so that the Toolkit reports the error.
858
+ const decodeToolParams = (tools, toolName, params) => {
859
+ const tool = tools.find(tool => tool.name === toolName);
860
+ if (Predicate.isUndefined(tool)) {
861
+ return Effect.succeed(params);
862
+ }
863
+ return Effect.try(() => toCodecAnthropic(tool.parametersSchema).codec).pipe(Effect.flatMap(codec => Schema.decodeUnknownEffect(codec)(params)), Effect.flatMap(decoded => Schema.encodeUnknownEffect(tool.parametersSchema)(decoded)), Effect.orElseSucceed(() => params));
864
+ };
729
865
  /**
730
866
  * Returns what a model accepts for structured output, looked up by the
731
867
  * provider that the model ID names: `anthropic` in
@@ -949,11 +1085,12 @@ const makeResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, response
949
1085
  }
950
1086
  continue;
951
1087
  }
1088
+ const name = nameMapper.getCustomName(part.toolUse.name);
952
1089
  parts.push({
953
1090
  type: "tool-call",
954
1091
  id: part.toolUse.toolUseId,
955
- name: nameMapper.getCustomName(part.toolUse.name),
956
- params: part.toolUse.input,
1092
+ name,
1093
+ params: yield* decodeToolParams(options.tools, name, part.toolUse.input),
957
1094
  providerExecuted: false
958
1095
  });
959
1096
  } else if (Predicate.isNotUndefined(part.reasoningContent)) {
@@ -1003,6 +1140,22 @@ const makeResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, response
1003
1140
  const finishReason = hasObjectTool && response.stopReason === "tool_use" ? "stop" : InternalUtilities.resolveFinishReason(response.stopReason);
1004
1141
  const cacheReadTokens = response.usage.cacheReadInputTokens ?? 0;
1005
1142
  const cacheWriteTokens = response.usage.cacheWriteInputTokens ?? 0;
1143
+ const metadata = InternalGuardrails.finishMetadata(response.stopReason, response.trace);
1144
+ if (options.responseFormat.type === "json") {
1145
+ const text = parts.flatMap(part => part.type === "text" ? [part.text] : []).join("");
1146
+ if (InternalGuardrails.blocksObject(response.stopReason, text)) {
1147
+ return yield* AiError.make({
1148
+ module: "AmazonBedrockLanguageModel",
1149
+ method: "generateObject",
1150
+ reason: new AiError.ContentPolicyError({
1151
+ description: "An Amazon Bedrock guardrail intervened, and the response holds no JSON object. " + `Bedrock answered: ${truncate(text, 200)}`,
1152
+ metadata: {
1153
+ amazonBedrock: metadata
1154
+ }
1155
+ })
1156
+ });
1157
+ }
1158
+ }
1006
1159
  parts.push({
1007
1160
  type: "finish",
1008
1161
  reason: finishReason,
@@ -1021,11 +1174,14 @@ const makeResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, response
1021
1174
  },
1022
1175
  // `Response.FinishPart` models `response` with `Schema.UndefinedOr`, which
1023
1176
  // requires the key; HTTP response details are not surfaced by the client.
1024
- response: undefined
1177
+ response: undefined,
1178
+ metadata: {
1179
+ amazonBedrock: metadata
1180
+ }
1025
1181
  });
1026
1182
  return parts;
1027
1183
  });
1028
- const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, stream, nameMapper, documents) {
1184
+ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, stream, tools, nameMapper, documents, span) {
1029
1185
  // Acquired up front: the stream itself must not carry the requirement.
1030
1186
  const idGenerator = yield* IdGenerator.IdGenerator;
1031
1187
  // Tracks whether a text block at a given content-block index has been
@@ -1049,6 +1205,7 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1049
1205
  // (which AWS sends AFTER messageStop and which carries the usage), so finish
1050
1206
  // reports the real token counts rather than the pre-metadata zeros.
1051
1207
  let finishReason = "unknown";
1208
+ let stopReason = null;
1052
1209
  return stream.pipe(Stream.mapEffect(Effect.fnUntraced(function* (event) {
1053
1210
  const parts = [];
1054
1211
  switch (event.type) {
@@ -1209,7 +1366,7 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1209
1366
  type: "tool-call",
1210
1367
  id: block.id,
1211
1368
  name: block.name,
1212
- params,
1369
+ params: yield* decodeToolParams(tools, block.name, params),
1213
1370
  providerExecuted: false
1214
1371
  });
1215
1372
  }
@@ -1220,6 +1377,7 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1220
1377
  // Defer the `finish` part to the trailing `metadata` event (usage
1221
1378
  // is still zero here — metadata has not arrived yet).
1222
1379
  finishReason = InternalUtilities.resolveFinishReason(event.messageStop.stopReason);
1380
+ stopReason = event.messageStop.stopReason;
1223
1381
  break;
1224
1382
  }
1225
1383
  case "metadata":
@@ -1230,6 +1388,7 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1230
1388
  if (Predicate.isNotUndefined(event.metadata.usage.cacheWriteInputTokens)) {
1231
1389
  usage.cacheWriteInputTokens = event.metadata.usage.cacheWriteInputTokens;
1232
1390
  }
1391
+ annotateResponse(span, request.modelId, stopReason, event.metadata.usage);
1233
1392
  // Terminal success event: usage is now populated — emit `finish`.
1234
1393
  parts.push({
1235
1394
  type: "finish",
@@ -1248,7 +1407,10 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1248
1407
  }
1249
1408
  },
1250
1409
  // See `makeResponse`: the key is required (`Schema.UndefinedOr`).
1251
- response: undefined
1410
+ response: undefined,
1411
+ metadata: {
1412
+ amazonBedrock: InternalGuardrails.finishMetadata(stopReason, event.metadata.trace)
1413
+ }
1252
1414
  });
1253
1415
  break;
1254
1416
  }
@@ -1296,6 +1458,42 @@ const makeStreamResponse = /*#__PURE__*/Effect.fnUntraced(function* (request, st
1296
1458
  return parts;
1297
1459
  })), Stream.flattenIterable);
1298
1460
  });
1461
+ // =============================================================================
1462
+ // Telemetry
1463
+ // =============================================================================
1464
+ const annotateRequest = (span, request) => {
1465
+ addGenAIAnnotations(span, {
1466
+ provider: {
1467
+ name: "aws.bedrock"
1468
+ },
1469
+ operation: {
1470
+ name: "chat"
1471
+ },
1472
+ request: {
1473
+ model: request.modelId,
1474
+ maxTokens: request.inferenceConfig?.maxTokens,
1475
+ temperature: request.inferenceConfig?.temperature,
1476
+ topP: request.inferenceConfig?.topP,
1477
+ stopSequences: request.inferenceConfig?.stopSequences
1478
+ }
1479
+ });
1480
+ };
1481
+ const annotateResponse = (span, modelId, stopReason, usage) => {
1482
+ const cacheRead = usage.cacheReadInputTokens ?? 0;
1483
+ const cacheWrite = usage.cacheWriteInputTokens ?? 0;
1484
+ addGenAIAnnotations(span, {
1485
+ response: {
1486
+ model: modelId,
1487
+ finishReasons: stopReason === null ? undefined : [stopReason]
1488
+ },
1489
+ usage: {
1490
+ inputTokens: usage.inputTokens + cacheRead + cacheWrite,
1491
+ outputTokens: usage.outputTokens
1492
+ }
1493
+ });
1494
+ span.attribute("gen_ai.usage.cache_read.input_tokens", cacheRead);
1495
+ span.attribute("gen_ai.usage.cache_write.input_tokens", cacheWrite);
1496
+ };
1299
1497
  const groupMessages = prompt => {
1300
1498
  const messages = [];
1301
1499
  let current = undefined;
@@ -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":[]}