com.amazonaws.services.bedrockruntime.AmazonBedrockRuntime Maven / Gradle / Ivy
Show all versions of aws-java-sdk-bedrockruntime 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.bedrockruntime;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.bedrockruntime.model.*;
/**
* Interface for accessing Amazon Bedrock Runtime.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.bedrockruntime.AbstractAmazonBedrockRuntime} instead.
*
*
*
* Describes the API operations for running inference using Amazon Bedrock models.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AmazonBedrockRuntime {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "bedrock-runtime";
/**
*
* The action to apply a guardrail.
*
*
* @param applyGuardrailRequest
* @return Result of the ApplyGuardrail operation returned by the service.
* @throws AccessDeniedException
* The request is denied because of missing access permissions.
* @throws ResourceNotFoundException
* The specified resource ARN was not found. Check the ARN and try your request again.
* @throws ThrottlingException
* Your request was throttled because of service-wide limitations. Resubmit your request later or in a
* different region. You can also purchase Provisioned
* Throughput to increase the rate or number of tokens you can process.
* @throws InternalServerException
* An internal server error occurred. Retry your request.
* @throws ValidationException
* Input validation failed. Check your request parameters and retry the request.
* @throws ServiceQuotaExceededException
* Your request exceeds the service quota for your account. You can view your quotas at Viewing service
* quotas. You can resubmit your request later.
* @sample AmazonBedrockRuntime.ApplyGuardrail
* @see AWS
* API Documentation
*/
ApplyGuardrailResult applyGuardrail(ApplyGuardrailRequest applyGuardrailRequest);
/**
*
* Sends messages to the specified Amazon Bedrock model. Converse
provides a consistent interface that
* works with all models that support messages. This allows you to write code once and use it with different models.
* If a model has unique inference parameters, you can also pass those unique parameters to the model.
*
*
* Amazon Bedrock doesn't store any text, images, or documents that you provide as content. The data is only used to
* generate the response.
*
*
* For information about the Converse API, see Use the Converse API in the Amazon Bedrock User Guide.
* To use a guardrail, see Use a guardrail with the Converse API in the Amazon Bedrock User Guide. To
* use a tool with a model, see Tool use (Function calling) in the Amazon Bedrock User Guide
*
*
* For example code, see Converse API examples in the Amazon Bedrock User Guide.
*
*
* This operation requires permission for the bedrock:InvokeModel
action.
*
*
* @param converseRequest
* @return Result of the Converse operation returned by the service.
* @throws AccessDeniedException
* The request is denied because of missing access permissions.
* @throws ResourceNotFoundException
* The specified resource ARN was not found. Check the ARN and try your request again.
* @throws ThrottlingException
* Your request was throttled because of service-wide limitations. Resubmit your request later or in a
* different region. You can also purchase Provisioned
* Throughput to increase the rate or number of tokens you can process.
* @throws ModelTimeoutException
* The request took too long to process. Processing time exceeded the model timeout length.
* @throws InternalServerException
* An internal server error occurred. Retry your request.
* @throws ServiceUnavailableException
* The service isn't currently available. Try again later.
* @throws ValidationException
* Input validation failed. Check your request parameters and retry the request.
* @throws ModelNotReadyException
* The model specified in the request is not ready to serve inference requests.
* @throws ModelErrorException
* The request failed due to an error while processing the model.
* @sample AmazonBedrockRuntime.Converse
* @see AWS API
* Documentation
*/
ConverseResult converse(ConverseRequest converseRequest);
/**
*
* Invokes the specified Amazon Bedrock model to run inference using the prompt and inference parameters provided in
* the request body. You use model inference to generate text, images, and embeddings.
*
*
* For example code, see Invoke model code examples in the Amazon Bedrock User Guide.
*
*
* This operation requires permission for the bedrock:InvokeModel
action.
*
*
* @param invokeModelRequest
* @return Result of the InvokeModel operation returned by the service.
* @throws AccessDeniedException
* The request is denied because of missing access permissions.
* @throws ResourceNotFoundException
* The specified resource ARN was not found. Check the ARN and try your request again.
* @throws ThrottlingException
* Your request was throttled because of service-wide limitations. Resubmit your request later or in a
* different region. You can also purchase Provisioned
* Throughput to increase the rate or number of tokens you can process.
* @throws ModelTimeoutException
* The request took too long to process. Processing time exceeded the model timeout length.
* @throws InternalServerException
* An internal server error occurred. Retry your request.
* @throws ServiceUnavailableException
* The service isn't currently available. Try again later.
* @throws ValidationException
* Input validation failed. Check your request parameters and retry the request.
* @throws ModelNotReadyException
* The model specified in the request is not ready to serve inference requests.
* @throws ServiceQuotaExceededException
* Your request exceeds the service quota for your account. You can view your quotas at Viewing service
* quotas. You can resubmit your request later.
* @throws ModelErrorException
* The request failed due to an error while processing the model.
* @sample AmazonBedrockRuntime.InvokeModel
* @see AWS
* API Documentation
*/
InvokeModelResult invokeModel(InvokeModelRequest invokeModelRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}