aws-sdk-cleanroomsml 1.38.0 → 1.40.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d3614617eb7eb0224a10e8f4362c96020bc2d0daa4e50c1625ba421b5484d8d1
4
- data.tar.gz: dadf2dd1f266247ca3c575b8e92b7d88e63c48307cbb4471a7cf59d4cc3657af
3
+ metadata.gz: a60080dfe592cf23379395b4e7e7f7431d4c79c309febe5bb82916df6eca0086
4
+ data.tar.gz: 6d112f86d77b01208ba4c4738fb854334f057b00c952a7500e65f1fccf2ed8f2
5
5
  SHA512:
6
- metadata.gz: 48118f34667f9f420cf6a8a6ca480aba71104e922a12d0ef00cd1d5e4b447757e1b55d6e38178b0f41026095793ef79a042cd027aa331967394e92f674779b2a
7
- data.tar.gz: 682194b30b3b6f8b849d4ac2edf11d11c0b8200064e4b8fab20801251026eb51c7ff45f9715467d6c21baf817f0be71210026302c8d9f1f5822be97125bf0601
6
+ metadata.gz: dc5b99a553e470cd63ed734a7642e0e0257896c3b9a4f7000823da311b640542951384100638606aa9071b399dbb53cd581890816168dcadbacbf4e834b2e24c
7
+ data.tar.gz: 335e98733082f2b7cea5a860b46d0acd4d26d2ee00ae4ed882cce58d99cf11dd4d3a9a2838faf4d8da5f2e3a5e7920cf954ee768c1695b26cccc2f968aaadeb6
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.40.0 (2026-01-05)
5
+ ------------------
6
+
7
+ * Feature - AWS Clean Rooms ML now supports advanced Spark configurations to optimize SQL performance when creating an MLInputChannel or an audience generation job.
8
+
9
+ 1.39.0 (2025-12-01)
10
+ ------------------
11
+
12
+ * Feature - AWS Clean Rooms ML now supports privacy-enhancing synthetic dataset generation for custom ML training.
13
+
4
14
  1.38.0 (2025-11-21)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.38.0
1
+ 1.40.0
@@ -1066,13 +1066,18 @@ module Aws::CleanRoomsML
1066
1066
  # query_string: "ProtectedQuerySQLParametersQueryStringString",
1067
1067
  # analysis_template_arn: "AnalysisTemplateArn",
1068
1068
  # parameters: {
1069
- # "ParameterKey" => "ParameterValue",
1069
+ # "ParameterName" => "ParameterValue",
1070
1070
  # },
1071
1071
  # },
1072
1072
  # compute_configuration: {
1073
1073
  # worker: {
1074
1074
  # type: "CR.1X", # accepts CR.1X, CR.4X
1075
1075
  # number: 1,
1076
+ # properties: {
1077
+ # spark: {
1078
+ # "SparkPropertyKey" => "SparkPropertyValue",
1079
+ # },
1080
+ # },
1076
1081
  # },
1077
1082
  # },
1078
1083
  # result_format: "CSV", # accepts CSV, PARQUET
@@ -1674,9 +1679,11 @@ module Aws::CleanRoomsML
1674
1679
  # resp.seed_audience.sql_parameters.query_string #=> String
1675
1680
  # resp.seed_audience.sql_parameters.analysis_template_arn #=> String
1676
1681
  # resp.seed_audience.sql_parameters.parameters #=> Hash
1677
- # resp.seed_audience.sql_parameters.parameters["ParameterKey"] #=> String
1682
+ # resp.seed_audience.sql_parameters.parameters["ParameterName"] #=> String
1678
1683
  # resp.seed_audience.sql_compute_configuration.worker.type #=> String, one of "CR.1X", "CR.4X"
1679
1684
  # resp.seed_audience.sql_compute_configuration.worker.number #=> Integer
1685
+ # resp.seed_audience.sql_compute_configuration.worker.properties.spark #=> Hash
1686
+ # resp.seed_audience.sql_compute_configuration.worker.properties.spark["SparkPropertyKey"] #=> String
1680
1687
  # resp.include_seed_in_output #=> Boolean
1681
1688
  # resp.collaboration_id #=> String
1682
1689
  # resp.metrics.relevance_metrics #=> Array
@@ -1855,6 +1862,7 @@ module Aws::CleanRoomsML
1855
1862
  # * {Types::GetCollaborationMLInputChannelResponse#number_of_records #number_of_records} => Integer
1856
1863
  # * {Types::GetCollaborationMLInputChannelResponse#privacy_budgets #privacy_budgets} => Types::PrivacyBudgets
1857
1864
  # * {Types::GetCollaborationMLInputChannelResponse#description #description} => String
1865
+ # * {Types::GetCollaborationMLInputChannelResponse#synthetic_data_configuration #synthetic_data_configuration} => Types::SyntheticDataConfiguration
1858
1866
  # * {Types::GetCollaborationMLInputChannelResponse#create_time #create_time} => Time
1859
1867
  # * {Types::GetCollaborationMLInputChannelResponse#update_time #update_time} => Time
1860
1868
  # * {Types::GetCollaborationMLInputChannelResponse#creator_account_id #creator_account_id} => String
@@ -1890,6 +1898,15 @@ module Aws::CleanRoomsML
1890
1898
  # resp.privacy_budgets.access_budgets[0].details[0].auto_refresh #=> String, one of "ENABLED", "DISABLED"
1891
1899
  # resp.privacy_budgets.access_budgets[0].aggregate_remaining_budget #=> Integer
1892
1900
  # resp.description #=> String
1901
+ # resp.synthetic_data_configuration.synthetic_data_parameters.epsilon #=> Float
1902
+ # resp.synthetic_data_configuration.synthetic_data_parameters.max_membership_inference_attack_score #=> Float
1903
+ # resp.synthetic_data_configuration.synthetic_data_parameters.column_classification.column_mapping #=> Array
1904
+ # resp.synthetic_data_configuration.synthetic_data_parameters.column_classification.column_mapping[0].column_name #=> String
1905
+ # resp.synthetic_data_configuration.synthetic_data_parameters.column_classification.column_mapping[0].column_type #=> String, one of "CATEGORICAL", "NUMERICAL"
1906
+ # resp.synthetic_data_configuration.synthetic_data_parameters.column_classification.column_mapping[0].is_predictive_value #=> Boolean
1907
+ # resp.synthetic_data_configuration.synthetic_data_evaluation_scores.data_privacy_scores.membership_inference_attack_scores #=> Array
1908
+ # resp.synthetic_data_configuration.synthetic_data_evaluation_scores.data_privacy_scores.membership_inference_attack_scores[0].attack_version #=> String, one of "DISTANCE_TO_CLOSEST_RECORD_V1"
1909
+ # resp.synthetic_data_configuration.synthetic_data_evaluation_scores.data_privacy_scores.membership_inference_attack_scores[0].score #=> Float
1893
1910
  # resp.create_time #=> Time
1894
1911
  # resp.update_time #=> Time
1895
1912
  # resp.creator_account_id #=> String
@@ -2273,6 +2290,7 @@ module Aws::CleanRoomsML
2273
2290
  # * {Types::GetMLInputChannelResponse#number_of_records #number_of_records} => Integer
2274
2291
  # * {Types::GetMLInputChannelResponse#privacy_budgets #privacy_budgets} => Types::PrivacyBudgets
2275
2292
  # * {Types::GetMLInputChannelResponse#description #description} => String
2293
+ # * {Types::GetMLInputChannelResponse#synthetic_data_configuration #synthetic_data_configuration} => Types::SyntheticDataConfiguration
2276
2294
  # * {Types::GetMLInputChannelResponse#create_time #create_time} => Time
2277
2295
  # * {Types::GetMLInputChannelResponse#update_time #update_time} => Time
2278
2296
  # * {Types::GetMLInputChannelResponse#input_channel #input_channel} => Types::InputChannel
@@ -2313,14 +2331,25 @@ module Aws::CleanRoomsML
2313
2331
  # resp.privacy_budgets.access_budgets[0].details[0].auto_refresh #=> String, one of "ENABLED", "DISABLED"
2314
2332
  # resp.privacy_budgets.access_budgets[0].aggregate_remaining_budget #=> Integer
2315
2333
  # resp.description #=> String
2334
+ # resp.synthetic_data_configuration.synthetic_data_parameters.epsilon #=> Float
2335
+ # resp.synthetic_data_configuration.synthetic_data_parameters.max_membership_inference_attack_score #=> Float
2336
+ # resp.synthetic_data_configuration.synthetic_data_parameters.column_classification.column_mapping #=> Array
2337
+ # resp.synthetic_data_configuration.synthetic_data_parameters.column_classification.column_mapping[0].column_name #=> String
2338
+ # resp.synthetic_data_configuration.synthetic_data_parameters.column_classification.column_mapping[0].column_type #=> String, one of "CATEGORICAL", "NUMERICAL"
2339
+ # resp.synthetic_data_configuration.synthetic_data_parameters.column_classification.column_mapping[0].is_predictive_value #=> Boolean
2340
+ # resp.synthetic_data_configuration.synthetic_data_evaluation_scores.data_privacy_scores.membership_inference_attack_scores #=> Array
2341
+ # resp.synthetic_data_configuration.synthetic_data_evaluation_scores.data_privacy_scores.membership_inference_attack_scores[0].attack_version #=> String, one of "DISTANCE_TO_CLOSEST_RECORD_V1"
2342
+ # resp.synthetic_data_configuration.synthetic_data_evaluation_scores.data_privacy_scores.membership_inference_attack_scores[0].score #=> Float
2316
2343
  # resp.create_time #=> Time
2317
2344
  # resp.update_time #=> Time
2318
2345
  # resp.input_channel.data_source.protected_query_input_parameters.sql_parameters.query_string #=> String
2319
2346
  # resp.input_channel.data_source.protected_query_input_parameters.sql_parameters.analysis_template_arn #=> String
2320
2347
  # resp.input_channel.data_source.protected_query_input_parameters.sql_parameters.parameters #=> Hash
2321
- # resp.input_channel.data_source.protected_query_input_parameters.sql_parameters.parameters["ParameterKey"] #=> String
2348
+ # resp.input_channel.data_source.protected_query_input_parameters.sql_parameters.parameters["ParameterName"] #=> String
2322
2349
  # resp.input_channel.data_source.protected_query_input_parameters.compute_configuration.worker.type #=> String, one of "CR.1X", "CR.4X"
2323
2350
  # resp.input_channel.data_source.protected_query_input_parameters.compute_configuration.worker.number #=> Integer
2351
+ # resp.input_channel.data_source.protected_query_input_parameters.compute_configuration.worker.properties.spark #=> Hash
2352
+ # resp.input_channel.data_source.protected_query_input_parameters.compute_configuration.worker.properties.spark["SparkPropertyKey"] #=> String
2324
2353
  # resp.input_channel.data_source.protected_query_input_parameters.result_format #=> String, one of "CSV", "PARQUET"
2325
2354
  # resp.input_channel.role_arn #=> String
2326
2355
  # resp.protected_query_identifier #=> String
@@ -3687,13 +3716,18 @@ module Aws::CleanRoomsML
3687
3716
  # query_string: "ProtectedQuerySQLParametersQueryStringString",
3688
3717
  # analysis_template_arn: "AnalysisTemplateArn",
3689
3718
  # parameters: {
3690
- # "ParameterKey" => "ParameterValue",
3719
+ # "ParameterName" => "ParameterValue",
3691
3720
  # },
3692
3721
  # },
3693
3722
  # sql_compute_configuration: {
3694
3723
  # worker: {
3695
3724
  # type: "CR.1X", # accepts CR.1X, CR.4X
3696
3725
  # number: 1,
3726
+ # properties: {
3727
+ # spark: {
3728
+ # "SparkPropertyKey" => "SparkPropertyValue",
3729
+ # },
3730
+ # },
3697
3731
  # },
3698
3732
  # },
3699
3733
  # },
@@ -4075,7 +4109,7 @@ module Aws::CleanRoomsML
4075
4109
  tracer: tracer
4076
4110
  )
4077
4111
  context[:gem_name] = 'aws-sdk-cleanroomsml'
4078
- context[:gem_version] = '1.38.0'
4112
+ context[:gem_version] = '1.40.0'
4079
4113
  Seahorse::Client::Request.new(handlers, context)
4080
4114
  end
4081
4115
 
@@ -61,6 +61,8 @@ module Aws::CleanRoomsML
61
61
  CollaborationTrainedModelInferenceJobSummary = Shapes::StructureShape.new(name: 'CollaborationTrainedModelInferenceJobSummary')
62
62
  CollaborationTrainedModelList = Shapes::ListShape.new(name: 'CollaborationTrainedModelList')
63
63
  CollaborationTrainedModelSummary = Shapes::StructureShape.new(name: 'CollaborationTrainedModelSummary')
64
+ ColumnClassificationDetails = Shapes::StructureShape.new(name: 'ColumnClassificationDetails')
65
+ ColumnMappingList = Shapes::ListShape.new(name: 'ColumnMappingList')
64
66
  ColumnName = Shapes::StringShape.new(name: 'ColumnName')
65
67
  ColumnSchema = Shapes::StructureShape.new(name: 'ColumnSchema')
66
68
  ColumnType = Shapes::StringShape.new(name: 'ColumnType')
@@ -103,6 +105,7 @@ module Aws::CleanRoomsML
103
105
  CustomDataIdentifier = Shapes::StringShape.new(name: 'CustomDataIdentifier')
104
106
  CustomDataIdentifierList = Shapes::ListShape.new(name: 'CustomDataIdentifierList')
105
107
  CustomEntityConfig = Shapes::StructureShape.new(name: 'CustomEntityConfig')
108
+ DataPrivacyScores = Shapes::StructureShape.new(name: 'DataPrivacyScores')
106
109
  DataSource = Shapes::StructureShape.new(name: 'DataSource')
107
110
  Dataset = Shapes::StructureShape.new(name: 'Dataset')
108
111
  DatasetInputConfig = Shapes::StructureShape.new(name: 'DatasetInputConfig')
@@ -237,7 +240,14 @@ module Aws::CleanRoomsML
237
240
  MLInputChannelSummaryConfiguredModelAlgorithmAssociationsList = Shapes::ListShape.new(name: 'MLInputChannelSummaryConfiguredModelAlgorithmAssociationsList')
238
241
  MLInputChannelsList = Shapes::ListShape.new(name: 'MLInputChannelsList')
239
242
  MLOutputConfiguration = Shapes::StructureShape.new(name: 'MLOutputConfiguration')
243
+ MLSyntheticDataParameters = Shapes::StructureShape.new(name: 'MLSyntheticDataParameters')
244
+ MLSyntheticDataParametersEpsilonDouble = Shapes::FloatShape.new(name: 'MLSyntheticDataParametersEpsilonDouble')
245
+ MLSyntheticDataParametersMaxMembershipInferenceAttackScoreDouble = Shapes::FloatShape.new(name: 'MLSyntheticDataParametersMaxMembershipInferenceAttackScoreDouble')
240
246
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
247
+ MembershipInferenceAttackScore = Shapes::StructureShape.new(name: 'MembershipInferenceAttackScore')
248
+ MembershipInferenceAttackScoreList = Shapes::ListShape.new(name: 'MembershipInferenceAttackScoreList')
249
+ MembershipInferenceAttackScoreScoreDouble = Shapes::FloatShape.new(name: 'MembershipInferenceAttackScoreScoreDouble')
250
+ MembershipInferenceAttackVersion = Shapes::StringShape.new(name: 'MembershipInferenceAttackVersion')
241
251
  MetricDefinition = Shapes::StructureShape.new(name: 'MetricDefinition')
242
252
  MetricDefinitionList = Shapes::ListShape.new(name: 'MetricDefinitionList')
243
253
  MetricName = Shapes::StringShape.new(name: 'MetricName')
@@ -253,8 +263,8 @@ module Aws::CleanRoomsML
253
263
  NameString = Shapes::StringShape.new(name: 'NameString')
254
264
  NextToken = Shapes::StringShape.new(name: 'NextToken')
255
265
  NoiseLevelType = Shapes::StringShape.new(name: 'NoiseLevelType')
256
- ParameterKey = Shapes::StringShape.new(name: 'ParameterKey')
257
266
  ParameterMap = Shapes::MapShape.new(name: 'ParameterMap')
267
+ ParameterName = Shapes::StringShape.new(name: 'ParameterName')
258
268
  ParameterValue = Shapes::StringShape.new(name: 'ParameterValue')
259
269
  PolicyExistenceCondition = Shapes::StringShape.new(name: 'PolicyExistenceCondition')
260
270
  PrivacyBudgets = Shapes::UnionShape.new(name: 'PrivacyBudgets')
@@ -282,6 +292,9 @@ module Aws::CleanRoomsML
282
292
  ServiceQuotaExceededException = Shapes::StructureShape.new(name: 'ServiceQuotaExceededException')
283
293
  ServiceQuotaExceededExceptionQuotaValueDouble = Shapes::FloatShape.new(name: 'ServiceQuotaExceededExceptionQuotaValueDouble')
284
294
  SharedAudienceMetrics = Shapes::StringShape.new(name: 'SharedAudienceMetrics')
295
+ SparkProperties = Shapes::MapShape.new(name: 'SparkProperties')
296
+ SparkPropertyKey = Shapes::StringShape.new(name: 'SparkPropertyKey')
297
+ SparkPropertyValue = Shapes::StringShape.new(name: 'SparkPropertyValue')
285
298
  StartAudienceExportJobRequest = Shapes::StructureShape.new(name: 'StartAudienceExportJobRequest')
286
299
  StartAudienceGenerationJobRequest = Shapes::StructureShape.new(name: 'StartAudienceGenerationJobRequest')
287
300
  StartAudienceGenerationJobResponse = Shapes::StructureShape.new(name: 'StartAudienceGenerationJobResponse')
@@ -292,6 +305,11 @@ module Aws::CleanRoomsML
292
305
  StoppingCondition = Shapes::StructureShape.new(name: 'StoppingCondition')
293
306
  StoppingConditionMaxRuntimeInSecondsInteger = Shapes::IntegerShape.new(name: 'StoppingConditionMaxRuntimeInSecondsInteger')
294
307
  String = Shapes::StringShape.new(name: 'String')
308
+ SyntheticDataColumnName = Shapes::StringShape.new(name: 'SyntheticDataColumnName')
309
+ SyntheticDataColumnProperties = Shapes::StructureShape.new(name: 'SyntheticDataColumnProperties')
310
+ SyntheticDataColumnType = Shapes::StringShape.new(name: 'SyntheticDataColumnType')
311
+ SyntheticDataConfiguration = Shapes::StructureShape.new(name: 'SyntheticDataConfiguration')
312
+ SyntheticDataEvaluationScores = Shapes::StructureShape.new(name: 'SyntheticDataEvaluationScores')
295
313
  SyntheticTimestamp_date_time = Shapes::TimestampShape.new(name: 'SyntheticTimestamp_date_time', timestampFormat: "iso8601")
296
314
  TagKey = Shapes::StringShape.new(name: 'TagKey')
297
315
  TagKeys = Shapes::ListShape.new(name: 'TagKeys')
@@ -341,6 +359,7 @@ module Aws::CleanRoomsML
341
359
  ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
342
360
  WorkerComputeConfiguration = Shapes::StructureShape.new(name: 'WorkerComputeConfiguration')
343
361
  WorkerComputeConfigurationNumberInteger = Shapes::IntegerShape.new(name: 'WorkerComputeConfigurationNumberInteger')
362
+ WorkerComputeConfigurationProperties = Shapes::UnionShape.new(name: 'WorkerComputeConfigurationProperties')
344
363
  WorkerComputeType = Shapes::StringShape.new(name: 'WorkerComputeType')
345
364
 
346
365
  AccessBudget.add_member(:resource_arn, Shapes::ShapeRef.new(shape: BudgetedResourceArn, required: true, location_name: "resourceArn"))
@@ -516,6 +535,11 @@ module Aws::CleanRoomsML
516
535
  CollaborationTrainedModelSummary.add_member(:creator_account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "creatorAccountId"))
517
536
  CollaborationTrainedModelSummary.struct_class = Types::CollaborationTrainedModelSummary
518
537
 
538
+ ColumnClassificationDetails.add_member(:column_mapping, Shapes::ShapeRef.new(shape: ColumnMappingList, required: true, location_name: "columnMapping"))
539
+ ColumnClassificationDetails.struct_class = Types::ColumnClassificationDetails
540
+
541
+ ColumnMappingList.member = Shapes::ShapeRef.new(shape: SyntheticDataColumnProperties)
542
+
519
543
  ColumnSchema.add_member(:column_name, Shapes::ShapeRef.new(shape: ColumnName, required: true, location_name: "columnName"))
520
544
  ColumnSchema.add_member(:column_types, Shapes::ShapeRef.new(shape: ColumnTypeList, required: true, location_name: "columnTypes"))
521
545
  ColumnSchema.struct_class = Types::ColumnSchema
@@ -678,6 +702,9 @@ module Aws::CleanRoomsML
678
702
  CustomEntityConfig.add_member(:custom_data_identifiers, Shapes::ShapeRef.new(shape: CustomDataIdentifierList, required: true, location_name: "customDataIdentifiers"))
679
703
  CustomEntityConfig.struct_class = Types::CustomEntityConfig
680
704
 
705
+ DataPrivacyScores.add_member(:membership_inference_attack_scores, Shapes::ShapeRef.new(shape: MembershipInferenceAttackScoreList, required: true, location_name: "membershipInferenceAttackScores"))
706
+ DataPrivacyScores.struct_class = Types::DataPrivacyScores
707
+
681
708
  DataSource.add_member(:glue_data_source, Shapes::ShapeRef.new(shape: GlueDataSource, required: true, location_name: "glueDataSource"))
682
709
  DataSource.struct_class = Types::DataSource
683
710
 
@@ -803,6 +830,7 @@ module Aws::CleanRoomsML
803
830
  GetCollaborationMLInputChannelResponse.add_member(:number_of_records, Shapes::ShapeRef.new(shape: GetCollaborationMLInputChannelResponseNumberOfRecordsLong, location_name: "numberOfRecords"))
804
831
  GetCollaborationMLInputChannelResponse.add_member(:privacy_budgets, Shapes::ShapeRef.new(shape: PrivacyBudgets, location_name: "privacyBudgets"))
805
832
  GetCollaborationMLInputChannelResponse.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "description"))
833
+ GetCollaborationMLInputChannelResponse.add_member(:synthetic_data_configuration, Shapes::ShapeRef.new(shape: SyntheticDataConfiguration, location_name: "syntheticDataConfiguration"))
806
834
  GetCollaborationMLInputChannelResponse.add_member(:create_time, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, required: true, location_name: "createTime"))
807
835
  GetCollaborationMLInputChannelResponse.add_member(:update_time, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, required: true, location_name: "updateTime"))
808
836
  GetCollaborationMLInputChannelResponse.add_member(:creator_account_id, Shapes::ShapeRef.new(shape: AccountId, required: true, location_name: "creatorAccountId"))
@@ -919,6 +947,7 @@ module Aws::CleanRoomsML
919
947
  GetMLInputChannelResponse.add_member(:number_of_records, Shapes::ShapeRef.new(shape: GetMLInputChannelResponseNumberOfRecordsLong, location_name: "numberOfRecords"))
920
948
  GetMLInputChannelResponse.add_member(:privacy_budgets, Shapes::ShapeRef.new(shape: PrivacyBudgets, location_name: "privacyBudgets"))
921
949
  GetMLInputChannelResponse.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "description"))
950
+ GetMLInputChannelResponse.add_member(:synthetic_data_configuration, Shapes::ShapeRef.new(shape: SyntheticDataConfiguration, location_name: "syntheticDataConfiguration"))
922
951
  GetMLInputChannelResponse.add_member(:create_time, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, required: true, location_name: "createTime"))
923
952
  GetMLInputChannelResponse.add_member(:update_time, Shapes::ShapeRef.new(shape: SyntheticTimestamp_date_time, required: true, location_name: "updateTime"))
924
953
  GetMLInputChannelResponse.add_member(:input_channel, Shapes::ShapeRef.new(shape: InputChannel, required: true, location_name: "inputChannel"))
@@ -1250,6 +1279,17 @@ module Aws::CleanRoomsML
1250
1279
  MLOutputConfiguration.add_member(:role_arn, Shapes::ShapeRef.new(shape: IamRoleArn, required: true, location_name: "roleArn"))
1251
1280
  MLOutputConfiguration.struct_class = Types::MLOutputConfiguration
1252
1281
 
1282
+ MLSyntheticDataParameters.add_member(:epsilon, Shapes::ShapeRef.new(shape: MLSyntheticDataParametersEpsilonDouble, required: true, location_name: "epsilon"))
1283
+ MLSyntheticDataParameters.add_member(:max_membership_inference_attack_score, Shapes::ShapeRef.new(shape: MLSyntheticDataParametersMaxMembershipInferenceAttackScoreDouble, required: true, location_name: "maxMembershipInferenceAttackScore"))
1284
+ MLSyntheticDataParameters.add_member(:column_classification, Shapes::ShapeRef.new(shape: ColumnClassificationDetails, location_name: "columnClassification"))
1285
+ MLSyntheticDataParameters.struct_class = Types::MLSyntheticDataParameters
1286
+
1287
+ MembershipInferenceAttackScore.add_member(:attack_version, Shapes::ShapeRef.new(shape: MembershipInferenceAttackVersion, required: true, location_name: "attackVersion"))
1288
+ MembershipInferenceAttackScore.add_member(:score, Shapes::ShapeRef.new(shape: MembershipInferenceAttackScoreScoreDouble, required: true, location_name: "score"))
1289
+ MembershipInferenceAttackScore.struct_class = Types::MembershipInferenceAttackScore
1290
+
1291
+ MembershipInferenceAttackScoreList.member = Shapes::ShapeRef.new(shape: MembershipInferenceAttackScore)
1292
+
1253
1293
  MetricDefinition.add_member(:name, Shapes::ShapeRef.new(shape: MetricName, required: true, location_name: "name"))
1254
1294
  MetricDefinition.add_member(:regex, Shapes::ShapeRef.new(shape: MetricRegex, required: true, location_name: "regex"))
1255
1295
  MetricDefinition.struct_class = Types::MetricDefinition
@@ -1271,7 +1311,7 @@ module Aws::CleanRoomsML
1271
1311
 
1272
1312
  ModelTrainingDataChannels.member = Shapes::ShapeRef.new(shape: ModelTrainingDataChannel)
1273
1313
 
1274
- ParameterMap.key = Shapes::ShapeRef.new(shape: ParameterKey)
1314
+ ParameterMap.key = Shapes::ShapeRef.new(shape: ParameterName)
1275
1315
  ParameterMap.value = Shapes::ShapeRef.new(shape: ParameterValue)
1276
1316
 
1277
1317
  PrivacyBudgets.add_member(:access_budgets, Shapes::ShapeRef.new(shape: AccessBudgets, location_name: "accessBudgets"))
@@ -1334,6 +1374,9 @@ module Aws::CleanRoomsML
1334
1374
  ServiceQuotaExceededException.add_member(:quota_value, Shapes::ShapeRef.new(shape: ServiceQuotaExceededExceptionQuotaValueDouble, location_name: "quotaValue"))
1335
1375
  ServiceQuotaExceededException.struct_class = Types::ServiceQuotaExceededException
1336
1376
 
1377
+ SparkProperties.key = Shapes::ShapeRef.new(shape: SparkPropertyKey)
1378
+ SparkProperties.value = Shapes::ShapeRef.new(shape: SparkPropertyValue)
1379
+
1337
1380
  StartAudienceExportJobRequest.add_member(:name, Shapes::ShapeRef.new(shape: NameString, required: true, location_name: "name"))
1338
1381
  StartAudienceExportJobRequest.add_member(:audience_generation_job_arn, Shapes::ShapeRef.new(shape: AudienceGenerationJobArn, required: true, location_name: "audienceGenerationJobArn"))
1339
1382
  StartAudienceExportJobRequest.add_member(:audience_size, Shapes::ShapeRef.new(shape: AudienceSize, required: true, location_name: "audienceSize"))
@@ -1385,6 +1428,18 @@ module Aws::CleanRoomsML
1385
1428
  StoppingCondition.add_member(:max_runtime_in_seconds, Shapes::ShapeRef.new(shape: StoppingConditionMaxRuntimeInSecondsInteger, location_name: "maxRuntimeInSeconds"))
1386
1429
  StoppingCondition.struct_class = Types::StoppingCondition
1387
1430
 
1431
+ SyntheticDataColumnProperties.add_member(:column_name, Shapes::ShapeRef.new(shape: SyntheticDataColumnName, required: true, location_name: "columnName"))
1432
+ SyntheticDataColumnProperties.add_member(:column_type, Shapes::ShapeRef.new(shape: SyntheticDataColumnType, required: true, location_name: "columnType"))
1433
+ SyntheticDataColumnProperties.add_member(:is_predictive_value, Shapes::ShapeRef.new(shape: Boolean, required: true, location_name: "isPredictiveValue"))
1434
+ SyntheticDataColumnProperties.struct_class = Types::SyntheticDataColumnProperties
1435
+
1436
+ SyntheticDataConfiguration.add_member(:synthetic_data_parameters, Shapes::ShapeRef.new(shape: MLSyntheticDataParameters, required: true, location_name: "syntheticDataParameters"))
1437
+ SyntheticDataConfiguration.add_member(:synthetic_data_evaluation_scores, Shapes::ShapeRef.new(shape: SyntheticDataEvaluationScores, location_name: "syntheticDataEvaluationScores"))
1438
+ SyntheticDataConfiguration.struct_class = Types::SyntheticDataConfiguration
1439
+
1440
+ SyntheticDataEvaluationScores.add_member(:data_privacy_scores, Shapes::ShapeRef.new(shape: DataPrivacyScores, required: true, location_name: "dataPrivacyScores"))
1441
+ SyntheticDataEvaluationScores.struct_class = Types::SyntheticDataEvaluationScores
1442
+
1388
1443
  TagKeys.member = Shapes::ShapeRef.new(shape: TagKey)
1389
1444
 
1390
1445
  TagMap.key = Shapes::ShapeRef.new(shape: TagKey)
@@ -1502,8 +1557,15 @@ module Aws::CleanRoomsML
1502
1557
 
1503
1558
  WorkerComputeConfiguration.add_member(:type, Shapes::ShapeRef.new(shape: WorkerComputeType, location_name: "type"))
1504
1559
  WorkerComputeConfiguration.add_member(:number, Shapes::ShapeRef.new(shape: WorkerComputeConfigurationNumberInteger, location_name: "number"))
1560
+ WorkerComputeConfiguration.add_member(:properties, Shapes::ShapeRef.new(shape: WorkerComputeConfigurationProperties, location_name: "properties"))
1505
1561
  WorkerComputeConfiguration.struct_class = Types::WorkerComputeConfiguration
1506
1562
 
1563
+ WorkerComputeConfigurationProperties.add_member(:spark, Shapes::ShapeRef.new(shape: SparkProperties, location_name: "spark"))
1564
+ WorkerComputeConfigurationProperties.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
1565
+ WorkerComputeConfigurationProperties.add_member_subclass(:spark, Types::WorkerComputeConfigurationProperties::Spark)
1566
+ WorkerComputeConfigurationProperties.add_member_subclass(:unknown, Types::WorkerComputeConfigurationProperties::Unknown)
1567
+ WorkerComputeConfigurationProperties.struct_class = Types::WorkerComputeConfigurationProperties
1568
+
1507
1569
 
1508
1570
  # @api private
1509
1571
  API = Seahorse::Model::Api.new.tap do |api|
@@ -804,6 +804,24 @@ module Aws::CleanRoomsML
804
804
  include Aws::Structure
805
805
  end
806
806
 
807
+ # Contains classification information for data columns, including
808
+ # mappings that specify how columns should be handled during synthetic
809
+ # data generation and privacy analysis.
810
+ #
811
+ # @!attribute [rw] column_mapping
812
+ # A mapping that defines the classification of data columns for
813
+ # synthetic data generation and specifies how each column should be
814
+ # handled during the privacy-preserving data synthesis process.
815
+ # @return [Array<Types::SyntheticDataColumnProperties>]
816
+ #
817
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ColumnClassificationDetails AWS API Documentation
818
+ #
819
+ class ColumnClassificationDetails < Struct.new(
820
+ :column_mapping)
821
+ SENSITIVE = []
822
+ include Aws::Structure
823
+ end
824
+
807
825
  # Metadata for a column.
808
826
  #
809
827
  # @!attribute [rw] column_name
@@ -1802,6 +1820,24 @@ module Aws::CleanRoomsML
1802
1820
  include Aws::Structure
1803
1821
  end
1804
1822
 
1823
+ # Privacy evaluation scores that measure the privacy characteristics of
1824
+ # the generated synthetic data, including assessments of potential
1825
+ # privacy risks such as membership inference attacks.
1826
+ #
1827
+ # @!attribute [rw] membership_inference_attack_scores
1828
+ # Scores that evaluate the vulnerability of the synthetic data to
1829
+ # membership inference attacks, which attempt to determine whether a
1830
+ # specific individual was a member of the original dataset.
1831
+ # @return [Array<Types::MembershipInferenceAttackScore>]
1832
+ #
1833
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/DataPrivacyScores AWS API Documentation
1834
+ #
1835
+ class DataPrivacyScores < Struct.new(
1836
+ :membership_inference_attack_scores)
1837
+ SENSITIVE = []
1838
+ include Aws::Structure
1839
+ end
1840
+
1805
1841
  # Defines information about the Glue data source that contains the
1806
1842
  # training data.
1807
1843
  #
@@ -2370,6 +2406,13 @@ module Aws::CleanRoomsML
2370
2406
  # The description of the ML input channel.
2371
2407
  # @return [String]
2372
2408
  #
2409
+ # @!attribute [rw] synthetic_data_configuration
2410
+ # The synthetic data configuration for this ML input channel,
2411
+ # including parameters for generating privacy-preserving synthetic
2412
+ # data and evaluation scores for measuring the privacy of the
2413
+ # generated data.
2414
+ # @return [Types::SyntheticDataConfiguration]
2415
+ #
2373
2416
  # @!attribute [rw] create_time
2374
2417
  # The time at which the ML input channel was created.
2375
2418
  # @return [Time]
@@ -2396,6 +2439,7 @@ module Aws::CleanRoomsML
2396
2439
  :number_of_records,
2397
2440
  :privacy_budgets,
2398
2441
  :description,
2442
+ :synthetic_data_configuration,
2399
2443
  :create_time,
2400
2444
  :update_time,
2401
2445
  :creator_account_id)
@@ -3007,6 +3051,13 @@ module Aws::CleanRoomsML
3007
3051
  # The description of the ML input channel.
3008
3052
  # @return [String]
3009
3053
  #
3054
+ # @!attribute [rw] synthetic_data_configuration
3055
+ # The synthetic data configuration for this ML input channel,
3056
+ # including parameters for generating privacy-preserving synthetic
3057
+ # data and evaluation scores for measuring the privacy of the
3058
+ # generated data.
3059
+ # @return [Types::SyntheticDataConfiguration]
3060
+ #
3010
3061
  # @!attribute [rw] create_time
3011
3062
  # The time at which the ML input channel was created.
3012
3063
  # @return [Time]
@@ -3084,6 +3135,7 @@ module Aws::CleanRoomsML
3084
3135
  :number_of_records,
3085
3136
  :privacy_budgets,
3086
3137
  :description,
3138
+ :synthetic_data_configuration,
3087
3139
  :create_time,
3088
3140
  :update_time,
3089
3141
  :input_channel,
@@ -4643,6 +4695,61 @@ module Aws::CleanRoomsML
4643
4695
  include Aws::Structure
4644
4696
  end
4645
4697
 
4698
+ # Parameters that control the generation of synthetic data for custom
4699
+ # model training, including privacy settings and column classification
4700
+ # details.
4701
+ #
4702
+ # @!attribute [rw] epsilon
4703
+ # The epsilon value for differential privacy, which controls the
4704
+ # privacy-utility tradeoff in synthetic data generation. Lower values
4705
+ # provide stronger privacy guarantees but may reduce data utility.
4706
+ # @return [Float]
4707
+ #
4708
+ # @!attribute [rw] max_membership_inference_attack_score
4709
+ # The maximum acceptable score for membership inference attack
4710
+ # vulnerability. Synthetic data generation fails if the score for the
4711
+ # resulting data exceeds this threshold.
4712
+ # @return [Float]
4713
+ #
4714
+ # @!attribute [rw] column_classification
4715
+ # Classification details for data columns that specify how each column
4716
+ # should be treated during synthetic data generation.
4717
+ # @return [Types::ColumnClassificationDetails]
4718
+ #
4719
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/MLSyntheticDataParameters AWS API Documentation
4720
+ #
4721
+ class MLSyntheticDataParameters < Struct.new(
4722
+ :epsilon,
4723
+ :max_membership_inference_attack_score,
4724
+ :column_classification)
4725
+ SENSITIVE = []
4726
+ include Aws::Structure
4727
+ end
4728
+
4729
+ # A score that measures the vulnerability of synthetic data to
4730
+ # membership inference attacks and provides both the numerical score and
4731
+ # the version of the attack methodology used for evaluation.
4732
+ #
4733
+ # @!attribute [rw] attack_version
4734
+ # The version of the membership inference attack, which consists of
4735
+ # the attack type and its version number, used to generate this
4736
+ # privacy score.
4737
+ # @return [String]
4738
+ #
4739
+ # @!attribute [rw] score
4740
+ # The numerical score representing the vulnerability to membership
4741
+ # inference attacks.
4742
+ # @return [Float]
4743
+ #
4744
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/MembershipInferenceAttackScore AWS API Documentation
4745
+ #
4746
+ class MembershipInferenceAttackScore < Struct.new(
4747
+ :attack_version,
4748
+ :score)
4749
+ SENSITIVE = []
4750
+ include Aws::Structure
4751
+ end
4752
+
4646
4753
  # Information about the model metric that is reported for a trained
4647
4754
  # model.
4648
4755
  #
@@ -4943,7 +5050,13 @@ module Aws::CleanRoomsML
4943
5050
  # @return [String]
4944
5051
  #
4945
5052
  # @!attribute [rw] volume_size_in_gb
4946
- # The maximum size of the instance that is used to train the model.
5053
+ # The volume size of the instance that is used to train the model.
5054
+ # Please see [EC2 volume limit][1] for volume size limitations on
5055
+ # different instance types.
5056
+ #
5057
+ #
5058
+ #
5059
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-store-volumes.html
4947
5060
  # @return [Integer]
4948
5061
  #
4949
5062
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/ResourceConfig AWS API Documentation
@@ -5324,6 +5437,81 @@ module Aws::CleanRoomsML
5324
5437
  include Aws::Structure
5325
5438
  end
5326
5439
 
5440
+ # Properties that define how a specific data column should be handled
5441
+ # during synthetic data generation, including its name, type, and role
5442
+ # in predictive modeling.
5443
+ #
5444
+ # @!attribute [rw] column_name
5445
+ # The name of the data column as it appears in the dataset.
5446
+ # @return [String]
5447
+ #
5448
+ # @!attribute [rw] column_type
5449
+ # The data type of the column, which determines how the synthetic data
5450
+ # generation algorithm processes and synthesizes values for this
5451
+ # column.
5452
+ # @return [String]
5453
+ #
5454
+ # @!attribute [rw] is_predictive_value
5455
+ # Indicates if this column contains predictive values that should be
5456
+ # treated as target variables in machine learning models. This affects
5457
+ # how the synthetic data generation preserves statistical
5458
+ # relationships.
5459
+ # @return [Boolean]
5460
+ #
5461
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/SyntheticDataColumnProperties AWS API Documentation
5462
+ #
5463
+ class SyntheticDataColumnProperties < Struct.new(
5464
+ :column_name,
5465
+ :column_type,
5466
+ :is_predictive_value)
5467
+ SENSITIVE = []
5468
+ include Aws::Structure
5469
+ end
5470
+
5471
+ # Configuration settings for synthetic data generation, including the
5472
+ # parameters that control data synthesis and the evaluation scores that
5473
+ # measure the quality and privacy characteristics of the generated
5474
+ # synthetic data.
5475
+ #
5476
+ # @!attribute [rw] synthetic_data_parameters
5477
+ # The parameters that control how synthetic data is generated,
5478
+ # including privacy settings, column classifications, and other
5479
+ # configuration options that affect the data synthesis process.
5480
+ # @return [Types::MLSyntheticDataParameters]
5481
+ #
5482
+ # @!attribute [rw] synthetic_data_evaluation_scores
5483
+ # Evaluation scores that assess the quality and privacy
5484
+ # characteristics of the generated synthetic data, providing metrics
5485
+ # on data utility and privacy preservation.
5486
+ # @return [Types::SyntheticDataEvaluationScores]
5487
+ #
5488
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/SyntheticDataConfiguration AWS API Documentation
5489
+ #
5490
+ class SyntheticDataConfiguration < Struct.new(
5491
+ :synthetic_data_parameters,
5492
+ :synthetic_data_evaluation_scores)
5493
+ SENSITIVE = []
5494
+ include Aws::Structure
5495
+ end
5496
+
5497
+ # Comprehensive evaluation metrics for synthetic data that assess both
5498
+ # the utility of the generated data for machine learning tasks and its
5499
+ # privacy preservation characteristics.
5500
+ #
5501
+ # @!attribute [rw] data_privacy_scores
5502
+ # Privacy-specific evaluation scores that measure how well the
5503
+ # synthetic data protects individual privacy, including assessments of
5504
+ # potential privacy risks such as membership inference attacks.
5505
+ # @return [Types::DataPrivacyScores]
5506
+ #
5507
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/SyntheticDataEvaluationScores AWS API Documentation
5508
+ #
5509
+ class SyntheticDataEvaluationScores < Struct.new(
5510
+ :data_privacy_scores)
5511
+ SENSITIVE = []
5512
+ include Aws::Structure
5513
+ end
5514
+
5327
5515
  # @!attribute [rw] resource_arn
5328
5516
  # The Amazon Resource Name (ARN) of the resource that you want to
5329
5517
  # assign tags.
@@ -5856,15 +6044,52 @@ module Aws::CleanRoomsML
5856
6044
  # The number of compute workers that are used.
5857
6045
  # @return [Integer]
5858
6046
  #
6047
+ # @!attribute [rw] properties
6048
+ # The configuration properties for the worker compute environment.
6049
+ # These properties allow you to customize the compute settings for
6050
+ # your Clean Rooms workloads.
6051
+ # @return [Types::WorkerComputeConfigurationProperties]
6052
+ #
5859
6053
  # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/WorkerComputeConfiguration AWS API Documentation
5860
6054
  #
5861
6055
  class WorkerComputeConfiguration < Struct.new(
5862
6056
  :type,
5863
- :number)
6057
+ :number,
6058
+ :properties)
5864
6059
  SENSITIVE = []
5865
6060
  include Aws::Structure
5866
6061
  end
5867
6062
 
6063
+ # The configuration properties for the worker compute environment. These
6064
+ # properties allow you to customize the compute settings for your Clean
6065
+ # Rooms workloads.
6066
+ #
6067
+ # @note WorkerComputeConfigurationProperties is a union - when making an API calls you must set exactly one of the members.
6068
+ #
6069
+ # @note WorkerComputeConfigurationProperties is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of WorkerComputeConfigurationProperties corresponding to the set member.
6070
+ #
6071
+ # @!attribute [rw] spark
6072
+ # The Spark configuration properties for SQL workloads. This map
6073
+ # contains key-value pairs that configure Apache Spark settings to
6074
+ # optimize performance for your data processing jobs. You can specify
6075
+ # up to 50 Spark properties, with each key being 1-200 characters and
6076
+ # each value being 0-500 characters. These properties allow you to
6077
+ # adjust compute capacity for large datasets and complex workloads.
6078
+ # @return [Hash<String,String>]
6079
+ #
6080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cleanroomsml-2023-09-06/WorkerComputeConfigurationProperties AWS API Documentation
6081
+ #
6082
+ class WorkerComputeConfigurationProperties < Struct.new(
6083
+ :spark,
6084
+ :unknown)
6085
+ SENSITIVE = []
6086
+ include Aws::Structure
6087
+ include Aws::Structure::Union
6088
+
6089
+ class Spark < WorkerComputeConfigurationProperties; end
6090
+ class Unknown < WorkerComputeConfigurationProperties; end
6091
+ end
6092
+
5868
6093
  end
5869
6094
  end
5870
6095
 
@@ -55,7 +55,7 @@ module Aws::CleanRoomsML
55
55
  autoload :EndpointProvider, 'aws-sdk-cleanroomsml/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-cleanroomsml/endpoints'
57
57
 
58
- GEM_VERSION = '1.38.0'
58
+ GEM_VERSION = '1.40.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -250,7 +250,10 @@ module Aws
250
250
  compute_configuration: {
251
251
  worker: {
252
252
  type: ("CR.1X" | "CR.4X")?,
253
- number: ::Integer?
253
+ number: ::Integer?,
254
+ properties: {
255
+ spark: Hash[::String, ::String]?
256
+ }?
254
257
  }?
255
258
  }?,
256
259
  result_format: ("CSV" | "PARQUET")?
@@ -482,6 +485,7 @@ module Aws
482
485
  def number_of_records: () -> ::Integer
483
486
  def privacy_budgets: () -> Types::PrivacyBudgets
484
487
  def description: () -> ::String
488
+ def synthetic_data_configuration: () -> Types::SyntheticDataConfiguration
485
489
  def create_time: () -> ::Time
486
490
  def update_time: () -> ::Time
487
491
  def creator_account_id: () -> ::String
@@ -624,6 +628,7 @@ module Aws
624
628
  def number_of_records: () -> ::Integer
625
629
  def privacy_budgets: () -> Types::PrivacyBudgets
626
630
  def description: () -> ::String
631
+ def synthetic_data_configuration: () -> Types::SyntheticDataConfiguration
627
632
  def create_time: () -> ::Time
628
633
  def update_time: () -> ::Time
629
634
  def input_channel: () -> Types::InputChannel
@@ -1011,7 +1016,10 @@ module Aws
1011
1016
  sql_compute_configuration: {
1012
1017
  worker: {
1013
1018
  type: ("CR.1X" | "CR.4X")?,
1014
- number: ::Integer?
1019
+ number: ::Integer?,
1020
+ properties: {
1021
+ spark: Hash[::String, ::String]?
1022
+ }?
1015
1023
  }?
1016
1024
  }?
1017
1025
  },
data/sig/types.rbs CHANGED
@@ -191,6 +191,11 @@ module Aws::CleanRoomsML
191
191
  SENSITIVE: []
192
192
  end
193
193
 
194
+ class ColumnClassificationDetails
195
+ attr_accessor column_mapping: ::Array[Types::SyntheticDataColumnProperties]
196
+ SENSITIVE: []
197
+ end
198
+
194
199
  class ColumnSchema
195
200
  attr_accessor column_name: ::String
196
201
  attr_accessor column_types: ::Array[("USER_ID" | "ITEM_ID" | "TIMESTAMP" | "CATEGORICAL_FEATURE" | "NUMERICAL_FEATURE")]
@@ -384,6 +389,11 @@ module Aws::CleanRoomsML
384
389
  SENSITIVE: []
385
390
  end
386
391
 
392
+ class DataPrivacyScores
393
+ attr_accessor membership_inference_attack_scores: ::Array[Types::MembershipInferenceAttackScore]
394
+ SENSITIVE: []
395
+ end
396
+
387
397
  class DataSource
388
398
  attr_accessor glue_data_source: Types::GlueDataSource
389
399
  SENSITIVE: []
@@ -543,6 +553,7 @@ module Aws::CleanRoomsML
543
553
  attr_accessor number_of_records: ::Integer
544
554
  attr_accessor privacy_budgets: Types::PrivacyBudgets
545
555
  attr_accessor description: ::String
556
+ attr_accessor synthetic_data_configuration: Types::SyntheticDataConfiguration
546
557
  attr_accessor create_time: ::Time
547
558
  attr_accessor update_time: ::Time
548
559
  attr_accessor creator_account_id: ::String
@@ -685,6 +696,7 @@ module Aws::CleanRoomsML
685
696
  attr_accessor number_of_records: ::Integer
686
697
  attr_accessor privacy_budgets: Types::PrivacyBudgets
687
698
  attr_accessor description: ::String
699
+ attr_accessor synthetic_data_configuration: Types::SyntheticDataConfiguration
688
700
  attr_accessor create_time: ::Time
689
701
  attr_accessor update_time: ::Time
690
702
  attr_accessor input_channel: Types::InputChannel
@@ -1110,6 +1122,19 @@ module Aws::CleanRoomsML
1110
1122
  SENSITIVE: []
1111
1123
  end
1112
1124
 
1125
+ class MLSyntheticDataParameters
1126
+ attr_accessor epsilon: ::Float
1127
+ attr_accessor max_membership_inference_attack_score: ::Float
1128
+ attr_accessor column_classification: Types::ColumnClassificationDetails
1129
+ SENSITIVE: []
1130
+ end
1131
+
1132
+ class MembershipInferenceAttackScore
1133
+ attr_accessor attack_version: ("DISTANCE_TO_CLOSEST_RECORD_V1")
1134
+ attr_accessor score: ::Float
1135
+ SENSITIVE: []
1136
+ end
1137
+
1113
1138
  class MetricDefinition
1114
1139
  attr_accessor name: ::String
1115
1140
  attr_accessor regex: ::String
@@ -1287,6 +1312,24 @@ module Aws::CleanRoomsML
1287
1312
  SENSITIVE: []
1288
1313
  end
1289
1314
 
1315
+ class SyntheticDataColumnProperties
1316
+ attr_accessor column_name: ::String
1317
+ attr_accessor column_type: ("CATEGORICAL" | "NUMERICAL")
1318
+ attr_accessor is_predictive_value: bool
1319
+ SENSITIVE: []
1320
+ end
1321
+
1322
+ class SyntheticDataConfiguration
1323
+ attr_accessor synthetic_data_parameters: Types::MLSyntheticDataParameters
1324
+ attr_accessor synthetic_data_evaluation_scores: Types::SyntheticDataEvaluationScores
1325
+ SENSITIVE: []
1326
+ end
1327
+
1328
+ class SyntheticDataEvaluationScores
1329
+ attr_accessor data_privacy_scores: Types::DataPrivacyScores
1330
+ SENSITIVE: []
1331
+ end
1332
+
1290
1333
  class TagResourceRequest
1291
1334
  attr_accessor resource_arn: ::String
1292
1335
  attr_accessor tags: ::Hash[::String, ::String]
@@ -1426,7 +1469,19 @@ module Aws::CleanRoomsML
1426
1469
  class WorkerComputeConfiguration
1427
1470
  attr_accessor type: ("CR.1X" | "CR.4X")
1428
1471
  attr_accessor number: ::Integer
1472
+ attr_accessor properties: Types::WorkerComputeConfigurationProperties
1429
1473
  SENSITIVE: []
1430
1474
  end
1475
+
1476
+ class WorkerComputeConfigurationProperties
1477
+ attr_accessor spark: ::Hash[::String, ::String]
1478
+ attr_accessor unknown: untyped
1479
+ SENSITIVE: []
1480
+
1481
+ class Spark < WorkerComputeConfigurationProperties
1482
+ end
1483
+ class Unknown < WorkerComputeConfigurationProperties
1484
+ end
1485
+ end
1431
1486
  end
1432
1487
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-cleanroomsml
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.38.0
4
+ version: 1.40.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
@@ -18,7 +18,7 @@ dependencies:
18
18
  version: '3'
19
19
  - - ">="
20
20
  - !ruby/object:Gem::Version
21
- version: 3.239.1
21
+ version: 3.241.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -28,7 +28,7 @@ dependencies:
28
28
  version: '3'
29
29
  - - ">="
30
30
  - !ruby/object:Gem::Version
31
- version: 3.239.1
31
+ version: 3.241.0
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: aws-sigv4
34
34
  requirement: !ruby/object:Gem::Requirement