Class S3ModelDataSource
- java.lang.Object
-
- software.amazon.awssdk.services.sagemaker.model.S3ModelDataSource
-
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<S3ModelDataSource.Builder,S3ModelDataSource>
@Generated("software.amazon.awssdk:codegen") public final class S3ModelDataSource extends Object implements SdkPojo, Serializable, ToCopyableBuilder<S3ModelDataSource.Builder,S3ModelDataSource>
Specifies the S3 location of ML model data to deploy.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
S3ModelDataSource.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static S3ModelDataSource.Builder
builder()
ModelCompressionType
compressionType()
Specifies how the ML model data is prepared.String
compressionTypeAsString()
Specifies how the ML model data is prepared.boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
int
hashCode()
InferenceHubAccessConfig
hubAccessConfig()
Configuration information for hub access.String
manifestS3Uri()
The Amazon S3 URI of the manifest file.ModelAccessConfig
modelAccessConfig()
Specifies the access configuration file for the ML model.S3ModelDataType
s3DataType()
Specifies the type of ML model data to deploy.String
s3DataTypeAsString()
Specifies the type of ML model data to deploy.String
s3Uri()
Specifies the S3 path of ML model data to deploy.List<SdkField<?>>
sdkFields()
static Class<? extends S3ModelDataSource.Builder>
serializableBuilderClass()
S3ModelDataSource.Builder
toBuilder()
String
toString()
Returns a string representation of this object.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
s3Uri
public final String s3Uri()
Specifies the S3 path of ML model data to deploy.
- Returns:
- Specifies the S3 path of ML model data to deploy.
-
s3DataType
public final S3ModelDataType s3DataType()
Specifies the type of ML model data to deploy.
If you choose
S3Prefix
,S3Uri
identifies a key name prefix. SageMaker uses all objects that match the specified key name prefix as part of the ML model data to deploy. A valid key name prefix identified byS3Uri
always ends with a forward slash (/).If you choose
S3Object
,S3Uri
identifies an object that is the ML model data to deploy.If the service returns an enum value that is not available in the current SDK version,
s3DataType
will returnS3ModelDataType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available froms3DataTypeAsString()
.- Returns:
- Specifies the type of ML model data to deploy.
If you choose
S3Prefix
,S3Uri
identifies a key name prefix. SageMaker uses all objects that match the specified key name prefix as part of the ML model data to deploy. A valid key name prefix identified byS3Uri
always ends with a forward slash (/).If you choose
S3Object
,S3Uri
identifies an object that is the ML model data to deploy. - See Also:
S3ModelDataType
-
s3DataTypeAsString
public final String s3DataTypeAsString()
Specifies the type of ML model data to deploy.
If you choose
S3Prefix
,S3Uri
identifies a key name prefix. SageMaker uses all objects that match the specified key name prefix as part of the ML model data to deploy. A valid key name prefix identified byS3Uri
always ends with a forward slash (/).If you choose
S3Object
,S3Uri
identifies an object that is the ML model data to deploy.If the service returns an enum value that is not available in the current SDK version,
s3DataType
will returnS3ModelDataType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available froms3DataTypeAsString()
.- Returns:
- Specifies the type of ML model data to deploy.
If you choose
S3Prefix
,S3Uri
identifies a key name prefix. SageMaker uses all objects that match the specified key name prefix as part of the ML model data to deploy. A valid key name prefix identified byS3Uri
always ends with a forward slash (/).If you choose
S3Object
,S3Uri
identifies an object that is the ML model data to deploy. - See Also:
S3ModelDataType
-
compressionType
public final ModelCompressionType compressionType()
Specifies how the ML model data is prepared.
If you choose
Gzip
and chooseS3Object
as the value ofS3DataType
,S3Uri
identifies an object that is a gzip-compressed TAR archive. SageMaker will attempt to decompress and untar the object during model deployment.If you choose
None
and choooseS3Object
as the value ofS3DataType
,S3Uri
identifies an object that represents an uncompressed ML model to deploy.If you choose None and choose
S3Prefix
as the value ofS3DataType
,S3Uri
identifies a key name prefix, under which all objects represents the uncompressed ML model to deploy.If you choose None, then SageMaker will follow rules below when creating model data files under /opt/ml/model directory for use by your inference code:
-
If you choose
S3Object
as the value ofS3DataType
, then SageMaker will split the key of the S3 object referenced byS3Uri
by slash (/), and use the last part as the filename of the file holding the content of the S3 object. -
If you choose
S3Prefix
as the value ofS3DataType
, then for each S3 object under the key name pefix referenced byS3Uri
, SageMaker will trim its key by the prefix, and use the remainder as the path (relative to/opt/ml/model
) of the file holding the content of the S3 object. SageMaker will split the remainder by slash (/), using intermediate parts as directory names and the last part as filename of the file holding the content of the S3 object. -
Do not use any of the following as file names or directory names:
-
An empty or blank string
-
A string which contains null bytes
-
A string longer than 255 bytes
-
A single dot (
.
) -
A double dot (
..
)
-
-
Ambiguous file names will result in model deployment failure. For example, if your uncompressed ML model consists of two S3 objects
s3://mybucket/model/weights
ands3://mybucket/model/weights/part1
and you specifys3://mybucket/model/
as the value ofS3Uri
andS3Prefix
as the value ofS3DataType
, then it will result in name clash between/opt/ml/model/weights
(a regular file) and/opt/ml/model/weights/
(a directory). -
Do not organize the model artifacts in S3 console using folders. When you create a folder in S3 console, S3 creates a 0-byte object with a key set to the folder name you provide. They key of the 0-byte object ends with a slash (/) which violates SageMaker restrictions on model artifact file names, leading to model deployment failure.
If the service returns an enum value that is not available in the current SDK version,
compressionType
will returnModelCompressionType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromcompressionTypeAsString()
.- Returns:
- Specifies how the ML model data is prepared.
If you choose
Gzip
and chooseS3Object
as the value ofS3DataType
,S3Uri
identifies an object that is a gzip-compressed TAR archive. SageMaker will attempt to decompress and untar the object during model deployment.If you choose
None
and choooseS3Object
as the value ofS3DataType
,S3Uri
identifies an object that represents an uncompressed ML model to deploy.If you choose None and choose
S3Prefix
as the value ofS3DataType
,S3Uri
identifies a key name prefix, under which all objects represents the uncompressed ML model to deploy.If you choose None, then SageMaker will follow rules below when creating model data files under /opt/ml/model directory for use by your inference code:
-
If you choose
S3Object
as the value ofS3DataType
, then SageMaker will split the key of the S3 object referenced byS3Uri
by slash (/), and use the last part as the filename of the file holding the content of the S3 object. -
If you choose
S3Prefix
as the value ofS3DataType
, then for each S3 object under the key name pefix referenced byS3Uri
, SageMaker will trim its key by the prefix, and use the remainder as the path (relative to/opt/ml/model
) of the file holding the content of the S3 object. SageMaker will split the remainder by slash (/), using intermediate parts as directory names and the last part as filename of the file holding the content of the S3 object. -
Do not use any of the following as file names or directory names:
-
An empty or blank string
-
A string which contains null bytes
-
A string longer than 255 bytes
-
A single dot (
.
) -
A double dot (
..
)
-
-
Ambiguous file names will result in model deployment failure. For example, if your uncompressed ML model consists of two S3 objects
s3://mybucket/model/weights
ands3://mybucket/model/weights/part1
and you specifys3://mybucket/model/
as the value ofS3Uri
andS3Prefix
as the value ofS3DataType
, then it will result in name clash between/opt/ml/model/weights
(a regular file) and/opt/ml/model/weights/
(a directory). -
Do not organize the model artifacts in S3 console using folders. When you create a folder in S3 console, S3 creates a 0-byte object with a key set to the folder name you provide. They key of the 0-byte object ends with a slash (/) which violates SageMaker restrictions on model artifact file names, leading to model deployment failure.
-
- See Also:
ModelCompressionType
-
-
compressionTypeAsString
public final String compressionTypeAsString()
Specifies how the ML model data is prepared.
If you choose
Gzip
and chooseS3Object
as the value ofS3DataType
,S3Uri
identifies an object that is a gzip-compressed TAR archive. SageMaker will attempt to decompress and untar the object during model deployment.If you choose
None
and choooseS3Object
as the value ofS3DataType
,S3Uri
identifies an object that represents an uncompressed ML model to deploy.If you choose None and choose
S3Prefix
as the value ofS3DataType
,S3Uri
identifies a key name prefix, under which all objects represents the uncompressed ML model to deploy.If you choose None, then SageMaker will follow rules below when creating model data files under /opt/ml/model directory for use by your inference code:
-
If you choose
S3Object
as the value ofS3DataType
, then SageMaker will split the key of the S3 object referenced byS3Uri
by slash (/), and use the last part as the filename of the file holding the content of the S3 object. -
If you choose
S3Prefix
as the value ofS3DataType
, then for each S3 object under the key name pefix referenced byS3Uri
, SageMaker will trim its key by the prefix, and use the remainder as the path (relative to/opt/ml/model
) of the file holding the content of the S3 object. SageMaker will split the remainder by slash (/), using intermediate parts as directory names and the last part as filename of the file holding the content of the S3 object. -
Do not use any of the following as file names or directory names:
-
An empty or blank string
-
A string which contains null bytes
-
A string longer than 255 bytes
-
A single dot (
.
) -
A double dot (
..
)
-
-
Ambiguous file names will result in model deployment failure. For example, if your uncompressed ML model consists of two S3 objects
s3://mybucket/model/weights
ands3://mybucket/model/weights/part1
and you specifys3://mybucket/model/
as the value ofS3Uri
andS3Prefix
as the value ofS3DataType
, then it will result in name clash between/opt/ml/model/weights
(a regular file) and/opt/ml/model/weights/
(a directory). -
Do not organize the model artifacts in S3 console using folders. When you create a folder in S3 console, S3 creates a 0-byte object with a key set to the folder name you provide. They key of the 0-byte object ends with a slash (/) which violates SageMaker restrictions on model artifact file names, leading to model deployment failure.
If the service returns an enum value that is not available in the current SDK version,
compressionType
will returnModelCompressionType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromcompressionTypeAsString()
.- Returns:
- Specifies how the ML model data is prepared.
If you choose
Gzip
and chooseS3Object
as the value ofS3DataType
,S3Uri
identifies an object that is a gzip-compressed TAR archive. SageMaker will attempt to decompress and untar the object during model deployment.If you choose
None
and choooseS3Object
as the value ofS3DataType
,S3Uri
identifies an object that represents an uncompressed ML model to deploy.If you choose None and choose
S3Prefix
as the value ofS3DataType
,S3Uri
identifies a key name prefix, under which all objects represents the uncompressed ML model to deploy.If you choose None, then SageMaker will follow rules below when creating model data files under /opt/ml/model directory for use by your inference code:
-
If you choose
S3Object
as the value ofS3DataType
, then SageMaker will split the key of the S3 object referenced byS3Uri
by slash (/), and use the last part as the filename of the file holding the content of the S3 object. -
If you choose
S3Prefix
as the value ofS3DataType
, then for each S3 object under the key name pefix referenced byS3Uri
, SageMaker will trim its key by the prefix, and use the remainder as the path (relative to/opt/ml/model
) of the file holding the content of the S3 object. SageMaker will split the remainder by slash (/), using intermediate parts as directory names and the last part as filename of the file holding the content of the S3 object. -
Do not use any of the following as file names or directory names:
-
An empty or blank string
-
A string which contains null bytes
-
A string longer than 255 bytes
-
A single dot (
.
) -
A double dot (
..
)
-
-
Ambiguous file names will result in model deployment failure. For example, if your uncompressed ML model consists of two S3 objects
s3://mybucket/model/weights
ands3://mybucket/model/weights/part1
and you specifys3://mybucket/model/
as the value ofS3Uri
andS3Prefix
as the value ofS3DataType
, then it will result in name clash between/opt/ml/model/weights
(a regular file) and/opt/ml/model/weights/
(a directory). -
Do not organize the model artifacts in S3 console using folders. When you create a folder in S3 console, S3 creates a 0-byte object with a key set to the folder name you provide. They key of the 0-byte object ends with a slash (/) which violates SageMaker restrictions on model artifact file names, leading to model deployment failure.
-
- See Also:
ModelCompressionType
-
-
modelAccessConfig
public final ModelAccessConfig modelAccessConfig()
Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the
ModelAccessConfig
. You are responsible for reviewing and complying with any applicable license terms and making sure they are acceptable for your use case before downloading or using a model.- Returns:
- Specifies the access configuration file for the ML model. You can explicitly accept the model end-user
license agreement (EULA) within the
ModelAccessConfig
. You are responsible for reviewing and complying with any applicable license terms and making sure they are acceptable for your use case before downloading or using a model.
-
hubAccessConfig
public final InferenceHubAccessConfig hubAccessConfig()
Configuration information for hub access.
- Returns:
- Configuration information for hub access.
-
manifestS3Uri
public final String manifestS3Uri()
The Amazon S3 URI of the manifest file. The manifest file is a CSV file that stores the artifact locations.
- Returns:
- The Amazon S3 URI of the manifest file. The manifest file is a CSV file that stores the artifact locations.
-
toBuilder
public S3ModelDataSource.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<S3ModelDataSource.Builder,S3ModelDataSource>
-
builder
public static S3ModelDataSource.Builder builder()
-
serializableBuilderClass
public static Class<? extends S3ModelDataSource.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFields
in interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
-