aws-sdk-sagemaker 1.383.0 → 1.384.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: 3e818bd870be19b6b855c0d751115d66ff42249f2c7fb2d150459f8c1c62cc8c
4
- data.tar.gz: 5dfb5180298731ccf458258afabf6e1c6d233d6d14e00983291b6ebbb8bd598c
3
+ metadata.gz: a3266009736b6b5612256074edfbd19cf4b6e9c2c8787b25a4326464171ede3a
4
+ data.tar.gz: 0c63a8ed4cae74a43f4822b4d9df2628ee207dc99d17cbaac0f620c4d9c88840
5
5
  SHA512:
6
- metadata.gz: 645f7c91235ef6f2cae7a286e2009c579d0bbee49452b7d457e76bcdda849e7181f9ec4a2a9fe0bb98bb43dfaca9f0a59f6149c02ce401e573bdccac9b5331e2
7
- data.tar.gz: 92baeedd9c315d8c6604178588fd6c61d36fcbcd913ea6308c44954967f90770072e920f5a93aee557d7ce790ca84aa7e7fdebe5d7fe4ca2d6e69aec93605706
6
+ metadata.gz: 7b1c0c9510476ad1c4ef9b80f6541e31bba49e12ddddb6fa40887c36b9c71d33d5d25fc9302bafdd3c1d3a333efbd8075a6098b074d33ac400512912ecb97c08
7
+ data.tar.gz: 6697605752bb56f096498c98757184f0febed63850417133347d1a7fab528651231a71adc272a40812f92020863722d2a53eb1c0c72a90ce1d728f0261d759eb
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.384.0 (2026-08-10)
5
+ ------------------
6
+
7
+ * Feature - Added PREFIX AWARE routing strategy and PrefixAwareRoutingConfig to CreateEndpointConfig. Configure PrefixLength and ConcurrencyThreshold to route requests that share the same prompt prefix to the same instance.
8
+
4
9
  1.383.0 (2026-08-07)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.383.0
1
+ 1.384.0
@@ -4823,7 +4823,11 @@ module Aws::SageMaker
4823
4823
  # },
4824
4824
  # },
4825
4825
  # routing_config: {
4826
- # routing_strategy: "LEAST_OUTSTANDING_REQUESTS", # required, accepts LEAST_OUTSTANDING_REQUESTS, RANDOM
4826
+ # routing_strategy: "LEAST_OUTSTANDING_REQUESTS", # required, accepts LEAST_OUTSTANDING_REQUESTS, RANDOM, PREFIX_AWARE
4827
+ # prefix_aware_routing_config: {
4828
+ # prefix_length: 1,
4829
+ # concurrency_threshold: 1,
4830
+ # },
4827
4831
  # },
4828
4832
  # inference_ami_version: "al2-ami-sagemaker-inference-gpu-2", # accepts al2-ami-sagemaker-inference-gpu-2, al2-ami-sagemaker-inference-gpu-2-1, al2-ami-sagemaker-inference-gpu-3-1, al2-ami-sagemaker-inference-neuron-2, al2023-ami-sagemaker-inference-gpu-4-1
4829
4833
  # capacity_reservation_config: {
@@ -4941,7 +4945,11 @@ module Aws::SageMaker
4941
4945
  # },
4942
4946
  # },
4943
4947
  # routing_config: {
4944
- # routing_strategy: "LEAST_OUTSTANDING_REQUESTS", # required, accepts LEAST_OUTSTANDING_REQUESTS, RANDOM
4948
+ # routing_strategy: "LEAST_OUTSTANDING_REQUESTS", # required, accepts LEAST_OUTSTANDING_REQUESTS, RANDOM, PREFIX_AWARE
4949
+ # prefix_aware_routing_config: {
4950
+ # prefix_length: 1,
4951
+ # concurrency_threshold: 1,
4952
+ # },
4945
4953
  # },
4946
4954
  # inference_ami_version: "al2-ami-sagemaker-inference-gpu-2", # accepts al2-ami-sagemaker-inference-gpu-2, al2-ami-sagemaker-inference-gpu-2-1, al2-ami-sagemaker-inference-gpu-3-1, al2-ami-sagemaker-inference-neuron-2, al2023-ami-sagemaker-inference-gpu-4-1
4947
4955
  # capacity_reservation_config: {
@@ -16346,7 +16354,9 @@ module Aws::SageMaker
16346
16354
  # resp.production_variants[0].managed_instance_scaling.scale_in_policy.strategy #=> String, one of "IDLE_RELEASE", "CONSOLIDATION"
16347
16355
  # resp.production_variants[0].managed_instance_scaling.scale_in_policy.maximum_step_size #=> Integer
16348
16356
  # resp.production_variants[0].managed_instance_scaling.scale_in_policy.cooldown_in_minutes #=> Integer
16349
- # resp.production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM"
16357
+ # resp.production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM", "PREFIX_AWARE"
16358
+ # resp.production_variants[0].routing_config.prefix_aware_routing_config.prefix_length #=> Integer
16359
+ # resp.production_variants[0].routing_config.prefix_aware_routing_config.concurrency_threshold #=> Integer
16350
16360
  # resp.production_variants[0].capacity_reservation_config.ml_reservation_arn #=> String
16351
16361
  # resp.production_variants[0].capacity_reservation_config.capacity_reservation_preference #=> String, one of "capacity-reservations-only"
16352
16362
  # resp.production_variants[0].capacity_reservation_config.total_instance_count #=> Integer
@@ -16422,7 +16432,9 @@ module Aws::SageMaker
16422
16432
  # resp.pending_deployment_summary.production_variants[0].managed_instance_scaling.scale_in_policy.strategy #=> String, one of "IDLE_RELEASE", "CONSOLIDATION"
16423
16433
  # resp.pending_deployment_summary.production_variants[0].managed_instance_scaling.scale_in_policy.maximum_step_size #=> Integer
16424
16434
  # resp.pending_deployment_summary.production_variants[0].managed_instance_scaling.scale_in_policy.cooldown_in_minutes #=> Integer
16425
- # resp.pending_deployment_summary.production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM"
16435
+ # resp.pending_deployment_summary.production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM", "PREFIX_AWARE"
16436
+ # resp.pending_deployment_summary.production_variants[0].routing_config.prefix_aware_routing_config.prefix_length #=> Integer
16437
+ # resp.pending_deployment_summary.production_variants[0].routing_config.prefix_aware_routing_config.concurrency_threshold #=> Integer
16426
16438
  # resp.pending_deployment_summary.start_time #=> Time
16427
16439
  # resp.pending_deployment_summary.shadow_production_variants #=> Array
16428
16440
  # resp.pending_deployment_summary.shadow_production_variants[0].variant_name #=> String
@@ -16455,7 +16467,9 @@ module Aws::SageMaker
16455
16467
  # resp.pending_deployment_summary.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.strategy #=> String, one of "IDLE_RELEASE", "CONSOLIDATION"
16456
16468
  # resp.pending_deployment_summary.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.maximum_step_size #=> Integer
16457
16469
  # resp.pending_deployment_summary.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.cooldown_in_minutes #=> Integer
16458
- # resp.pending_deployment_summary.shadow_production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM"
16470
+ # resp.pending_deployment_summary.shadow_production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM", "PREFIX_AWARE"
16471
+ # resp.pending_deployment_summary.shadow_production_variants[0].routing_config.prefix_aware_routing_config.prefix_length #=> Integer
16472
+ # resp.pending_deployment_summary.shadow_production_variants[0].routing_config.prefix_aware_routing_config.concurrency_threshold #=> Integer
16459
16473
  # resp.explainer_config.clarify_explainer_config.enable_explanations #=> String
16460
16474
  # resp.explainer_config.clarify_explainer_config.inference_config.features_attribute #=> String
16461
16475
  # resp.explainer_config.clarify_explainer_config.inference_config.content_template #=> String
@@ -16508,7 +16522,9 @@ module Aws::SageMaker
16508
16522
  # resp.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.strategy #=> String, one of "IDLE_RELEASE", "CONSOLIDATION"
16509
16523
  # resp.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.maximum_step_size #=> Integer
16510
16524
  # resp.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.cooldown_in_minutes #=> Integer
16511
- # resp.shadow_production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM"
16525
+ # resp.shadow_production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM", "PREFIX_AWARE"
16526
+ # resp.shadow_production_variants[0].routing_config.prefix_aware_routing_config.prefix_length #=> Integer
16527
+ # resp.shadow_production_variants[0].routing_config.prefix_aware_routing_config.concurrency_threshold #=> Integer
16512
16528
  # resp.shadow_production_variants[0].capacity_reservation_config.ml_reservation_arn #=> String
16513
16529
  # resp.shadow_production_variants[0].capacity_reservation_config.capacity_reservation_preference #=> String, one of "capacity-reservations-only"
16514
16530
  # resp.shadow_production_variants[0].capacity_reservation_config.total_instance_count #=> Integer
@@ -16597,7 +16613,9 @@ module Aws::SageMaker
16597
16613
  # resp.production_variants[0].managed_instance_scaling.scale_in_policy.strategy #=> String, one of "IDLE_RELEASE", "CONSOLIDATION"
16598
16614
  # resp.production_variants[0].managed_instance_scaling.scale_in_policy.maximum_step_size #=> Integer
16599
16615
  # resp.production_variants[0].managed_instance_scaling.scale_in_policy.cooldown_in_minutes #=> Integer
16600
- # resp.production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM"
16616
+ # resp.production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM", "PREFIX_AWARE"
16617
+ # resp.production_variants[0].routing_config.prefix_aware_routing_config.prefix_length #=> Integer
16618
+ # resp.production_variants[0].routing_config.prefix_aware_routing_config.concurrency_threshold #=> Integer
16601
16619
  # resp.production_variants[0].inference_ami_version #=> String, one of "al2-ami-sagemaker-inference-gpu-2", "al2-ami-sagemaker-inference-gpu-2-1", "al2-ami-sagemaker-inference-gpu-3-1", "al2-ami-sagemaker-inference-neuron-2", "al2023-ami-sagemaker-inference-gpu-4-1"
16602
16620
  # resp.production_variants[0].capacity_reservation_config.capacity_reservation_preference #=> String, one of "capacity-reservations-only"
16603
16621
  # resp.production_variants[0].capacity_reservation_config.ml_reservation_arn #=> String
@@ -16671,7 +16689,9 @@ module Aws::SageMaker
16671
16689
  # resp.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.strategy #=> String, one of "IDLE_RELEASE", "CONSOLIDATION"
16672
16690
  # resp.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.maximum_step_size #=> Integer
16673
16691
  # resp.shadow_production_variants[0].managed_instance_scaling.scale_in_policy.cooldown_in_minutes #=> Integer
16674
- # resp.shadow_production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM"
16692
+ # resp.shadow_production_variants[0].routing_config.routing_strategy #=> String, one of "LEAST_OUTSTANDING_REQUESTS", "RANDOM", "PREFIX_AWARE"
16693
+ # resp.shadow_production_variants[0].routing_config.prefix_aware_routing_config.prefix_length #=> Integer
16694
+ # resp.shadow_production_variants[0].routing_config.prefix_aware_routing_config.concurrency_threshold #=> Integer
16675
16695
  # resp.shadow_production_variants[0].inference_ami_version #=> String, one of "al2-ami-sagemaker-inference-gpu-2", "al2-ami-sagemaker-inference-gpu-2-1", "al2-ami-sagemaker-inference-gpu-3-1", "al2-ami-sagemaker-inference-neuron-2", "al2023-ami-sagemaker-inference-gpu-4-1"
16676
16696
  # resp.shadow_production_variants[0].capacity_reservation_config.capacity_reservation_preference #=> String, one of "capacity-reservations-only"
16677
16697
  # resp.shadow_production_variants[0].capacity_reservation_config.ml_reservation_arn #=> String
@@ -34563,7 +34583,7 @@ module Aws::SageMaker
34563
34583
  tracer: tracer
34564
34584
  )
34565
34585
  context[:gem_name] = 'aws-sdk-sagemaker'
34566
- context[:gem_version] = '1.383.0'
34586
+ context[:gem_version] = '1.384.0'
34567
34587
  Seahorse::Client::Request.new(handlers, context)
34568
34588
  end
34569
34589
 
@@ -2250,6 +2250,9 @@ module Aws::SageMaker
2250
2250
  PolicyString = Shapes::StringShape.new(name: 'PolicyString')
2251
2251
  PredefinedMetricSpecification = Shapes::StructureShape.new(name: 'PredefinedMetricSpecification')
2252
2252
  PreemptTeamTasks = Shapes::StringShape.new(name: 'PreemptTeamTasks')
2253
+ PrefixAwareRoutingConcurrencyThreshold = Shapes::IntegerShape.new(name: 'PrefixAwareRoutingConcurrencyThreshold')
2254
+ PrefixAwareRoutingConfig = Shapes::StructureShape.new(name: 'PrefixAwareRoutingConfig')
2255
+ PrefixAwareRoutingPrefixLength = Shapes::IntegerShape.new(name: 'PrefixAwareRoutingPrefixLength')
2253
2256
  PresignedDomainUrl = Shapes::StringShape.new(name: 'PresignedDomainUrl')
2254
2257
  PresignedUrlAccessConfig = Shapes::StructureShape.new(name: 'PresignedUrlAccessConfig')
2255
2258
  PriorityClass = Shapes::StructureShape.new(name: 'PriorityClass')
@@ -11149,6 +11152,10 @@ module Aws::SageMaker
11149
11152
  PredefinedMetricSpecification.add_member(:predefined_metric_type, Shapes::ShapeRef.new(shape: String, location_name: "PredefinedMetricType"))
11150
11153
  PredefinedMetricSpecification.struct_class = Types::PredefinedMetricSpecification
11151
11154
 
11155
+ PrefixAwareRoutingConfig.add_member(:prefix_length, Shapes::ShapeRef.new(shape: PrefixAwareRoutingPrefixLength, location_name: "PrefixLength"))
11156
+ PrefixAwareRoutingConfig.add_member(:concurrency_threshold, Shapes::ShapeRef.new(shape: PrefixAwareRoutingConcurrencyThreshold, location_name: "ConcurrencyThreshold"))
11157
+ PrefixAwareRoutingConfig.struct_class = Types::PrefixAwareRoutingConfig
11158
+
11152
11159
  PresignedUrlAccessConfig.add_member(:accept_eula, Shapes::ShapeRef.new(shape: Boolean, location_name: "AcceptEula", metadata: {"box" => true}))
11153
11160
  PresignedUrlAccessConfig.add_member(:expected_s3_url, Shapes::ShapeRef.new(shape: S3ModelUri, location_name: "ExpectedS3Url"))
11154
11161
  PresignedUrlAccessConfig.struct_class = Types::PresignedUrlAccessConfig
@@ -11301,6 +11308,7 @@ module Aws::SageMaker
11301
11308
  ProductionVariantManagedInstanceScalingScaleInPolicy.struct_class = Types::ProductionVariantManagedInstanceScalingScaleInPolicy
11302
11309
 
11303
11310
  ProductionVariantRoutingConfig.add_member(:routing_strategy, Shapes::ShapeRef.new(shape: RoutingStrategy, required: true, location_name: "RoutingStrategy"))
11311
+ ProductionVariantRoutingConfig.add_member(:prefix_aware_routing_config, Shapes::ShapeRef.new(shape: PrefixAwareRoutingConfig, location_name: "PrefixAwareRoutingConfig"))
11304
11312
  ProductionVariantRoutingConfig.struct_class = Types::ProductionVariantRoutingConfig
11305
11313
 
11306
11314
  ProductionVariantServerlessConfig.add_member(:memory_size_in_mb, Shapes::ShapeRef.new(shape: ServerlessMemorySizeInMB, required: true, location_name: "MemorySizeInMB"))
@@ -46189,6 +46189,44 @@ module Aws::SageMaker
46189
46189
  include Aws::Structure
46190
46190
  end
46191
46191
 
46192
+ # The configuration for prefix-aware routing on a SageMaker real-time
46193
+ # inference endpoint. Specify `PrefixLength` and `ConcurrencyThreshold`
46194
+ # to control routing behavior.
46195
+ #
46196
+ # @!attribute [rw] prefix_length
46197
+ # The maximum length of the prefix used for routing decisions.
46198
+ # Required when `RoutingStrategy` is `PREFIX_AWARE`.
46199
+ #
46200
+ # * For the SageMaker Runtime `InvokeEndpoint` and
46201
+ # `InvokeEndpointWithResponseStream` APIs, this value specifies the
46202
+ # number of bytes from the beginning of the request body.
46203
+ #
46204
+ # * For OpenAI-compatible API, this value specifies the number of
46205
+ # characters from the text content of the messages array.
46206
+ #
46207
+ # The endpoint routes requests that share the same prefix to the same
46208
+ # instance. Set this value to cover shared content (such as system
46209
+ # prompts) plus enough unique content to distribute workloads across
46210
+ # instances.
46211
+ # @return [Integer]
46212
+ #
46213
+ # @!attribute [rw] concurrency_threshold
46214
+ # The maximum number of in-flight requests on the target instance
46215
+ # before the endpoint routes to another instance. Required when
46216
+ # `RoutingStrategy` is `PREFIX_AWARE`. When in-flight requests on the
46217
+ # prefix-selected instance reach this threshold, the endpoint routes
46218
+ # the request to an instance with more available capacity.
46219
+ # @return [Integer]
46220
+ #
46221
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/PrefixAwareRoutingConfig AWS API Documentation
46222
+ #
46223
+ class PrefixAwareRoutingConfig < Struct.new(
46224
+ :prefix_length,
46225
+ :concurrency_threshold)
46226
+ SENSITIVE = []
46227
+ include Aws::Structure
46228
+ end
46229
+
46192
46230
  # Configuration for accessing hub content through presigned URLs,
46193
46231
  # including license agreement acceptance and URL validation settings.
46194
46232
  #
@@ -47189,12 +47227,24 @@ module Aws::SageMaker
47189
47227
  #
47190
47228
  # * `RANDOM`: The endpoint routes each request to a randomly chosen
47191
47229
  # instance.
47230
+ #
47231
+ # * `PREFIX_AWARE`: The endpoint routes requests that share the same
47232
+ # prompt prefix to the same instance. When the number of in-flight
47233
+ # requests on the selected instance reaches the configured
47234
+ # threshold, the endpoint routes the request to an instance with
47235
+ # more available capacity.
47192
47236
  # @return [String]
47193
47237
  #
47238
+ # @!attribute [rw] prefix_aware_routing_config
47239
+ # The configuration for prefix-aware routing. Specify this parameter
47240
+ # only when you set `RoutingStrategy` to `PREFIX_AWARE`.
47241
+ # @return [Types::PrefixAwareRoutingConfig]
47242
+ #
47194
47243
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ProductionVariantRoutingConfig AWS API Documentation
47195
47244
  #
47196
47245
  class ProductionVariantRoutingConfig < Struct.new(
47197
- :routing_strategy)
47246
+ :routing_strategy,
47247
+ :prefix_aware_routing_config)
47198
47248
  SENSITIVE = []
47199
47249
  include Aws::Structure
47200
47250
  end
@@ -55,7 +55,7 @@ module Aws::SageMaker
55
55
  autoload :EndpointProvider, 'aws-sdk-sagemaker/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-sagemaker/endpoints'
57
57
 
58
- GEM_VERSION = '1.383.0'
58
+ GEM_VERSION = '1.384.0'
59
59
 
60
60
  end
61
61
 
data/sig/params.rbs CHANGED
@@ -801,7 +801,11 @@ module Aws
801
801
  enable_ssm_access: bool?,
802
802
  managed_instance_scaling: Params::production_variant_managed_instance_scaling?,
803
803
  routing_config: {
804
- routing_strategy: ("LEAST_OUTSTANDING_REQUESTS" | "RANDOM")
804
+ routing_strategy: ("LEAST_OUTSTANDING_REQUESTS" | "RANDOM" | "PREFIX_AWARE"),
805
+ prefix_aware_routing_config: {
806
+ prefix_length: ::Integer?,
807
+ concurrency_threshold: ::Integer?
808
+ }?
805
809
  }?,
806
810
  inference_ami_version: ("al2-ami-sagemaker-inference-gpu-2" | "al2-ami-sagemaker-inference-gpu-2-1" | "al2-ami-sagemaker-inference-gpu-3-1" | "al2-ami-sagemaker-inference-neuron-2" | "al2023-ami-sagemaker-inference-gpu-4-1")?,
807
811
  capacity_reservation_config: {
data/sig/types.rbs CHANGED
@@ -9937,6 +9937,12 @@ module Aws::SageMaker
9937
9937
  SENSITIVE: []
9938
9938
  end
9939
9939
 
9940
+ class PrefixAwareRoutingConfig
9941
+ attr_accessor prefix_length: ::Integer
9942
+ attr_accessor concurrency_threshold: ::Integer
9943
+ SENSITIVE: []
9944
+ end
9945
+
9940
9946
  class PresignedUrlAccessConfig
9941
9947
  attr_accessor accept_eula: bool
9942
9948
  attr_accessor expected_s3_url: ::String
@@ -10114,7 +10120,8 @@ module Aws::SageMaker
10114
10120
  end
10115
10121
 
10116
10122
  class ProductionVariantRoutingConfig
10117
- attr_accessor routing_strategy: ("LEAST_OUTSTANDING_REQUESTS" | "RANDOM")
10123
+ attr_accessor routing_strategy: ("LEAST_OUTSTANDING_REQUESTS" | "RANDOM" | "PREFIX_AWARE")
10124
+ attr_accessor prefix_aware_routing_config: Types::PrefixAwareRoutingConfig
10118
10125
  SENSITIVE: []
10119
10126
  end
10120
10127
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-sagemaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.383.0
4
+ version: 1.384.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services