com.amazonaws.services.bedrock.model.CreateProvisionedModelThroughputRequest Maven / Gradle / Ivy
Show all versions of aws-java-sdk-bedrock Show documentation
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.bedrock.model;
import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.AmazonWebServiceRequest;
/**
*
* @see AWS API Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreateProvisionedModelThroughputRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {
/**
*
* A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token
* matches a previous request, Amazon Bedrock ignores the request, but does not return an error. For more
* information, see Ensuring
* idempotency in the Amazon S3 User Guide.
*
*/
private String clientRequestToken;
/**
*
* Number of model units to allocate. A model unit delivers a specific throughput level for the specified model. The
* throughput level of a model unit specifies the total number of input and output tokens that it can process and
* generate within a span of one minute. By default, your account has no model units for purchasing Provisioned
* Throughputs with commitment. You must first visit the Amazon Web
* Services support center to request MUs.
*
*
* For model unit quotas, see Provisioned Throughput
* quotas in the Amazon Bedrock User Guide.
*
*
* For more information about what an MU specifies, contact your Amazon Web Services account manager.
*
*/
private Integer modelUnits;
/**
*
* The name for this Provisioned Throughput.
*
*/
private String provisionedModelName;
/**
*
* The Amazon Resource Name (ARN) or name of the model to associate with this Provisioned Throughput. For a list of
* models for which you can purchase Provisioned Throughput, see Amazon Bedrock
* model IDs for purchasing Provisioned Throughput in the Amazon Bedrock User Guide.
*
*/
private String modelId;
/**
*
* The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted for
* longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and models for
* Provisioned Throughput in the Amazon Bedrock User Guide
*
*/
private String commitmentDuration;
/**
*
* Tags to associate with this Provisioned Throughput.
*
*/
private java.util.List tags;
/**
*
* A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token
* matches a previous request, Amazon Bedrock ignores the request, but does not return an error. For more
* information, see Ensuring
* idempotency in the Amazon S3 User Guide.
*
*
* @param clientRequestToken
* A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If
* this token matches a previous request, Amazon Bedrock ignores the request, but does not return an error.
* For more information, see Ensuring
* idempotency in the Amazon S3 User Guide.
*/
public void setClientRequestToken(String clientRequestToken) {
this.clientRequestToken = clientRequestToken;
}
/**
*
* A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token
* matches a previous request, Amazon Bedrock ignores the request, but does not return an error. For more
* information, see Ensuring
* idempotency in the Amazon S3 User Guide.
*
*
* @return A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If
* this token matches a previous request, Amazon Bedrock ignores the request, but does not return an error.
* For more information, see Ensuring
* idempotency in the Amazon S3 User Guide.
*/
public String getClientRequestToken() {
return this.clientRequestToken;
}
/**
*
* A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token
* matches a previous request, Amazon Bedrock ignores the request, but does not return an error. For more
* information, see Ensuring
* idempotency in the Amazon S3 User Guide.
*
*
* @param clientRequestToken
* A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If
* this token matches a previous request, Amazon Bedrock ignores the request, but does not return an error.
* For more information, see Ensuring
* idempotency in the Amazon S3 User Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateProvisionedModelThroughputRequest withClientRequestToken(String clientRequestToken) {
setClientRequestToken(clientRequestToken);
return this;
}
/**
*
* Number of model units to allocate. A model unit delivers a specific throughput level for the specified model. The
* throughput level of a model unit specifies the total number of input and output tokens that it can process and
* generate within a span of one minute. By default, your account has no model units for purchasing Provisioned
* Throughputs with commitment. You must first visit the Amazon Web
* Services support center to request MUs.
*
*
* For model unit quotas, see Provisioned Throughput
* quotas in the Amazon Bedrock User Guide.
*
*
* For more information about what an MU specifies, contact your Amazon Web Services account manager.
*
*
* @param modelUnits
* Number of model units to allocate. A model unit delivers a specific throughput level for the specified
* model. The throughput level of a model unit specifies the total number of input and output tokens that it
* can process and generate within a span of one minute. By default, your account has no model units for
* purchasing Provisioned Throughputs with commitment. You must first visit the Amazon
* Web Services support center to request MUs.
*
* For model unit quotas, see Provisioned
* Throughput quotas in the Amazon Bedrock User Guide.
*
*
* For more information about what an MU specifies, contact your Amazon Web Services account manager.
*/
public void setModelUnits(Integer modelUnits) {
this.modelUnits = modelUnits;
}
/**
*
* Number of model units to allocate. A model unit delivers a specific throughput level for the specified model. The
* throughput level of a model unit specifies the total number of input and output tokens that it can process and
* generate within a span of one minute. By default, your account has no model units for purchasing Provisioned
* Throughputs with commitment. You must first visit the Amazon Web
* Services support center to request MUs.
*
*
* For model unit quotas, see Provisioned Throughput
* quotas in the Amazon Bedrock User Guide.
*
*
* For more information about what an MU specifies, contact your Amazon Web Services account manager.
*
*
* @return Number of model units to allocate. A model unit delivers a specific throughput level for the specified
* model. The throughput level of a model unit specifies the total number of input and output tokens that it
* can process and generate within a span of one minute. By default, your account has no model units for
* purchasing Provisioned Throughputs with commitment. You must first visit the Amazon
* Web Services support center to request MUs.
*
* For model unit quotas, see Provisioned
* Throughput quotas in the Amazon Bedrock User Guide.
*
*
* For more information about what an MU specifies, contact your Amazon Web Services account manager.
*/
public Integer getModelUnits() {
return this.modelUnits;
}
/**
*
* Number of model units to allocate. A model unit delivers a specific throughput level for the specified model. The
* throughput level of a model unit specifies the total number of input and output tokens that it can process and
* generate within a span of one minute. By default, your account has no model units for purchasing Provisioned
* Throughputs with commitment. You must first visit the Amazon Web
* Services support center to request MUs.
*
*
* For model unit quotas, see Provisioned Throughput
* quotas in the Amazon Bedrock User Guide.
*
*
* For more information about what an MU specifies, contact your Amazon Web Services account manager.
*
*
* @param modelUnits
* Number of model units to allocate. A model unit delivers a specific throughput level for the specified
* model. The throughput level of a model unit specifies the total number of input and output tokens that it
* can process and generate within a span of one minute. By default, your account has no model units for
* purchasing Provisioned Throughputs with commitment. You must first visit the Amazon
* Web Services support center to request MUs.
*
* For model unit quotas, see Provisioned
* Throughput quotas in the Amazon Bedrock User Guide.
*
*
* For more information about what an MU specifies, contact your Amazon Web Services account manager.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateProvisionedModelThroughputRequest withModelUnits(Integer modelUnits) {
setModelUnits(modelUnits);
return this;
}
/**
*
* The name for this Provisioned Throughput.
*
*
* @param provisionedModelName
* The name for this Provisioned Throughput.
*/
public void setProvisionedModelName(String provisionedModelName) {
this.provisionedModelName = provisionedModelName;
}
/**
*
* The name for this Provisioned Throughput.
*
*
* @return The name for this Provisioned Throughput.
*/
public String getProvisionedModelName() {
return this.provisionedModelName;
}
/**
*
* The name for this Provisioned Throughput.
*
*
* @param provisionedModelName
* The name for this Provisioned Throughput.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateProvisionedModelThroughputRequest withProvisionedModelName(String provisionedModelName) {
setProvisionedModelName(provisionedModelName);
return this;
}
/**
*
* The Amazon Resource Name (ARN) or name of the model to associate with this Provisioned Throughput. For a list of
* models for which you can purchase Provisioned Throughput, see Amazon Bedrock
* model IDs for purchasing Provisioned Throughput in the Amazon Bedrock User Guide.
*
*
* @param modelId
* The Amazon Resource Name (ARN) or name of the model to associate with this Provisioned Throughput. For a
* list of models for which you can purchase Provisioned Throughput, see Amazon
* Bedrock model IDs for purchasing Provisioned Throughput in the Amazon Bedrock User Guide.
*/
public void setModelId(String modelId) {
this.modelId = modelId;
}
/**
*
* The Amazon Resource Name (ARN) or name of the model to associate with this Provisioned Throughput. For a list of
* models for which you can purchase Provisioned Throughput, see Amazon Bedrock
* model IDs for purchasing Provisioned Throughput in the Amazon Bedrock User Guide.
*
*
* @return The Amazon Resource Name (ARN) or name of the model to associate with this Provisioned Throughput. For a
* list of models for which you can purchase Provisioned Throughput, see Amazon
* Bedrock model IDs for purchasing Provisioned Throughput in the Amazon Bedrock User Guide.
*/
public String getModelId() {
return this.modelId;
}
/**
*
* The Amazon Resource Name (ARN) or name of the model to associate with this Provisioned Throughput. For a list of
* models for which you can purchase Provisioned Throughput, see Amazon Bedrock
* model IDs for purchasing Provisioned Throughput in the Amazon Bedrock User Guide.
*
*
* @param modelId
* The Amazon Resource Name (ARN) or name of the model to associate with this Provisioned Throughput. For a
* list of models for which you can purchase Provisioned Throughput, see Amazon
* Bedrock model IDs for purchasing Provisioned Throughput in the Amazon Bedrock User Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateProvisionedModelThroughputRequest withModelId(String modelId) {
setModelId(modelId);
return this;
}
/**
*
* The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted for
* longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and models for
* Provisioned Throughput in the Amazon Bedrock User Guide
*
*
* @param commitmentDuration
* The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted
* for longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and models
* for Provisioned Throughput in the Amazon Bedrock User Guide
* @see CommitmentDuration
*/
public void setCommitmentDuration(String commitmentDuration) {
this.commitmentDuration = commitmentDuration;
}
/**
*
* The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted for
* longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and models for
* Provisioned Throughput in the Amazon Bedrock User Guide
*
*
* @return The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted
* for longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and
* models for Provisioned Throughput in the Amazon Bedrock User Guide
* @see CommitmentDuration
*/
public String getCommitmentDuration() {
return this.commitmentDuration;
}
/**
*
* The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted for
* longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and models for
* Provisioned Throughput in the Amazon Bedrock User Guide
*
*
* @param commitmentDuration
* The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted
* for longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and models
* for Provisioned Throughput in the Amazon Bedrock User Guide
* @return Returns a reference to this object so that method calls can be chained together.
* @see CommitmentDuration
*/
public CreateProvisionedModelThroughputRequest withCommitmentDuration(String commitmentDuration) {
setCommitmentDuration(commitmentDuration);
return this;
}
/**
*
* The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted for
* longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and models for
* Provisioned Throughput in the Amazon Bedrock User Guide
*
*
* @param commitmentDuration
* The commitment duration requested for the Provisioned Throughput. Billing occurs hourly and is discounted
* for longer commitment terms. To request a no-commit Provisioned Throughput, omit this field.
*
* Custom models support all levels of commitment. To see which base models support no commitment, see Supported regions and models
* for Provisioned Throughput in the Amazon Bedrock User Guide
* @return Returns a reference to this object so that method calls can be chained together.
* @see CommitmentDuration
*/
public CreateProvisionedModelThroughputRequest withCommitmentDuration(CommitmentDuration commitmentDuration) {
this.commitmentDuration = commitmentDuration.toString();
return this;
}
/**
*
* Tags to associate with this Provisioned Throughput.
*
*
* @return Tags to associate with this Provisioned Throughput.
*/
public java.util.List getTags() {
return tags;
}
/**
*
* Tags to associate with this Provisioned Throughput.
*
*
* @param tags
* Tags to associate with this Provisioned Throughput.
*/
public void setTags(java.util.Collection tags) {
if (tags == null) {
this.tags = null;
return;
}
this.tags = new java.util.ArrayList(tags);
}
/**
*
* Tags to associate with this Provisioned Throughput.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the
* existing values.
*
*
* @param tags
* Tags to associate with this Provisioned Throughput.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateProvisionedModelThroughputRequest withTags(Tag... tags) {
if (this.tags == null) {
setTags(new java.util.ArrayList(tags.length));
}
for (Tag ele : tags) {
this.tags.add(ele);
}
return this;
}
/**
*
* Tags to associate with this Provisioned Throughput.
*
*
* @param tags
* Tags to associate with this Provisioned Throughput.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateProvisionedModelThroughputRequest withTags(java.util.Collection tags) {
setTags(tags);
return this;
}
/**
* 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.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getClientRequestToken() != null)
sb.append("ClientRequestToken: ").append(getClientRequestToken()).append(",");
if (getModelUnits() != null)
sb.append("ModelUnits: ").append(getModelUnits()).append(",");
if (getProvisionedModelName() != null)
sb.append("ProvisionedModelName: ").append(getProvisionedModelName()).append(",");
if (getModelId() != null)
sb.append("ModelId: ").append(getModelId()).append(",");
if (getCommitmentDuration() != null)
sb.append("CommitmentDuration: ").append(getCommitmentDuration()).append(",");
if (getTags() != null)
sb.append("Tags: ").append(getTags());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof CreateProvisionedModelThroughputRequest == false)
return false;
CreateProvisionedModelThroughputRequest other = (CreateProvisionedModelThroughputRequest) obj;
if (other.getClientRequestToken() == null ^ this.getClientRequestToken() == null)
return false;
if (other.getClientRequestToken() != null && other.getClientRequestToken().equals(this.getClientRequestToken()) == false)
return false;
if (other.getModelUnits() == null ^ this.getModelUnits() == null)
return false;
if (other.getModelUnits() != null && other.getModelUnits().equals(this.getModelUnits()) == false)
return false;
if (other.getProvisionedModelName() == null ^ this.getProvisionedModelName() == null)
return false;
if (other.getProvisionedModelName() != null && other.getProvisionedModelName().equals(this.getProvisionedModelName()) == false)
return false;
if (other.getModelId() == null ^ this.getModelId() == null)
return false;
if (other.getModelId() != null && other.getModelId().equals(this.getModelId()) == false)
return false;
if (other.getCommitmentDuration() == null ^ this.getCommitmentDuration() == null)
return false;
if (other.getCommitmentDuration() != null && other.getCommitmentDuration().equals(this.getCommitmentDuration()) == false)
return false;
if (other.getTags() == null ^ this.getTags() == null)
return false;
if (other.getTags() != null && other.getTags().equals(this.getTags()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getClientRequestToken() == null) ? 0 : getClientRequestToken().hashCode());
hashCode = prime * hashCode + ((getModelUnits() == null) ? 0 : getModelUnits().hashCode());
hashCode = prime * hashCode + ((getProvisionedModelName() == null) ? 0 : getProvisionedModelName().hashCode());
hashCode = prime * hashCode + ((getModelId() == null) ? 0 : getModelId().hashCode());
hashCode = prime * hashCode + ((getCommitmentDuration() == null) ? 0 : getCommitmentDuration().hashCode());
hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode());
return hashCode;
}
@Override
public CreateProvisionedModelThroughputRequest clone() {
return (CreateProvisionedModelThroughputRequest) super.clone();
}
}