@aws-sdk/client-bedrock 3.787.0 → 3.796.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.
package/dist-cjs/index.js CHANGED
@@ -24,6 +24,9 @@ __export(index_exports, {
24
24
  AccessDeniedException: () => AccessDeniedException,
25
25
  ApplicationType: () => ApplicationType,
26
26
  AutomatedEvaluationConfigFilterSensitiveLog: () => AutomatedEvaluationConfigFilterSensitiveLog,
27
+ AutomatedEvaluationCustomMetricConfigFilterSensitiveLog: () => AutomatedEvaluationCustomMetricConfigFilterSensitiveLog,
28
+ AutomatedEvaluationCustomMetricSource: () => AutomatedEvaluationCustomMetricSource,
29
+ AutomatedEvaluationCustomMetricSourceFilterSensitiveLog: () => AutomatedEvaluationCustomMetricSourceFilterSensitiveLog,
27
30
  BatchDeleteEvaluationJobCommand: () => BatchDeleteEvaluationJobCommand,
28
31
  BatchDeleteEvaluationJobErrorFilterSensitiveLog: () => BatchDeleteEvaluationJobErrorFilterSensitiveLog,
29
32
  BatchDeleteEvaluationJobItemFilterSensitiveLog: () => BatchDeleteEvaluationJobItemFilterSensitiveLog,
@@ -52,6 +55,7 @@ __export(index_exports, {
52
55
  CreatePromptRouterCommand: () => CreatePromptRouterCommand,
53
56
  CreatePromptRouterRequestFilterSensitiveLog: () => CreatePromptRouterRequestFilterSensitiveLog,
54
57
  CreateProvisionedModelThroughputCommand: () => CreateProvisionedModelThroughputCommand,
58
+ CustomMetricDefinitionFilterSensitiveLog: () => CustomMetricDefinitionFilterSensitiveLog,
55
59
  CustomizationConfig: () => CustomizationConfig,
56
60
  CustomizationType: () => CustomizationType,
57
61
  DeleteCustomModelCommand: () => DeleteCustomModelCommand,
@@ -194,6 +198,7 @@ __export(index_exports, {
194
198
  QueryTransformationType: () => QueryTransformationType,
195
199
  RAGConfig: () => RAGConfig,
196
200
  RAGConfigFilterSensitiveLog: () => RAGConfigFilterSensitiveLog,
201
+ RatingScaleItemValue: () => RatingScaleItemValue,
197
202
  RegisterMarketplaceModelEndpointCommand: () => RegisterMarketplaceModelEndpointCommand,
198
203
  RequestMetadataBaseFiltersFilterSensitiveLog: () => RequestMetadataBaseFiltersFilterSensitiveLog,
199
204
  RequestMetadataFilters: () => RequestMetadataFilters,
@@ -578,6 +583,21 @@ var ApplicationType = {
578
583
  MODEL_EVALUATION: "ModelEvaluation",
579
584
  RAG_EVALUATION: "RagEvaluation"
580
585
  };
586
+ var RatingScaleItemValue;
587
+ ((RatingScaleItemValue2) => {
588
+ RatingScaleItemValue2.visit = /* @__PURE__ */ __name((value, visitor) => {
589
+ if (value.stringValue !== void 0) return visitor.stringValue(value.stringValue);
590
+ if (value.floatValue !== void 0) return visitor.floatValue(value.floatValue);
591
+ return visitor._(value.$unknown[0], value.$unknown[1]);
592
+ }, "visit");
593
+ })(RatingScaleItemValue || (RatingScaleItemValue = {}));
594
+ var AutomatedEvaluationCustomMetricSource;
595
+ ((AutomatedEvaluationCustomMetricSource2) => {
596
+ AutomatedEvaluationCustomMetricSource2.visit = /* @__PURE__ */ __name((value, visitor) => {
597
+ if (value.customMetricDefinition !== void 0) return visitor.customMetricDefinition(value.customMetricDefinition);
598
+ return visitor._(value.$unknown[0], value.$unknown[1]);
599
+ }, "visit");
600
+ })(AutomatedEvaluationCustomMetricSource || (AutomatedEvaluationCustomMetricSource = {}));
581
601
  var EvaluationDatasetLocation;
582
602
  ((EvaluationDatasetLocation3) => {
583
603
  EvaluationDatasetLocation3.visit = /* @__PURE__ */ __name((value, visitor) => {
@@ -600,8 +620,8 @@ var EvaluatorModelConfig;
600
620
  }, "visit");
601
621
  })(EvaluatorModelConfig || (EvaluatorModelConfig = {}));
602
622
  var EvaluationConfig;
603
- ((EvaluationConfig3) => {
604
- EvaluationConfig3.visit = /* @__PURE__ */ __name((value, visitor) => {
623
+ ((EvaluationConfig2) => {
624
+ EvaluationConfig2.visit = /* @__PURE__ */ __name((value, visitor) => {
605
625
  if (value.automated !== void 0) return visitor.automated(value.automated);
606
626
  if (value.human !== void 0) return visitor.human(value.human);
607
627
  return visitor._(value.$unknown[0], value.$unknown[1]);
@@ -977,6 +997,21 @@ var BatchDeleteEvaluationJobResponseFilterSensitiveLog = /* @__PURE__ */ __name(
977
997
  evaluationJobs: obj.evaluationJobs.map((item) => BatchDeleteEvaluationJobItemFilterSensitiveLog(item))
978
998
  }
979
999
  }), "BatchDeleteEvaluationJobResponseFilterSensitiveLog");
1000
+ var CustomMetricDefinitionFilterSensitiveLog = /* @__PURE__ */ __name((obj) => ({
1001
+ ...obj,
1002
+ ...obj.name && { name: import_smithy_client.SENSITIVE_STRING },
1003
+ ...obj.ratingScale && { ratingScale: obj.ratingScale.map((item) => item) }
1004
+ }), "CustomMetricDefinitionFilterSensitiveLog");
1005
+ var AutomatedEvaluationCustomMetricSourceFilterSensitiveLog = /* @__PURE__ */ __name((obj) => {
1006
+ if (obj.customMetricDefinition !== void 0) return { customMetricDefinition: import_smithy_client.SENSITIVE_STRING };
1007
+ if (obj.$unknown !== void 0) return { [obj.$unknown[0]]: "UNKNOWN" };
1008
+ }, "AutomatedEvaluationCustomMetricSourceFilterSensitiveLog");
1009
+ var AutomatedEvaluationCustomMetricConfigFilterSensitiveLog = /* @__PURE__ */ __name((obj) => ({
1010
+ ...obj,
1011
+ ...obj.customMetrics && {
1012
+ customMetrics: obj.customMetrics.map((item) => AutomatedEvaluationCustomMetricSourceFilterSensitiveLog(item))
1013
+ }
1014
+ }), "AutomatedEvaluationCustomMetricConfigFilterSensitiveLog");
980
1015
  var EvaluationDatasetFilterSensitiveLog = /* @__PURE__ */ __name((obj) => ({
981
1016
  ...obj,
982
1017
  ...obj.name && { name: import_smithy_client.SENSITIVE_STRING },
@@ -992,7 +1027,10 @@ var AutomatedEvaluationConfigFilterSensitiveLog = /* @__PURE__ */ __name((obj) =
992
1027
  ...obj.datasetMetricConfigs && {
993
1028
  datasetMetricConfigs: obj.datasetMetricConfigs.map((item) => EvaluationDatasetMetricConfigFilterSensitiveLog(item))
994
1029
  },
995
- ...obj.evaluatorModelConfig && { evaluatorModelConfig: obj.evaluatorModelConfig }
1030
+ ...obj.evaluatorModelConfig && { evaluatorModelConfig: obj.evaluatorModelConfig },
1031
+ ...obj.customMetricConfig && {
1032
+ customMetricConfig: AutomatedEvaluationCustomMetricConfigFilterSensitiveLog(obj.customMetricConfig)
1033
+ }
996
1034
  }), "AutomatedEvaluationConfigFilterSensitiveLog");
997
1035
  var HumanEvaluationCustomMetricFilterSensitiveLog = /* @__PURE__ */ __name((obj) => ({
998
1036
  ...obj,
@@ -1461,7 +1499,7 @@ var se_CreateEvaluationJobCommand = /* @__PURE__ */ __name(async (input, context
1461
1499
  applicationType: [],
1462
1500
  clientRequestToken: [true, (_) => _ ?? (0, import_uuid.v4)()],
1463
1501
  customerEncryptionKeyId: [],
1464
- evaluationConfig: /* @__PURE__ */ __name((_) => (0, import_smithy_client._json)(_), "evaluationConfig"),
1502
+ evaluationConfig: /* @__PURE__ */ __name((_) => se_EvaluationConfig(_, context), "evaluationConfig"),
1465
1503
  inferenceConfig: /* @__PURE__ */ __name((_) => se_EvaluationInferenceConfig(_, context), "inferenceConfig"),
1466
1504
  jobDescription: [],
1467
1505
  jobName: [],
@@ -2584,7 +2622,7 @@ var de_GetEvaluationJobCommand = /* @__PURE__ */ __name(async (output, context)
2584
2622
  applicationType: import_smithy_client.expectString,
2585
2623
  creationTime: /* @__PURE__ */ __name((_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseRfc3339DateTimeWithOffset)(_)), "creationTime"),
2586
2624
  customerEncryptionKeyId: import_smithy_client.expectString,
2587
- evaluationConfig: /* @__PURE__ */ __name((_) => (0, import_smithy_client._json)((0, import_core2.awsExpectUnion)(_)), "evaluationConfig"),
2625
+ evaluationConfig: /* @__PURE__ */ __name((_) => de_EvaluationConfig((0, import_core2.awsExpectUnion)(_), context), "evaluationConfig"),
2588
2626
  failureMessages: import_smithy_client._json,
2589
2627
  inferenceConfig: /* @__PURE__ */ __name((_) => de_EvaluationInferenceConfig((0, import_core2.awsExpectUnion)(_), context), "inferenceConfig"),
2590
2628
  jobArn: import_smithy_client.expectString,
@@ -3376,6 +3414,30 @@ var se_AdditionalModelRequestFields = /* @__PURE__ */ __name((input, context) =>
3376
3414
  var se_AdditionalModelRequestFieldsValue = /* @__PURE__ */ __name((input, context) => {
3377
3415
  return input;
3378
3416
  }, "se_AdditionalModelRequestFieldsValue");
3417
+ var se_AutomatedEvaluationConfig = /* @__PURE__ */ __name((input, context) => {
3418
+ return (0, import_smithy_client.take)(input, {
3419
+ customMetricConfig: /* @__PURE__ */ __name((_) => se_AutomatedEvaluationCustomMetricConfig(_, context), "customMetricConfig"),
3420
+ datasetMetricConfigs: import_smithy_client._json,
3421
+ evaluatorModelConfig: import_smithy_client._json
3422
+ });
3423
+ }, "se_AutomatedEvaluationConfig");
3424
+ var se_AutomatedEvaluationCustomMetricConfig = /* @__PURE__ */ __name((input, context) => {
3425
+ return (0, import_smithy_client.take)(input, {
3426
+ customMetrics: /* @__PURE__ */ __name((_) => se_AutomatedEvaluationCustomMetrics(_, context), "customMetrics"),
3427
+ evaluatorModelConfig: import_smithy_client._json
3428
+ });
3429
+ }, "se_AutomatedEvaluationCustomMetricConfig");
3430
+ var se_AutomatedEvaluationCustomMetrics = /* @__PURE__ */ __name((input, context) => {
3431
+ return input.filter((e) => e != null).map((entry) => {
3432
+ return se_AutomatedEvaluationCustomMetricSource(entry, context);
3433
+ });
3434
+ }, "se_AutomatedEvaluationCustomMetrics");
3435
+ var se_AutomatedEvaluationCustomMetricSource = /* @__PURE__ */ __name((input, context) => {
3436
+ return AutomatedEvaluationCustomMetricSource.visit(input, {
3437
+ customMetricDefinition: /* @__PURE__ */ __name((value) => ({ customMetricDefinition: se_CustomMetricDefinition(value, context) }), "customMetricDefinition"),
3438
+ _: /* @__PURE__ */ __name((name, value) => ({ [name]: value }), "_")
3439
+ });
3440
+ }, "se_AutomatedEvaluationCustomMetricSource");
3379
3441
  var se_ByteContentDoc = /* @__PURE__ */ __name((input, context) => {
3380
3442
  return (0, import_smithy_client.take)(input, {
3381
3443
  contentType: [],
@@ -3383,6 +3445,20 @@ var se_ByteContentDoc = /* @__PURE__ */ __name((input, context) => {
3383
3445
  identifier: []
3384
3446
  });
3385
3447
  }, "se_ByteContentDoc");
3448
+ var se_CustomMetricDefinition = /* @__PURE__ */ __name((input, context) => {
3449
+ return (0, import_smithy_client.take)(input, {
3450
+ instructions: [],
3451
+ name: [],
3452
+ ratingScale: /* @__PURE__ */ __name((_) => se_RatingScale(_, context), "ratingScale")
3453
+ });
3454
+ }, "se_CustomMetricDefinition");
3455
+ var se_EvaluationConfig = /* @__PURE__ */ __name((input, context) => {
3456
+ return EvaluationConfig.visit(input, {
3457
+ automated: /* @__PURE__ */ __name((value) => ({ automated: se_AutomatedEvaluationConfig(value, context) }), "automated"),
3458
+ human: /* @__PURE__ */ __name((value) => ({ human: (0, import_smithy_client._json)(value) }), "human"),
3459
+ _: /* @__PURE__ */ __name((name, value) => ({ [name]: value }), "_")
3460
+ });
3461
+ }, "se_EvaluationConfig");
3386
3462
  var se_EvaluationInferenceConfig = /* @__PURE__ */ __name((input, context) => {
3387
3463
  return EvaluationInferenceConfig.visit(input, {
3388
3464
  models: /* @__PURE__ */ __name((value) => ({ models: (0, import_smithy_client._json)(value) }), "models"),
@@ -3499,6 +3575,24 @@ var se_RagConfigs = /* @__PURE__ */ __name((input, context) => {
3499
3575
  return se_RAGConfig(entry, context);
3500
3576
  });
3501
3577
  }, "se_RagConfigs");
3578
+ var se_RatingScale = /* @__PURE__ */ __name((input, context) => {
3579
+ return input.filter((e) => e != null).map((entry) => {
3580
+ return se_RatingScaleItem(entry, context);
3581
+ });
3582
+ }, "se_RatingScale");
3583
+ var se_RatingScaleItem = /* @__PURE__ */ __name((input, context) => {
3584
+ return (0, import_smithy_client.take)(input, {
3585
+ definition: [],
3586
+ value: /* @__PURE__ */ __name((_) => se_RatingScaleItemValue(_, context), "value")
3587
+ });
3588
+ }, "se_RatingScaleItem");
3589
+ var se_RatingScaleItemValue = /* @__PURE__ */ __name((input, context) => {
3590
+ return RatingScaleItemValue.visit(input, {
3591
+ floatValue: /* @__PURE__ */ __name((value) => ({ floatValue: (0, import_smithy_client.serializeFloat)(value) }), "floatValue"),
3592
+ stringValue: /* @__PURE__ */ __name((value) => ({ stringValue: value }), "stringValue"),
3593
+ _: /* @__PURE__ */ __name((name, value) => ({ [name]: value }), "_")
3594
+ });
3595
+ }, "se_RatingScaleItemValue");
3502
3596
  var se_RetrievalFilter = /* @__PURE__ */ __name((input, context) => {
3503
3597
  return RetrievalFilter.visit(input, {
3504
3598
  andAll: /* @__PURE__ */ __name((value) => ({ andAll: se_RetrievalFilterList(value, context) }), "andAll"),
@@ -3560,6 +3654,33 @@ var de_AdditionalModelRequestFields = /* @__PURE__ */ __name((output, context) =
3560
3654
  var de_AdditionalModelRequestFieldsValue = /* @__PURE__ */ __name((output, context) => {
3561
3655
  return output;
3562
3656
  }, "de_AdditionalModelRequestFieldsValue");
3657
+ var de_AutomatedEvaluationConfig = /* @__PURE__ */ __name((output, context) => {
3658
+ return (0, import_smithy_client.take)(output, {
3659
+ customMetricConfig: /* @__PURE__ */ __name((_) => de_AutomatedEvaluationCustomMetricConfig(_, context), "customMetricConfig"),
3660
+ datasetMetricConfigs: import_smithy_client._json,
3661
+ evaluatorModelConfig: /* @__PURE__ */ __name((_) => (0, import_smithy_client._json)((0, import_core2.awsExpectUnion)(_)), "evaluatorModelConfig")
3662
+ });
3663
+ }, "de_AutomatedEvaluationConfig");
3664
+ var de_AutomatedEvaluationCustomMetricConfig = /* @__PURE__ */ __name((output, context) => {
3665
+ return (0, import_smithy_client.take)(output, {
3666
+ customMetrics: /* @__PURE__ */ __name((_) => de_AutomatedEvaluationCustomMetrics(_, context), "customMetrics"),
3667
+ evaluatorModelConfig: import_smithy_client._json
3668
+ });
3669
+ }, "de_AutomatedEvaluationCustomMetricConfig");
3670
+ var de_AutomatedEvaluationCustomMetrics = /* @__PURE__ */ __name((output, context) => {
3671
+ const retVal = (output || []).filter((e) => e != null).map((entry) => {
3672
+ return de_AutomatedEvaluationCustomMetricSource((0, import_core2.awsExpectUnion)(entry), context);
3673
+ });
3674
+ return retVal;
3675
+ }, "de_AutomatedEvaluationCustomMetrics");
3676
+ var de_AutomatedEvaluationCustomMetricSource = /* @__PURE__ */ __name((output, context) => {
3677
+ if (output.customMetricDefinition != null) {
3678
+ return {
3679
+ customMetricDefinition: de_CustomMetricDefinition(output.customMetricDefinition, context)
3680
+ };
3681
+ }
3682
+ return { $unknown: Object.entries(output)[0] };
3683
+ }, "de_AutomatedEvaluationCustomMetricSource");
3563
3684
  var de_ByteContentDoc = /* @__PURE__ */ __name((output, context) => {
3564
3685
  return (0, import_smithy_client.take)(output, {
3565
3686
  contentType: import_smithy_client.expectString,
@@ -3567,6 +3688,13 @@ var de_ByteContentDoc = /* @__PURE__ */ __name((output, context) => {
3567
3688
  identifier: import_smithy_client.expectString
3568
3689
  });
3569
3690
  }, "de_ByteContentDoc");
3691
+ var de_CustomMetricDefinition = /* @__PURE__ */ __name((output, context) => {
3692
+ return (0, import_smithy_client.take)(output, {
3693
+ instructions: import_smithy_client.expectString,
3694
+ name: import_smithy_client.expectString,
3695
+ ratingScale: /* @__PURE__ */ __name((_) => de_RatingScale(_, context), "ratingScale")
3696
+ });
3697
+ }, "de_CustomMetricDefinition");
3570
3698
  var de_CustomModelSummary = /* @__PURE__ */ __name((output, context) => {
3571
3699
  return (0, import_smithy_client.take)(output, {
3572
3700
  baseModelArn: import_smithy_client.expectString,
@@ -3584,6 +3712,19 @@ var de_CustomModelSummaryList = /* @__PURE__ */ __name((output, context) => {
3584
3712
  });
3585
3713
  return retVal;
3586
3714
  }, "de_CustomModelSummaryList");
3715
+ var de_EvaluationConfig = /* @__PURE__ */ __name((output, context) => {
3716
+ if (output.automated != null) {
3717
+ return {
3718
+ automated: de_AutomatedEvaluationConfig(output.automated, context)
3719
+ };
3720
+ }
3721
+ if (output.human != null) {
3722
+ return {
3723
+ human: (0, import_smithy_client._json)(output.human)
3724
+ };
3725
+ }
3726
+ return { $unknown: Object.entries(output)[0] };
3727
+ }, "de_EvaluationConfig");
3587
3728
  var de_EvaluationInferenceConfig = /* @__PURE__ */ __name((output, context) => {
3588
3729
  if (output.models != null) {
3589
3730
  return {
@@ -3607,6 +3748,7 @@ var de_EvaluationSummary = /* @__PURE__ */ __name((output, context) => {
3607
3748
  return (0, import_smithy_client.take)(output, {
3608
3749
  applicationType: import_smithy_client.expectString,
3609
3750
  creationTime: /* @__PURE__ */ __name((_) => (0, import_smithy_client.expectNonNull)((0, import_smithy_client.parseRfc3339DateTimeWithOffset)(_)), "creationTime"),
3751
+ customMetricsEvaluatorModelIdentifiers: import_smithy_client._json,
3610
3752
  evaluationTaskTypes: import_smithy_client._json,
3611
3753
  evaluatorModelIdentifiers: import_smithy_client._json,
3612
3754
  inferenceConfigSummary: import_smithy_client._json,
@@ -3947,6 +4089,27 @@ var de_RagConfigs = /* @__PURE__ */ __name((output, context) => {
3947
4089
  });
3948
4090
  return retVal;
3949
4091
  }, "de_RagConfigs");
4092
+ var de_RatingScale = /* @__PURE__ */ __name((output, context) => {
4093
+ const retVal = (output || []).filter((e) => e != null).map((entry) => {
4094
+ return de_RatingScaleItem(entry, context);
4095
+ });
4096
+ return retVal;
4097
+ }, "de_RatingScale");
4098
+ var de_RatingScaleItem = /* @__PURE__ */ __name((output, context) => {
4099
+ return (0, import_smithy_client.take)(output, {
4100
+ definition: import_smithy_client.expectString,
4101
+ value: /* @__PURE__ */ __name((_) => de_RatingScaleItemValue((0, import_core2.awsExpectUnion)(_), context), "value")
4102
+ });
4103
+ }, "de_RatingScaleItem");
4104
+ var de_RatingScaleItemValue = /* @__PURE__ */ __name((output, context) => {
4105
+ if ((0, import_smithy_client.limitedParseFloat32)(output.floatValue) !== void 0) {
4106
+ return { floatValue: (0, import_smithy_client.limitedParseFloat32)(output.floatValue) };
4107
+ }
4108
+ if ((0, import_smithy_client.expectString)(output.stringValue) !== void 0) {
4109
+ return { stringValue: (0, import_smithy_client.expectString)(output.stringValue) };
4110
+ }
4111
+ return { $unknown: Object.entries(output)[0] };
4112
+ }, "de_RatingScaleItemValue");
3950
4113
  var de_RetrievalFilter = /* @__PURE__ */ __name((output, context) => {
3951
4114
  if (output.andAll != null) {
3952
4115
  return {
@@ -5188,6 +5351,8 @@ var paginateListProvisionedModelThroughputs = (0, import_core.createPaginator)(B
5188
5351
  ServiceUnavailableException,
5189
5352
  EvaluationJobStatus,
5190
5353
  ApplicationType,
5354
+ RatingScaleItemValue,
5355
+ AutomatedEvaluationCustomMetricSource,
5191
5356
  EvaluationDatasetLocation,
5192
5357
  EvaluationTaskType,
5193
5358
  EvaluatorModelConfig,
@@ -5250,6 +5415,9 @@ var paginateListProvisionedModelThroughputs = (0, import_core.createPaginator)(B
5250
5415
  BatchDeleteEvaluationJobErrorFilterSensitiveLog,
5251
5416
  BatchDeleteEvaluationJobItemFilterSensitiveLog,
5252
5417
  BatchDeleteEvaluationJobResponseFilterSensitiveLog,
5418
+ CustomMetricDefinitionFilterSensitiveLog,
5419
+ AutomatedEvaluationCustomMetricSourceFilterSensitiveLog,
5420
+ AutomatedEvaluationCustomMetricConfigFilterSensitiveLog,
5253
5421
  EvaluationDatasetFilterSensitiveLog,
5254
5422
  EvaluationDatasetMetricConfigFilterSensitiveLog,
5255
5423
  AutomatedEvaluationConfigFilterSensitiveLog,
@@ -120,6 +120,24 @@ export const ApplicationType = {
120
120
  MODEL_EVALUATION: "ModelEvaluation",
121
121
  RAG_EVALUATION: "RagEvaluation",
122
122
  };
123
+ export var RatingScaleItemValue;
124
+ (function (RatingScaleItemValue) {
125
+ RatingScaleItemValue.visit = (value, visitor) => {
126
+ if (value.stringValue !== undefined)
127
+ return visitor.stringValue(value.stringValue);
128
+ if (value.floatValue !== undefined)
129
+ return visitor.floatValue(value.floatValue);
130
+ return visitor._(value.$unknown[0], value.$unknown[1]);
131
+ };
132
+ })(RatingScaleItemValue || (RatingScaleItemValue = {}));
133
+ export var AutomatedEvaluationCustomMetricSource;
134
+ (function (AutomatedEvaluationCustomMetricSource) {
135
+ AutomatedEvaluationCustomMetricSource.visit = (value, visitor) => {
136
+ if (value.customMetricDefinition !== undefined)
137
+ return visitor.customMetricDefinition(value.customMetricDefinition);
138
+ return visitor._(value.$unknown[0], value.$unknown[1]);
139
+ };
140
+ })(AutomatedEvaluationCustomMetricSource || (AutomatedEvaluationCustomMetricSource = {}));
123
141
  export var EvaluationDatasetLocation;
124
142
  (function (EvaluationDatasetLocation) {
125
143
  EvaluationDatasetLocation.visit = (value, visitor) => {
@@ -542,6 +560,23 @@ export const BatchDeleteEvaluationJobResponseFilterSensitiveLog = (obj) => ({
542
560
  evaluationJobs: obj.evaluationJobs.map((item) => BatchDeleteEvaluationJobItemFilterSensitiveLog(item)),
543
561
  }),
544
562
  });
563
+ export const CustomMetricDefinitionFilterSensitiveLog = (obj) => ({
564
+ ...obj,
565
+ ...(obj.name && { name: SENSITIVE_STRING }),
566
+ ...(obj.ratingScale && { ratingScale: obj.ratingScale.map((item) => item) }),
567
+ });
568
+ export const AutomatedEvaluationCustomMetricSourceFilterSensitiveLog = (obj) => {
569
+ if (obj.customMetricDefinition !== undefined)
570
+ return { customMetricDefinition: SENSITIVE_STRING };
571
+ if (obj.$unknown !== undefined)
572
+ return { [obj.$unknown[0]]: "UNKNOWN" };
573
+ };
574
+ export const AutomatedEvaluationCustomMetricConfigFilterSensitiveLog = (obj) => ({
575
+ ...obj,
576
+ ...(obj.customMetrics && {
577
+ customMetrics: obj.customMetrics.map((item) => AutomatedEvaluationCustomMetricSourceFilterSensitiveLog(item)),
578
+ }),
579
+ });
545
580
  export const EvaluationDatasetFilterSensitiveLog = (obj) => ({
546
581
  ...obj,
547
582
  ...(obj.name && { name: SENSITIVE_STRING }),
@@ -558,6 +593,9 @@ export const AutomatedEvaluationConfigFilterSensitiveLog = (obj) => ({
558
593
  datasetMetricConfigs: obj.datasetMetricConfigs.map((item) => EvaluationDatasetMetricConfigFilterSensitiveLog(item)),
559
594
  }),
560
595
  ...(obj.evaluatorModelConfig && { evaluatorModelConfig: obj.evaluatorModelConfig }),
596
+ ...(obj.customMetricConfig && {
597
+ customMetricConfig: AutomatedEvaluationCustomMetricConfigFilterSensitiveLog(obj.customMetricConfig),
598
+ }),
561
599
  });
562
600
  export const HumanEvaluationCustomMetricFilterSensitiveLog = (obj) => ({
563
601
  ...obj,
@@ -3,7 +3,7 @@ import { requestBuilder as rb } from "@smithy/core";
3
3
  import { _json, collectBody, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, limitedParseDouble as __limitedParseDouble, limitedParseFloat32 as __limitedParseFloat32, map, parseRfc3339DateTimeWithOffset as __parseRfc3339DateTimeWithOffset, serializeDateTime as __serializeDateTime, serializeFloat as __serializeFloat, take, withBaseException, } from "@smithy/smithy-client";
4
4
  import { v4 as generateIdempotencyToken } from "uuid";
5
5
  import { BedrockServiceException as __BaseException } from "../models/BedrockServiceException";
6
- import { AccessDeniedException, ConflictException, EvaluationInferenceConfig, InternalServerException, KnowledgeBaseConfig, RAGConfig, ResourceNotFoundException, RetrievalFilter, ServiceQuotaExceededException, ServiceUnavailableException, ThrottlingException, TooManyTagsException, ValidationException, } from "../models/models_0";
6
+ import { AccessDeniedException, AutomatedEvaluationCustomMetricSource, ConflictException, EvaluationConfig, EvaluationInferenceConfig, InternalServerException, KnowledgeBaseConfig, RAGConfig, RatingScaleItemValue, ResourceNotFoundException, RetrievalFilter, ServiceQuotaExceededException, ServiceUnavailableException, ThrottlingException, TooManyTagsException, ValidationException, } from "../models/models_0";
7
7
  export const se_BatchDeleteEvaluationJobCommand = async (input, context) => {
8
8
  const b = rb(input, context);
9
9
  const headers = {
@@ -28,7 +28,7 @@ export const se_CreateEvaluationJobCommand = async (input, context) => {
28
28
  applicationType: [],
29
29
  clientRequestToken: [true, (_) => _ ?? generateIdempotencyToken()],
30
30
  customerEncryptionKeyId: [],
31
- evaluationConfig: (_) => _json(_),
31
+ evaluationConfig: (_) => se_EvaluationConfig(_, context),
32
32
  inferenceConfig: (_) => se_EvaluationInferenceConfig(_, context),
33
33
  jobDescription: [],
34
34
  jobName: [],
@@ -1114,7 +1114,7 @@ export const de_GetEvaluationJobCommand = async (output, context) => {
1114
1114
  applicationType: __expectString,
1115
1115
  creationTime: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)),
1116
1116
  customerEncryptionKeyId: __expectString,
1117
- evaluationConfig: (_) => _json(__expectUnion(_)),
1117
+ evaluationConfig: (_) => de_EvaluationConfig(__expectUnion(_), context),
1118
1118
  failureMessages: _json,
1119
1119
  inferenceConfig: (_) => de_EvaluationInferenceConfig(__expectUnion(_), context),
1120
1120
  jobArn: __expectString,
@@ -1906,6 +1906,32 @@ const se_AdditionalModelRequestFields = (input, context) => {
1906
1906
  const se_AdditionalModelRequestFieldsValue = (input, context) => {
1907
1907
  return input;
1908
1908
  };
1909
+ const se_AutomatedEvaluationConfig = (input, context) => {
1910
+ return take(input, {
1911
+ customMetricConfig: (_) => se_AutomatedEvaluationCustomMetricConfig(_, context),
1912
+ datasetMetricConfigs: _json,
1913
+ evaluatorModelConfig: _json,
1914
+ });
1915
+ };
1916
+ const se_AutomatedEvaluationCustomMetricConfig = (input, context) => {
1917
+ return take(input, {
1918
+ customMetrics: (_) => se_AutomatedEvaluationCustomMetrics(_, context),
1919
+ evaluatorModelConfig: _json,
1920
+ });
1921
+ };
1922
+ const se_AutomatedEvaluationCustomMetrics = (input, context) => {
1923
+ return input
1924
+ .filter((e) => e != null)
1925
+ .map((entry) => {
1926
+ return se_AutomatedEvaluationCustomMetricSource(entry, context);
1927
+ });
1928
+ };
1929
+ const se_AutomatedEvaluationCustomMetricSource = (input, context) => {
1930
+ return AutomatedEvaluationCustomMetricSource.visit(input, {
1931
+ customMetricDefinition: (value) => ({ customMetricDefinition: se_CustomMetricDefinition(value, context) }),
1932
+ _: (name, value) => ({ [name]: value }),
1933
+ });
1934
+ };
1909
1935
  const se_ByteContentDoc = (input, context) => {
1910
1936
  return take(input, {
1911
1937
  contentType: [],
@@ -1913,6 +1939,20 @@ const se_ByteContentDoc = (input, context) => {
1913
1939
  identifier: [],
1914
1940
  });
1915
1941
  };
1942
+ const se_CustomMetricDefinition = (input, context) => {
1943
+ return take(input, {
1944
+ instructions: [],
1945
+ name: [],
1946
+ ratingScale: (_) => se_RatingScale(_, context),
1947
+ });
1948
+ };
1949
+ const se_EvaluationConfig = (input, context) => {
1950
+ return EvaluationConfig.visit(input, {
1951
+ automated: (value) => ({ automated: se_AutomatedEvaluationConfig(value, context) }),
1952
+ human: (value) => ({ human: _json(value) }),
1953
+ _: (name, value) => ({ [name]: value }),
1954
+ });
1955
+ };
1916
1956
  const se_EvaluationInferenceConfig = (input, context) => {
1917
1957
  return EvaluationInferenceConfig.visit(input, {
1918
1958
  models: (value) => ({ models: _json(value) }),
@@ -2035,6 +2075,26 @@ const se_RagConfigs = (input, context) => {
2035
2075
  return se_RAGConfig(entry, context);
2036
2076
  });
2037
2077
  };
2078
+ const se_RatingScale = (input, context) => {
2079
+ return input
2080
+ .filter((e) => e != null)
2081
+ .map((entry) => {
2082
+ return se_RatingScaleItem(entry, context);
2083
+ });
2084
+ };
2085
+ const se_RatingScaleItem = (input, context) => {
2086
+ return take(input, {
2087
+ definition: [],
2088
+ value: (_) => se_RatingScaleItemValue(_, context),
2089
+ });
2090
+ };
2091
+ const se_RatingScaleItemValue = (input, context) => {
2092
+ return RatingScaleItemValue.visit(input, {
2093
+ floatValue: (value) => ({ floatValue: __serializeFloat(value) }),
2094
+ stringValue: (value) => ({ stringValue: value }),
2095
+ _: (name, value) => ({ [name]: value }),
2096
+ });
2097
+ };
2038
2098
  const se_RetrievalFilter = (input, context) => {
2039
2099
  return RetrievalFilter.visit(input, {
2040
2100
  andAll: (value) => ({ andAll: se_RetrievalFilterList(value, context) }),
@@ -2098,6 +2158,35 @@ const de_AdditionalModelRequestFields = (output, context) => {
2098
2158
  const de_AdditionalModelRequestFieldsValue = (output, context) => {
2099
2159
  return output;
2100
2160
  };
2161
+ const de_AutomatedEvaluationConfig = (output, context) => {
2162
+ return take(output, {
2163
+ customMetricConfig: (_) => de_AutomatedEvaluationCustomMetricConfig(_, context),
2164
+ datasetMetricConfigs: _json,
2165
+ evaluatorModelConfig: (_) => _json(__expectUnion(_)),
2166
+ });
2167
+ };
2168
+ const de_AutomatedEvaluationCustomMetricConfig = (output, context) => {
2169
+ return take(output, {
2170
+ customMetrics: (_) => de_AutomatedEvaluationCustomMetrics(_, context),
2171
+ evaluatorModelConfig: _json,
2172
+ });
2173
+ };
2174
+ const de_AutomatedEvaluationCustomMetrics = (output, context) => {
2175
+ const retVal = (output || [])
2176
+ .filter((e) => e != null)
2177
+ .map((entry) => {
2178
+ return de_AutomatedEvaluationCustomMetricSource(__expectUnion(entry), context);
2179
+ });
2180
+ return retVal;
2181
+ };
2182
+ const de_AutomatedEvaluationCustomMetricSource = (output, context) => {
2183
+ if (output.customMetricDefinition != null) {
2184
+ return {
2185
+ customMetricDefinition: de_CustomMetricDefinition(output.customMetricDefinition, context),
2186
+ };
2187
+ }
2188
+ return { $unknown: Object.entries(output)[0] };
2189
+ };
2101
2190
  const de_ByteContentDoc = (output, context) => {
2102
2191
  return take(output, {
2103
2192
  contentType: __expectString,
@@ -2105,6 +2194,13 @@ const de_ByteContentDoc = (output, context) => {
2105
2194
  identifier: __expectString,
2106
2195
  });
2107
2196
  };
2197
+ const de_CustomMetricDefinition = (output, context) => {
2198
+ return take(output, {
2199
+ instructions: __expectString,
2200
+ name: __expectString,
2201
+ ratingScale: (_) => de_RatingScale(_, context),
2202
+ });
2203
+ };
2108
2204
  const de_CustomModelSummary = (output, context) => {
2109
2205
  return take(output, {
2110
2206
  baseModelArn: __expectString,
@@ -2124,6 +2220,19 @@ const de_CustomModelSummaryList = (output, context) => {
2124
2220
  });
2125
2221
  return retVal;
2126
2222
  };
2223
+ const de_EvaluationConfig = (output, context) => {
2224
+ if (output.automated != null) {
2225
+ return {
2226
+ automated: de_AutomatedEvaluationConfig(output.automated, context),
2227
+ };
2228
+ }
2229
+ if (output.human != null) {
2230
+ return {
2231
+ human: _json(output.human),
2232
+ };
2233
+ }
2234
+ return { $unknown: Object.entries(output)[0] };
2235
+ };
2127
2236
  const de_EvaluationInferenceConfig = (output, context) => {
2128
2237
  if (output.models != null) {
2129
2238
  return {
@@ -2149,6 +2258,7 @@ const de_EvaluationSummary = (output, context) => {
2149
2258
  return take(output, {
2150
2259
  applicationType: __expectString,
2151
2260
  creationTime: (_) => __expectNonNull(__parseRfc3339DateTimeWithOffset(_)),
2261
+ customMetricsEvaluatorModelIdentifiers: _json,
2152
2262
  evaluationTaskTypes: _json,
2153
2263
  evaluatorModelIdentifiers: _json,
2154
2264
  inferenceConfigSummary: _json,
@@ -2515,6 +2625,29 @@ const de_RagConfigs = (output, context) => {
2515
2625
  });
2516
2626
  return retVal;
2517
2627
  };
2628
+ const de_RatingScale = (output, context) => {
2629
+ const retVal = (output || [])
2630
+ .filter((e) => e != null)
2631
+ .map((entry) => {
2632
+ return de_RatingScaleItem(entry, context);
2633
+ });
2634
+ return retVal;
2635
+ };
2636
+ const de_RatingScaleItem = (output, context) => {
2637
+ return take(output, {
2638
+ definition: __expectString,
2639
+ value: (_) => de_RatingScaleItemValue(__expectUnion(_), context),
2640
+ });
2641
+ };
2642
+ const de_RatingScaleItemValue = (output, context) => {
2643
+ if (__limitedParseFloat32(output.floatValue) !== undefined) {
2644
+ return { floatValue: __limitedParseFloat32(output.floatValue) };
2645
+ }
2646
+ if (__expectString(output.stringValue) !== undefined) {
2647
+ return { stringValue: __expectString(output.stringValue) };
2648
+ }
2649
+ return { $unknown: Object.entries(output)[0] };
2650
+ };
2518
2651
  const de_RetrievalFilter = (output, context) => {
2519
2652
  if (output.andAll != null) {
2520
2653
  return {
@@ -89,6 +89,36 @@ declare const BatchDeleteEvaluationJobCommand_base: {
89
89
  * <p>Base exception class for all service exceptions from Bedrock service.</p>
90
90
  *
91
91
  *
92
+ * @example Delete evaluation jobs
93
+ * ```javascript
94
+ * // The following example shows a request to delete two model evaluation jobs, where one of the jobs is not found.
95
+ * const input = {
96
+ * jobIdentifiers: [
97
+ * "arn:aws:bedrock:us-east-2:123456789012:evaluation-job/12rnxmplqv0v",
98
+ * "arn:aws:bedrock:us-east-2:123456789012:evaluation-job/rispxmpl12rn"
99
+ * ]
100
+ * };
101
+ * const command = new BatchDeleteEvaluationJobCommand(input);
102
+ * const response = await client.send(command);
103
+ * /* response is
104
+ * {
105
+ * errors: [
106
+ * {
107
+ * code: "404",
108
+ * jobIdentifier: "arn:aws:bedrock:us-east-2:123456789012:evaluation-job/rispxmpl12rn",
109
+ * message: "Unable to locate this job to delete."
110
+ * }
111
+ * ],
112
+ * evaluationJobs: [
113
+ * {
114
+ * jobIdentifier: "arn:aws:bedrock:us-east-2:123456789012:evaluation-job/12rnxmplqv0v",
115
+ * jobStatus: "Deleting"
116
+ * }
117
+ * ]
118
+ * }
119
+ * *\/
120
+ * ```
121
+ *
92
122
  * @public
93
123
  */
94
124
  export declare class BatchDeleteEvaluationJobCommand extends BatchDeleteEvaluationJobCommand_base {
@@ -70,6 +70,32 @@ declare const CreateEvaluationJobCommand_base: {
70
70
  * },
71
71
  * ],
72
72
  * },
73
+ * customMetricConfig: { // AutomatedEvaluationCustomMetricConfig
74
+ * customMetrics: [ // AutomatedEvaluationCustomMetrics // required
75
+ * { // AutomatedEvaluationCustomMetricSource Union: only one key present
76
+ * customMetricDefinition: { // CustomMetricDefinition
77
+ * name: "STRING_VALUE", // required
78
+ * instructions: "STRING_VALUE", // required
79
+ * ratingScale: [ // RatingScale
80
+ * { // RatingScaleItem
81
+ * definition: "STRING_VALUE", // required
82
+ * value: { // RatingScaleItemValue Union: only one key present
83
+ * stringValue: "STRING_VALUE",
84
+ * floatValue: Number("float"),
85
+ * },
86
+ * },
87
+ * ],
88
+ * },
89
+ * },
90
+ * ],
91
+ * evaluatorModelConfig: { // CustomMetricEvaluatorModelConfig
92
+ * bedrockEvaluatorModels: [ // CustomMetricBedrockEvaluatorModels // required
93
+ * { // CustomMetricBedrockEvaluatorModel
94
+ * modelIdentifier: "STRING_VALUE", // required
95
+ * },
96
+ * ],
97
+ * },
98
+ * },
73
99
  * },
74
100
  * human: { // HumanEvaluationConfig
75
101
  * humanWorkflowConfig: { // HumanWorkflowConfig
@@ -71,6 +71,32 @@ declare const GetEvaluationJobCommand_base: {
71
71
  * // },
72
72
  * // ],
73
73
  * // },
74
+ * // customMetricConfig: { // AutomatedEvaluationCustomMetricConfig
75
+ * // customMetrics: [ // AutomatedEvaluationCustomMetrics // required
76
+ * // { // AutomatedEvaluationCustomMetricSource Union: only one key present
77
+ * // customMetricDefinition: { // CustomMetricDefinition
78
+ * // name: "STRING_VALUE", // required
79
+ * // instructions: "STRING_VALUE", // required
80
+ * // ratingScale: [ // RatingScale
81
+ * // { // RatingScaleItem
82
+ * // definition: "STRING_VALUE", // required
83
+ * // value: { // RatingScaleItemValue Union: only one key present
84
+ * // stringValue: "STRING_VALUE",
85
+ * // floatValue: Number("float"),
86
+ * // },
87
+ * // },
88
+ * // ],
89
+ * // },
90
+ * // },
91
+ * // ],
92
+ * // evaluatorModelConfig: { // CustomMetricEvaluatorModelConfig
93
+ * // bedrockEvaluatorModels: [ // CustomMetricBedrockEvaluatorModels // required
94
+ * // { // CustomMetricBedrockEvaluatorModel
95
+ * // modelIdentifier: "STRING_VALUE", // required
96
+ * // },
97
+ * // ],
98
+ * // },
99
+ * // },
74
100
  * // },
75
101
  * // human: { // HumanEvaluationConfig
76
102
  * // humanWorkflowConfig: { // HumanWorkflowConfig
@@ -68,6 +68,9 @@ declare const ListEvaluationJobsCommand_base: {
68
68
  * // evaluatorModelIdentifiers: [ // EvaluatorModelIdentifiers
69
69
  * // "STRING_VALUE",
70
70
  * // ],
71
+ * // customMetricsEvaluatorModelIdentifiers: [
72
+ * // "STRING_VALUE",
73
+ * // ],
71
74
  * // inferenceConfigSummary: { // EvaluationInferenceConfigSummary
72
75
  * // modelConfigSummary: { // EvaluationModelConfigSummary
73
76
  * // bedrockModelIdentifiers: [
@@ -590,6 +590,162 @@ export declare const ApplicationType: {
590
590
  * @public
591
591
  */
592
592
  export type ApplicationType = (typeof ApplicationType)[keyof typeof ApplicationType];
593
+ /**
594
+ * <p>Defines the value for one rating in a custom metric rating scale.</p>
595
+ * @public
596
+ */
597
+ export type RatingScaleItemValue = RatingScaleItemValue.FloatValueMember | RatingScaleItemValue.StringValueMember | RatingScaleItemValue.$UnknownMember;
598
+ /**
599
+ * @public
600
+ */
601
+ export declare namespace RatingScaleItemValue {
602
+ /**
603
+ * <p>A string representing the value for a rating in a custom metric rating scale.</p>
604
+ * @public
605
+ */
606
+ interface StringValueMember {
607
+ stringValue: string;
608
+ floatValue?: never;
609
+ $unknown?: never;
610
+ }
611
+ /**
612
+ * <p>A floating point number representing the value for a rating in a custom metric rating scale.</p>
613
+ * @public
614
+ */
615
+ interface FloatValueMember {
616
+ stringValue?: never;
617
+ floatValue: number;
618
+ $unknown?: never;
619
+ }
620
+ /**
621
+ * @public
622
+ */
623
+ interface $UnknownMember {
624
+ stringValue?: never;
625
+ floatValue?: never;
626
+ $unknown: [string, any];
627
+ }
628
+ interface Visitor<T> {
629
+ stringValue: (value: string) => T;
630
+ floatValue: (value: number) => T;
631
+ _: (name: string, value: any) => T;
632
+ }
633
+ const visit: <T>(value: RatingScaleItemValue, visitor: Visitor<T>) => T;
634
+ }
635
+ /**
636
+ * <p>Defines the value and corresponding definition for one rating in a custom metric rating scale.</p>
637
+ * @public
638
+ */
639
+ export interface RatingScaleItem {
640
+ /**
641
+ * <p>Defines the definition for one rating in a custom metric rating scale.</p>
642
+ * @public
643
+ */
644
+ definition: string | undefined;
645
+ /**
646
+ * <p>Defines the value for one rating in a custom metric rating scale.</p>
647
+ * @public
648
+ */
649
+ value: RatingScaleItemValue | undefined;
650
+ }
651
+ /**
652
+ * <p>The definition of a custom metric for use in an Amazon Bedrock evaluation job. A custom metric definition includes a metric name, prompt (instructions) and optionally,
653
+ * a rating scale. Your prompt must include a task description and input variables. The required input variables are different for model-as-a-judge and RAG evaluations.</p>
654
+ * <p>For more information about how to define a custom metric in Amazon Bedrock,
655
+ * see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/model-evaluation-custom-metrics-prompt-formats.html">Create a prompt for a custom metrics (LLM-as-a-judge model evaluations)</a> and
656
+ * <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/kb-evaluation-custom-metrics-prompt-formats.html">Create a prompt for a custom metrics (RAG evaluations)</a>.</p>
657
+ * @public
658
+ */
659
+ export interface CustomMetricDefinition {
660
+ /**
661
+ * <p>The name for a custom metric. Names must be unique in your Amazon Web Services region.</p>
662
+ * @public
663
+ */
664
+ name: string | undefined;
665
+ /**
666
+ * <p>The prompt for a custom metric that instructs the evaluator model how to rate the model or RAG source under evaluation.</p>
667
+ * @public
668
+ */
669
+ instructions: string | undefined;
670
+ /**
671
+ * <p>Defines the rating scale to be used for a custom metric. We recommend that you always define a ratings scale when creating a custom metric. If you don't
672
+ * define a scale, Amazon Bedrock won't be able to visually display the results of the evaluation in the console or calculate average values of numerical scores. For
673
+ * more information on specifying a rating scale, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/model-evaluation-custom-metrics-prompt-formats.html#model-evaluation-custom-metrics-prompt-formats-schema">Specifying an output schema (rating scale)</a>.</p>
674
+ * @public
675
+ */
676
+ ratingScale?: RatingScaleItem[] | undefined;
677
+ }
678
+ /**
679
+ * <p>An array item definining a single custom metric for use in an Amazon Bedrock evaluation job.</p>
680
+ * @public
681
+ */
682
+ export type AutomatedEvaluationCustomMetricSource = AutomatedEvaluationCustomMetricSource.CustomMetricDefinitionMember | AutomatedEvaluationCustomMetricSource.$UnknownMember;
683
+ /**
684
+ * @public
685
+ */
686
+ export declare namespace AutomatedEvaluationCustomMetricSource {
687
+ /**
688
+ * <p>The definition of a custom metric for use in an Amazon Bedrock evaluation job.</p>
689
+ * @public
690
+ */
691
+ interface CustomMetricDefinitionMember {
692
+ customMetricDefinition: CustomMetricDefinition;
693
+ $unknown?: never;
694
+ }
695
+ /**
696
+ * @public
697
+ */
698
+ interface $UnknownMember {
699
+ customMetricDefinition?: never;
700
+ $unknown: [string, any];
701
+ }
702
+ interface Visitor<T> {
703
+ customMetricDefinition: (value: CustomMetricDefinition) => T;
704
+ _: (name: string, value: any) => T;
705
+ }
706
+ const visit: <T>(value: AutomatedEvaluationCustomMetricSource, visitor: Visitor<T>) => T;
707
+ }
708
+ /**
709
+ * <p>Defines the model you want to evaluate custom metrics in an Amazon Bedrock evaluation job.</p>
710
+ * @public
711
+ */
712
+ export interface CustomMetricBedrockEvaluatorModel {
713
+ /**
714
+ * <p>The Amazon Resource Name (ARN) of the evaluator model for custom metrics. For a list of supported evaluator models, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/evaluation-judge.html">Evaluate model performance
715
+ * using another LLM as a judge</a> and <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/evaluation-kb.html">Evaluate the performance of RAG sources using Amazon Bedrock evaluations</a>.</p>
716
+ * @public
717
+ */
718
+ modelIdentifier: string | undefined;
719
+ }
720
+ /**
721
+ * <p>Configuration of the evaluator model you want to use to evaluate custom metrics in an Amazon Bedrock evaluation job.</p>
722
+ * @public
723
+ */
724
+ export interface CustomMetricEvaluatorModelConfig {
725
+ /**
726
+ * <p>Defines the model you want to evaluate custom metrics in an Amazon Bedrock evaluation job.</p>
727
+ * @public
728
+ */
729
+ bedrockEvaluatorModels: CustomMetricBedrockEvaluatorModel[] | undefined;
730
+ }
731
+ /**
732
+ * <p>Defines the configuration of custom metrics to be used in an evaluation job. To learn more about using custom metrics
733
+ * in Amazon Bedrock evaluation jobs, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/model-evaluation-custom-metrics-prompt-formats.html">Create a prompt for a custom metrics (LLM-as-a-judge model evaluations)</a> and
734
+ * <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/kb-evaluation-custom-metrics-prompt-formats.html">Create a prompt for a custom metrics (RAG evaluations)</a>.</p>
735
+ * @public
736
+ */
737
+ export interface AutomatedEvaluationCustomMetricConfig {
738
+ /**
739
+ * <p>Defines a list of custom metrics to be used in an Amazon Bedrock evaluation job.</p>
740
+ * @public
741
+ */
742
+ customMetrics: AutomatedEvaluationCustomMetricSource[] | undefined;
743
+ /**
744
+ * <p>Configuration of the evaluator model you want to use to evaluate custom metrics in an Amazon Bedrock evaluation job.</p>
745
+ * @public
746
+ */
747
+ evaluatorModelConfig: CustomMetricEvaluatorModelConfig | undefined;
748
+ }
593
749
  /**
594
750
  * <p>The location in Amazon S3 where your prompt dataset is stored.</p>
595
751
  * @public
@@ -670,7 +826,7 @@ export interface EvaluationDatasetMetricConfig {
670
826
  /**
671
827
  * <p>The names of the metrics you want to use for your evaluation job.</p>
672
828
  * <p>For knowledge base evaluation jobs that evaluate retrieval only, valid values are
673
- * "<code>Builtin.ContextRelevance</code>", "<code>Builtin.ContextConverage</code>".</p>
829
+ * "<code>Builtin.ContextRelevance</code>", "<code>Builtin.ContextCoverage</code>".</p>
674
830
  * <p>For knowledge base evaluation jobs that evaluate retrieval with response generation,
675
831
  * valid values are "<code>Builtin.Correctness</code>", "<code>Builtin.Completeness</code>",
676
832
  * "<code>Builtin.Helpfulness</code>", "<code>Builtin.LogicalCoherence</code>",
@@ -740,6 +896,11 @@ export interface AutomatedEvaluationConfig {
740
896
  * @public
741
897
  */
742
898
  evaluatorModelConfig?: EvaluatorModelConfig | undefined;
899
+ /**
900
+ * <p>Defines the configuration of custom metrics to be used in an evaluation job.</p>
901
+ * @public
902
+ */
903
+ customMetricConfig?: AutomatedEvaluationCustomMetricConfig | undefined;
743
904
  }
744
905
  /**
745
906
  * <p>In a model evaluation job that uses human workers you must
@@ -1533,6 +1694,11 @@ export interface EvaluationSummary {
1533
1694
  * @public
1534
1695
  */
1535
1696
  evaluatorModelIdentifiers?: string[] | undefined;
1697
+ /**
1698
+ * <p>The Amazon Resource Names (ARNs) of the models used to compute custom metrics in an Amazon Bedrock evaluation job.</p>
1699
+ * @public
1700
+ */
1701
+ customMetricsEvaluatorModelIdentifiers?: string[] | undefined;
1536
1702
  /**
1537
1703
  * <p>Identifies the models, Knowledge Bases, or other RAG sources evaluated in a model or Knowledge Base evaluation job.</p>
1538
1704
  * @public
@@ -5117,7 +5283,7 @@ export interface GetModelInvocationJobResponse {
5117
5283
  * <p>PartiallyCompleted – This job has partially completed. Not all of your records could be processed in time. View the output files in the output S3 location.</p>
5118
5284
  * </li>
5119
5285
  * <li>
5120
- * <p>Failed – This job has failed. Check the failure message for any further details. For further assistance, reach out to the <a href="https://console.aws.amazon.com/support/home/">Amazon Web Services Support Center</a>.</p>
5286
+ * <p>Failed – This job has failed. Check the failure message for any further details. For further assistance, reach out to the <a href="https://console.aws.amazon.com/support/home/">Amazon Web ServicesSupport Center</a>.</p>
5121
5287
  * </li>
5122
5288
  * <li>
5123
5289
  * <p>Stopped – This job was stopped by a user.</p>
@@ -5226,7 +5392,7 @@ export interface ListModelInvocationJobsRequest {
5226
5392
  * <p>PartiallyCompleted – This job has partially completed. Not all of your records could be processed in time. View the output files in the output S3 location.</p>
5227
5393
  * </li>
5228
5394
  * <li>
5229
- * <p>Failed – This job has failed. Check the failure message for any further details. For further assistance, reach out to the <a href="https://console.aws.amazon.com/support/home/">Amazon Web Services Support Center</a>.</p>
5395
+ * <p>Failed – This job has failed. Check the failure message for any further details. For further assistance, reach out to the <a href="https://console.aws.amazon.com/support/home/">Amazon Web ServicesSupport Center</a>.</p>
5230
5396
  * </li>
5231
5397
  * <li>
5232
5398
  * <p>Stopped – This job was stopped by a user.</p>
@@ -5336,7 +5502,7 @@ export interface ModelInvocationJobSummary {
5336
5502
  * <p>PartiallyCompleted – This job has partially completed. Not all of your records could be processed in time. View the output files in the output S3 location.</p>
5337
5503
  * </li>
5338
5504
  * <li>
5339
- * <p>Failed – This job has failed. Check the failure message for any further details. For further assistance, reach out to the <a href="https://console.aws.amazon.com/support/home/">Amazon Web Services Support Center</a>.</p>
5505
+ * <p>Failed – This job has failed. Check the failure message for any further details. For further assistance, reach out to the <a href="https://console.aws.amazon.com/support/home/">Amazon Web ServicesSupport Center</a>.</p>
5340
5506
  * </li>
5341
5507
  * <li>
5342
5508
  * <p>Stopped – This job was stopped by a user.</p>
@@ -7969,6 +8135,18 @@ export declare const BatchDeleteEvaluationJobItemFilterSensitiveLog: (obj: Batch
7969
8135
  * @internal
7970
8136
  */
7971
8137
  export declare const BatchDeleteEvaluationJobResponseFilterSensitiveLog: (obj: BatchDeleteEvaluationJobResponse) => any;
8138
+ /**
8139
+ * @internal
8140
+ */
8141
+ export declare const CustomMetricDefinitionFilterSensitiveLog: (obj: CustomMetricDefinition) => any;
8142
+ /**
8143
+ * @internal
8144
+ */
8145
+ export declare const AutomatedEvaluationCustomMetricSourceFilterSensitiveLog: (obj: AutomatedEvaluationCustomMetricSource) => any;
8146
+ /**
8147
+ * @internal
8148
+ */
8149
+ export declare const AutomatedEvaluationCustomMetricConfigFilterSensitiveLog: (obj: AutomatedEvaluationCustomMetricConfig) => any;
7972
8150
  /**
7973
8151
  * @internal
7974
8152
  */
@@ -193,6 +193,73 @@ export declare const ApplicationType: {
193
193
  };
194
194
  export type ApplicationType =
195
195
  (typeof ApplicationType)[keyof typeof ApplicationType];
196
+ export type RatingScaleItemValue =
197
+ | RatingScaleItemValue.FloatValueMember
198
+ | RatingScaleItemValue.StringValueMember
199
+ | RatingScaleItemValue.$UnknownMember;
200
+ export declare namespace RatingScaleItemValue {
201
+ interface StringValueMember {
202
+ stringValue: string;
203
+ floatValue?: never;
204
+ $unknown?: never;
205
+ }
206
+ interface FloatValueMember {
207
+ stringValue?: never;
208
+ floatValue: number;
209
+ $unknown?: never;
210
+ }
211
+ interface $UnknownMember {
212
+ stringValue?: never;
213
+ floatValue?: never;
214
+ $unknown: [string, any];
215
+ }
216
+ interface Visitor<T> {
217
+ stringValue: (value: string) => T;
218
+ floatValue: (value: number) => T;
219
+ _: (name: string, value: any) => T;
220
+ }
221
+ const visit: <T>(value: RatingScaleItemValue, visitor: Visitor<T>) => T;
222
+ }
223
+ export interface RatingScaleItem {
224
+ definition: string | undefined;
225
+ value: RatingScaleItemValue | undefined;
226
+ }
227
+ export interface CustomMetricDefinition {
228
+ name: string | undefined;
229
+ instructions: string | undefined;
230
+ ratingScale?: RatingScaleItem[] | undefined;
231
+ }
232
+ export type AutomatedEvaluationCustomMetricSource =
233
+ | AutomatedEvaluationCustomMetricSource.CustomMetricDefinitionMember
234
+ | AutomatedEvaluationCustomMetricSource.$UnknownMember;
235
+ export declare namespace AutomatedEvaluationCustomMetricSource {
236
+ interface CustomMetricDefinitionMember {
237
+ customMetricDefinition: CustomMetricDefinition;
238
+ $unknown?: never;
239
+ }
240
+ interface $UnknownMember {
241
+ customMetricDefinition?: never;
242
+ $unknown: [string, any];
243
+ }
244
+ interface Visitor<T> {
245
+ customMetricDefinition: (value: CustomMetricDefinition) => T;
246
+ _: (name: string, value: any) => T;
247
+ }
248
+ const visit: <T>(
249
+ value: AutomatedEvaluationCustomMetricSource,
250
+ visitor: Visitor<T>
251
+ ) => T;
252
+ }
253
+ export interface CustomMetricBedrockEvaluatorModel {
254
+ modelIdentifier: string | undefined;
255
+ }
256
+ export interface CustomMetricEvaluatorModelConfig {
257
+ bedrockEvaluatorModels: CustomMetricBedrockEvaluatorModel[] | undefined;
258
+ }
259
+ export interface AutomatedEvaluationCustomMetricConfig {
260
+ customMetrics: AutomatedEvaluationCustomMetricSource[] | undefined;
261
+ evaluatorModelConfig: CustomMetricEvaluatorModelConfig | undefined;
262
+ }
196
263
  export type EvaluationDatasetLocation =
197
264
  | EvaluationDatasetLocation.S3UriMember
198
265
  | EvaluationDatasetLocation.$UnknownMember;
@@ -253,6 +320,7 @@ export declare namespace EvaluatorModelConfig {
253
320
  export interface AutomatedEvaluationConfig {
254
321
  datasetMetricConfigs: EvaluationDatasetMetricConfig[] | undefined;
255
322
  evaluatorModelConfig?: EvaluatorModelConfig | undefined;
323
+ customMetricConfig?: AutomatedEvaluationCustomMetricConfig | undefined;
256
324
  }
257
325
  export interface HumanEvaluationCustomMetric {
258
326
  name: string | undefined;
@@ -518,6 +586,7 @@ export interface EvaluationSummary {
518
586
  modelIdentifiers?: string[] | undefined;
519
587
  ragIdentifiers?: string[] | undefined;
520
588
  evaluatorModelIdentifiers?: string[] | undefined;
589
+ customMetricsEvaluatorModelIdentifiers?: string[] | undefined;
521
590
  inferenceConfigSummary?: EvaluationInferenceConfigSummary | undefined;
522
591
  applicationType?: ApplicationType | undefined;
523
592
  }
@@ -2274,6 +2343,15 @@ export declare const BatchDeleteEvaluationJobItemFilterSensitiveLog: (
2274
2343
  export declare const BatchDeleteEvaluationJobResponseFilterSensitiveLog: (
2275
2344
  obj: BatchDeleteEvaluationJobResponse
2276
2345
  ) => any;
2346
+ export declare const CustomMetricDefinitionFilterSensitiveLog: (
2347
+ obj: CustomMetricDefinition
2348
+ ) => any;
2349
+ export declare const AutomatedEvaluationCustomMetricSourceFilterSensitiveLog: (
2350
+ obj: AutomatedEvaluationCustomMetricSource
2351
+ ) => any;
2352
+ export declare const AutomatedEvaluationCustomMetricConfigFilterSensitiveLog: (
2353
+ obj: AutomatedEvaluationCustomMetricConfig
2354
+ ) => any;
2277
2355
  export declare const EvaluationDatasetFilterSensitiveLog: (
2278
2356
  obj: EvaluationDataset
2279
2357
  ) => any;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-bedrock",
3
3
  "description": "AWS SDK for JavaScript Bedrock Client for Node.js, Browser and React Native",
4
- "version": "3.787.0",
4
+ "version": "3.796.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "node ../../scripts/compilation/inline client-bedrock",
@@ -20,17 +20,17 @@
20
20
  "dependencies": {
21
21
  "@aws-crypto/sha256-browser": "5.2.0",
22
22
  "@aws-crypto/sha256-js": "5.2.0",
23
- "@aws-sdk/core": "3.775.0",
24
- "@aws-sdk/credential-provider-node": "3.787.0",
23
+ "@aws-sdk/core": "3.796.0",
24
+ "@aws-sdk/credential-provider-node": "3.796.0",
25
25
  "@aws-sdk/middleware-host-header": "3.775.0",
26
26
  "@aws-sdk/middleware-logger": "3.775.0",
27
27
  "@aws-sdk/middleware-recursion-detection": "3.775.0",
28
- "@aws-sdk/middleware-user-agent": "3.787.0",
28
+ "@aws-sdk/middleware-user-agent": "3.796.0",
29
29
  "@aws-sdk/region-config-resolver": "3.775.0",
30
30
  "@aws-sdk/types": "3.775.0",
31
31
  "@aws-sdk/util-endpoints": "3.787.0",
32
32
  "@aws-sdk/util-user-agent-browser": "3.775.0",
33
- "@aws-sdk/util-user-agent-node": "3.787.0",
33
+ "@aws-sdk/util-user-agent-node": "3.796.0",
34
34
  "@smithy/config-resolver": "^4.1.0",
35
35
  "@smithy/core": "^3.2.0",
36
36
  "@smithy/fetch-http-handler": "^5.0.2",