aws-sdk-sagemakerruntime 1.68.0 → 1.70.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: bd3a95da567aefd78e4503b6891b450361db40335c4d3cf81d921559761bf9b7
4
- data.tar.gz: aa1b2031a409a13397ea483ad94b69d2fe545b8b2a24635dd8206d0dfc3d3fdb
3
+ metadata.gz: b66220de759f95e766c78ab00eb88e684eafb4324e8bebff4ac71dab242d5678
4
+ data.tar.gz: 22e0a8631bc8f9b56d16903c0be55201a5cce10046986556db959096dabd80dd
5
5
  SHA512:
6
- metadata.gz: deef544e912ccb0bc70b0336959c46837a9147935a6e7915662387b02fc95fbe453636a4e4f05d3bf0fc244dde74cdedcc8aa2ec20f356583aa1cd2d96d2c3f1
7
- data.tar.gz: d1d99861ab595b80f08a507e4c05c1c7916afab66456490d4c61bf8d6f5da8439f674f4e854e3bad066b3fb557aadb8fb327390a4eeebfa5f8053c70e5fb9f06
6
+ metadata.gz: 81f7b7f70cc4b0a914cc355aaa448eaf079641711442c3821fdaa5b6d61e42f899683b8aeffb47b09e911963f6322eb3d11c01cd9d4eceb378fb5bfcd62d706e
7
+ data.tar.gz: 32289ab315e31077cf842ddb64cd110e02eba9cd1def2880db783c9d28e49901f7188c23a289c4a0f5b830f2748b2af0c4f5a061eb73f37c9af85624b54ffb88
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.70.0 (2024-09-09)
5
+ ------------------
6
+
7
+ * Feature - AWS SageMaker Runtime feature: Add sticky routing to support stateful inference models.
8
+
9
+ 1.69.0 (2024-09-03)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
4
14
  1.68.0 (2024-07-02)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.68.0
1
+ 1.70.0
@@ -32,6 +32,7 @@ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
32
32
  require 'aws-sdk-core/plugins/request_compression.rb'
33
33
  require 'aws-sdk-core/plugins/defaults_mode.rb'
34
34
  require 'aws-sdk-core/plugins/recursion_detection.rb'
35
+ require 'aws-sdk-core/plugins/telemetry.rb'
35
36
  require 'aws-sdk-core/plugins/sign.rb'
36
37
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
37
38
  require 'aws-sdk-core/plugins/event_stream_configuration.rb'
@@ -84,6 +85,7 @@ module Aws::SageMakerRuntime
84
85
  add_plugin(Aws::Plugins::RequestCompression)
85
86
  add_plugin(Aws::Plugins::DefaultsMode)
86
87
  add_plugin(Aws::Plugins::RecursionDetection)
88
+ add_plugin(Aws::Plugins::Telemetry)
87
89
  add_plugin(Aws::Plugins::Sign)
88
90
  add_plugin(Aws::Plugins::Protocols::RestJson)
89
91
  add_plugin(Aws::Plugins::EventStreamConfiguration)
@@ -341,6 +343,16 @@ module Aws::SageMakerRuntime
341
343
  # ** Please note ** When response stubbing is enabled, no HTTP
342
344
  # requests are made, and retries are disabled.
343
345
  #
346
+ # @option options [Aws::Telemetry::TelemetryProviderBase] :telemetry_provider (Aws::Telemetry::NoOpTelemetryProvider)
347
+ # Allows you to provide a telemetry provider, which is used to
348
+ # emit telemetry data. By default, uses `NoOpTelemetryProvider` which
349
+ # will not record or emit any telemetry data. The SDK supports the
350
+ # following telemetry providers:
351
+ #
352
+ # * OpenTelemetry (OTel) - To use the OTel provider, install and require the
353
+ # `opentelemetry-sdk` gem and then, pass in an instance of a
354
+ # `Aws::Telemetry::OTelProvider` for telemetry provider.
355
+ #
344
356
  # @option options [Aws::TokenProvider] :token_provider
345
357
  # A Bearer Token Provider. This can be an instance of any one of the
346
358
  # following classes:
@@ -565,12 +577,31 @@ module Aws::SageMakerRuntime
565
577
  # If the endpoint hosts one or more inference components, this parameter
566
578
  # specifies the name of inference component to invoke.
567
579
  #
580
+ # @option params [String] :session_id
581
+ # Creates a stateful session or identifies an existing one. You can do
582
+ # one of the following:
583
+ #
584
+ # * Create a stateful session by specifying the value `NEW_SESSION`.
585
+ #
586
+ # * Send your request to an existing stateful session by specifying the
587
+ # ID of that session.
588
+ #
589
+ # With a stateful session, you can send multiple requests to a stateful
590
+ # model. When you create a session with a stateful model, the model must
591
+ # create the session ID and set the expiration time. The model must also
592
+ # provide that information in the response to your request. You can get
593
+ # the ID and timestamp from the `NewSessionId` response parameter. For
594
+ # any subsequent request where you specify that session ID, SageMaker
595
+ # routes the request to the same instance that supports the session.
596
+ #
568
597
  # @return [Types::InvokeEndpointOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
569
598
  #
570
599
  # * {Types::InvokeEndpointOutput#body #body} => String
571
600
  # * {Types::InvokeEndpointOutput#content_type #content_type} => String
572
601
  # * {Types::InvokeEndpointOutput#invoked_production_variant #invoked_production_variant} => String
573
602
  # * {Types::InvokeEndpointOutput#custom_attributes #custom_attributes} => String
603
+ # * {Types::InvokeEndpointOutput#new_session_id #new_session_id} => String
604
+ # * {Types::InvokeEndpointOutput#closed_session_id #closed_session_id} => String
574
605
  #
575
606
  # @example Request syntax with placeholder values
576
607
  #
@@ -586,6 +617,7 @@ module Aws::SageMakerRuntime
586
617
  # inference_id: "InferenceId",
587
618
  # enable_explanations: "EnableExplanationsHeader",
588
619
  # inference_component_name: "InferenceComponentHeader",
620
+ # session_id: "SessionIdOrNewSessionConstantHeader",
589
621
  # })
590
622
  #
591
623
  # @example Response structure
@@ -594,6 +626,8 @@ module Aws::SageMakerRuntime
594
626
  # resp.content_type #=> String
595
627
  # resp.invoked_production_variant #=> String
596
628
  # resp.custom_attributes #=> String
629
+ # resp.new_session_id #=> String
630
+ # resp.closed_session_id #=> String
597
631
  #
598
632
  # @see http://docs.aws.amazon.com/goto/WebAPI/runtime.sagemaker-2017-05-13/InvokeEndpoint AWS API Documentation
599
633
  #
@@ -831,6 +865,16 @@ module Aws::SageMakerRuntime
831
865
  # specifies the name of inference component to invoke for a streaming
832
866
  # response.
833
867
  #
868
+ # @option params [String] :session_id
869
+ # The ID of a stateful session to handle your request.
870
+ #
871
+ # You can't create a stateful session by using the
872
+ # `InvokeEndpointWithResponseStream` action. Instead, you can create one
873
+ # by using the ` InvokeEndpoint ` action. In your request, you specify
874
+ # `NEW_SESSION` for the `SessionId` request parameter. The response to
875
+ # that request provides the session ID for the `NewSessionId` response
876
+ # parameter.
877
+ #
834
878
  # @return [Types::InvokeEndpointWithResponseStreamOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
835
879
  #
836
880
  # * {Types::InvokeEndpointWithResponseStreamOutput#body #body} => Types::ResponseStream
@@ -951,6 +995,7 @@ module Aws::SageMakerRuntime
951
995
  # target_container_hostname: "TargetContainerHostnameHeader",
952
996
  # inference_id: "InferenceId",
953
997
  # inference_component_name: "InferenceComponentHeader",
998
+ # session_id: "SessionIdHeader",
954
999
  # })
955
1000
  #
956
1001
  # @example Response structure
@@ -1006,14 +1051,19 @@ module Aws::SageMakerRuntime
1006
1051
  # @api private
1007
1052
  def build_request(operation_name, params = {})
1008
1053
  handlers = @handlers.for(operation_name)
1054
+ tracer = config.telemetry_provider.tracer_provider.tracer(
1055
+ Aws::Telemetry.module_to_tracer_name('Aws::SageMakerRuntime')
1056
+ )
1009
1057
  context = Seahorse::Client::RequestContext.new(
1010
1058
  operation_name: operation_name,
1011
1059
  operation: config.api.operation(operation_name),
1012
1060
  client: self,
1013
1061
  params: params,
1014
- config: config)
1062
+ config: config,
1063
+ tracer: tracer
1064
+ )
1015
1065
  context[:gem_name] = 'aws-sdk-sagemakerruntime'
1016
- context[:gem_version] = '1.68.0'
1066
+ context[:gem_version] = '1.70.0'
1017
1067
  Seahorse::Client::Request.new(handlers, context)
1018
1068
  end
1019
1069
 
@@ -37,11 +37,14 @@ module Aws::SageMakerRuntime
37
37
  ModelError = Shapes::StructureShape.new(name: 'ModelError')
38
38
  ModelNotReadyException = Shapes::StructureShape.new(name: 'ModelNotReadyException')
39
39
  ModelStreamError = Shapes::StructureShape.new(name: 'ModelStreamError')
40
+ NewSessionResponseHeader = Shapes::StringShape.new(name: 'NewSessionResponseHeader')
40
41
  PartBlob = Shapes::BlobShape.new(name: 'PartBlob')
41
42
  PayloadPart = Shapes::StructureShape.new(name: 'PayloadPart')
42
43
  RequestTTLSecondsHeader = Shapes::IntegerShape.new(name: 'RequestTTLSecondsHeader')
43
44
  ResponseStream = Shapes::StructureShape.new(name: 'ResponseStream')
44
45
  ServiceUnavailable = Shapes::StructureShape.new(name: 'ServiceUnavailable')
46
+ SessionIdHeader = Shapes::StringShape.new(name: 'SessionIdHeader')
47
+ SessionIdOrNewSessionConstantHeader = Shapes::StringShape.new(name: 'SessionIdOrNewSessionConstantHeader')
45
48
  StatusCode = Shapes::IntegerShape.new(name: 'StatusCode')
46
49
  TargetContainerHostnameHeader = Shapes::StringShape.new(name: 'TargetContainerHostnameHeader')
47
50
  TargetModelHeader = Shapes::StringShape.new(name: 'TargetModelHeader')
@@ -83,6 +86,7 @@ module Aws::SageMakerRuntime
83
86
  InvokeEndpointInput.add_member(:inference_id, Shapes::ShapeRef.new(shape: InferenceId, location: "header", location_name: "X-Amzn-SageMaker-Inference-Id"))
84
87
  InvokeEndpointInput.add_member(:enable_explanations, Shapes::ShapeRef.new(shape: EnableExplanationsHeader, location: "header", location_name: "X-Amzn-SageMaker-Enable-Explanations"))
85
88
  InvokeEndpointInput.add_member(:inference_component_name, Shapes::ShapeRef.new(shape: InferenceComponentHeader, location: "header", location_name: "X-Amzn-SageMaker-Inference-Component"))
89
+ InvokeEndpointInput.add_member(:session_id, Shapes::ShapeRef.new(shape: SessionIdOrNewSessionConstantHeader, location: "header", location_name: "X-Amzn-SageMaker-Session-Id"))
86
90
  InvokeEndpointInput.struct_class = Types::InvokeEndpointInput
87
91
  InvokeEndpointInput[:payload] = :body
88
92
  InvokeEndpointInput[:payload_member] = InvokeEndpointInput.member(:body)
@@ -91,6 +95,8 @@ module Aws::SageMakerRuntime
91
95
  InvokeEndpointOutput.add_member(:content_type, Shapes::ShapeRef.new(shape: Header, location: "header", location_name: "Content-Type"))
92
96
  InvokeEndpointOutput.add_member(:invoked_production_variant, Shapes::ShapeRef.new(shape: Header, location: "header", location_name: "x-Amzn-Invoked-Production-Variant"))
93
97
  InvokeEndpointOutput.add_member(:custom_attributes, Shapes::ShapeRef.new(shape: CustomAttributesHeader, location: "header", location_name: "X-Amzn-SageMaker-Custom-Attributes"))
98
+ InvokeEndpointOutput.add_member(:new_session_id, Shapes::ShapeRef.new(shape: NewSessionResponseHeader, location: "header", location_name: "X-Amzn-SageMaker-New-Session-Id"))
99
+ InvokeEndpointOutput.add_member(:closed_session_id, Shapes::ShapeRef.new(shape: SessionIdHeader, location: "header", location_name: "X-Amzn-SageMaker-Closed-Session-Id"))
94
100
  InvokeEndpointOutput.struct_class = Types::InvokeEndpointOutput
95
101
  InvokeEndpointOutput[:payload] = :body
96
102
  InvokeEndpointOutput[:payload_member] = InvokeEndpointOutput.member(:body)
@@ -104,6 +110,7 @@ module Aws::SageMakerRuntime
104
110
  InvokeEndpointWithResponseStreamInput.add_member(:target_container_hostname, Shapes::ShapeRef.new(shape: TargetContainerHostnameHeader, location: "header", location_name: "X-Amzn-SageMaker-Target-Container-Hostname"))
105
111
  InvokeEndpointWithResponseStreamInput.add_member(:inference_id, Shapes::ShapeRef.new(shape: InferenceId, location: "header", location_name: "X-Amzn-SageMaker-Inference-Id"))
106
112
  InvokeEndpointWithResponseStreamInput.add_member(:inference_component_name, Shapes::ShapeRef.new(shape: InferenceComponentHeader, location: "header", location_name: "X-Amzn-SageMaker-Inference-Component"))
113
+ InvokeEndpointWithResponseStreamInput.add_member(:session_id, Shapes::ShapeRef.new(shape: SessionIdHeader, location: "header", location_name: "X-Amzn-SageMaker-Session-Id"))
107
114
  InvokeEndpointWithResponseStreamInput.struct_class = Types::InvokeEndpointWithResponseStreamInput
108
115
  InvokeEndpointWithResponseStreamInput[:payload] = :body
109
116
  InvokeEndpointWithResponseStreamInput[:payload_member] = InvokeEndpointWithResponseStreamInput.member(:body)
@@ -262,6 +262,25 @@ module Aws::SageMakerRuntime
262
262
  # parameter specifies the name of inference component to invoke.
263
263
  # @return [String]
264
264
  #
265
+ # @!attribute [rw] session_id
266
+ # Creates a stateful session or identifies an existing one. You can do
267
+ # one of the following:
268
+ #
269
+ # * Create a stateful session by specifying the value `NEW_SESSION`.
270
+ #
271
+ # * Send your request to an existing stateful session by specifying
272
+ # the ID of that session.
273
+ #
274
+ # With a stateful session, you can send multiple requests to a
275
+ # stateful model. When you create a session with a stateful model, the
276
+ # model must create the session ID and set the expiration time. The
277
+ # model must also provide that information in the response to your
278
+ # request. You can get the ID and timestamp from the `NewSessionId`
279
+ # response parameter. For any subsequent request where you specify
280
+ # that session ID, SageMaker routes the request to the same instance
281
+ # that supports the session.
282
+ # @return [String]
283
+ #
265
284
  # @see http://docs.aws.amazon.com/goto/WebAPI/runtime.sagemaker-2017-05-13/InvokeEndpointInput AWS API Documentation
266
285
  #
267
286
  class InvokeEndpointInput < Struct.new(
@@ -275,7 +294,8 @@ module Aws::SageMakerRuntime
275
294
  :target_container_hostname,
276
295
  :inference_id,
277
296
  :enable_explanations,
278
- :inference_component_name)
297
+ :inference_component_name,
298
+ :session_id)
279
299
  SENSITIVE = [:body, :custom_attributes]
280
300
  include Aws::Structure
281
301
  end
@@ -331,13 +351,25 @@ module Aws::SageMakerRuntime
331
351
  # [1]: https://tools.ietf.org/html/rfc7230#section-3.2.6
332
352
  # @return [String]
333
353
  #
354
+ # @!attribute [rw] new_session_id
355
+ # If you created a stateful session with your request, the ID and
356
+ # expiration time that the model assigns to that session.
357
+ # @return [String]
358
+ #
359
+ # @!attribute [rw] closed_session_id
360
+ # If you closed a stateful session with your request, the ID of that
361
+ # session.
362
+ # @return [String]
363
+ #
334
364
  # @see http://docs.aws.amazon.com/goto/WebAPI/runtime.sagemaker-2017-05-13/InvokeEndpointOutput AWS API Documentation
335
365
  #
336
366
  class InvokeEndpointOutput < Struct.new(
337
367
  :body,
338
368
  :content_type,
339
369
  :invoked_production_variant,
340
- :custom_attributes)
370
+ :custom_attributes,
371
+ :new_session_id,
372
+ :closed_session_id)
341
373
  SENSITIVE = [:body, :custom_attributes]
342
374
  include Aws::Structure
343
375
  end
@@ -429,6 +461,17 @@ module Aws::SageMakerRuntime
429
461
  # streaming response.
430
462
  # @return [String]
431
463
  #
464
+ # @!attribute [rw] session_id
465
+ # The ID of a stateful session to handle your request.
466
+ #
467
+ # You can't create a stateful session by using the
468
+ # `InvokeEndpointWithResponseStream` action. Instead, you can create
469
+ # one by using the ` InvokeEndpoint ` action. In your request, you
470
+ # specify `NEW_SESSION` for the `SessionId` request parameter. The
471
+ # response to that request provides the session ID for the
472
+ # `NewSessionId` response parameter.
473
+ # @return [String]
474
+ #
432
475
  # @see http://docs.aws.amazon.com/goto/WebAPI/runtime.sagemaker-2017-05-13/InvokeEndpointWithResponseStreamInput AWS API Documentation
433
476
  #
434
477
  class InvokeEndpointWithResponseStreamInput < Struct.new(
@@ -440,7 +483,8 @@ module Aws::SageMakerRuntime
440
483
  :target_variant,
441
484
  :target_container_hostname,
442
485
  :inference_id,
443
- :inference_component_name)
486
+ :inference_component_name,
487
+ :session_id)
444
488
  SENSITIVE = [:body, :custom_attributes]
445
489
  include Aws::Structure
446
490
  end
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-sagemakerruntime/event_streams'
53
53
  # @!group service
54
54
  module Aws::SageMakerRuntime
55
55
 
56
- GEM_VERSION = '1.68.0'
56
+ GEM_VERSION = '1.70.0'
57
57
 
58
58
  end
data/sig/client.rbs CHANGED
@@ -53,6 +53,7 @@ module Aws
53
53
  ?session_token: String,
54
54
  ?sigv4a_signing_region_set: Array[String],
55
55
  ?stub_responses: untyped,
56
+ ?telemetry_provider: Aws::Telemetry::TelemetryProviderBase,
56
57
  ?token_provider: untyped,
57
58
  ?use_dualstack_endpoint: bool,
58
59
  ?use_fips_endpoint: bool,
@@ -82,6 +83,8 @@ module Aws
82
83
  def content_type: () -> ::String
83
84
  def invoked_production_variant: () -> ::String
84
85
  def custom_attributes: () -> ::String
86
+ def new_session_id: () -> ::String
87
+ def closed_session_id: () -> ::String
85
88
  end
86
89
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/SageMakerRuntime/Client.html#invoke_endpoint-instance_method
87
90
  def invoke_endpoint: (
@@ -95,7 +98,8 @@ module Aws
95
98
  ?target_container_hostname: ::String,
96
99
  ?inference_id: ::String,
97
100
  ?enable_explanations: ::String,
98
- ?inference_component_name: ::String
101
+ ?inference_component_name: ::String,
102
+ ?session_id: ::String
99
103
  ) -> _InvokeEndpointResponseSuccess
100
104
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _InvokeEndpointResponseSuccess
101
105
 
@@ -135,7 +139,8 @@ module Aws
135
139
  ?target_variant: ::String,
136
140
  ?target_container_hostname: ::String,
137
141
  ?inference_id: ::String,
138
- ?inference_component_name: ::String
142
+ ?inference_component_name: ::String,
143
+ ?session_id: ::String
139
144
  ) ?{ (*untyped) -> void } -> _InvokeEndpointWithResponseStreamResponseSuccess
140
145
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) ?{ (*untyped) -> void } -> _InvokeEndpointWithResponseStreamResponseSuccess
141
146
  end
data/sig/resource.rbs CHANGED
@@ -53,6 +53,7 @@ module Aws
53
53
  ?session_token: String,
54
54
  ?sigv4a_signing_region_set: Array[String],
55
55
  ?stub_responses: untyped,
56
+ ?telemetry_provider: Aws::Telemetry::TelemetryProviderBase,
56
57
  ?token_provider: untyped,
57
58
  ?use_dualstack_endpoint: bool,
58
59
  ?use_fips_endpoint: bool,
data/sig/types.rbs CHANGED
@@ -55,6 +55,7 @@ module Aws::SageMakerRuntime
55
55
  attr_accessor inference_id: ::String
56
56
  attr_accessor enable_explanations: ::String
57
57
  attr_accessor inference_component_name: ::String
58
+ attr_accessor session_id: ::String
58
59
  SENSITIVE: [:body, :custom_attributes]
59
60
  end
60
61
 
@@ -63,6 +64,8 @@ module Aws::SageMakerRuntime
63
64
  attr_accessor content_type: ::String
64
65
  attr_accessor invoked_production_variant: ::String
65
66
  attr_accessor custom_attributes: ::String
67
+ attr_accessor new_session_id: ::String
68
+ attr_accessor closed_session_id: ::String
66
69
  SENSITIVE: [:body, :custom_attributes]
67
70
  end
68
71
 
@@ -76,6 +79,7 @@ module Aws::SageMakerRuntime
76
79
  attr_accessor target_container_hostname: ::String
77
80
  attr_accessor inference_id: ::String
78
81
  attr_accessor inference_component_name: ::String
82
+ attr_accessor session_id: ::String
79
83
  SENSITIVE: [:body, :custom_attributes]
80
84
  end
81
85
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-sagemakerruntime
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.68.0
4
+ version: 1.70.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-07-02 00:00:00.000000000 Z
11
+ date: 2024-09-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.201.0
22
+ version: 3.203.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.201.0
32
+ version: 3.203.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement