As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Execute exemplos de API solicitações do Amazon Bedrock por meio do AWS SDKpara Python (Boto3)
Esta seção orienta você a experimentar algumas operações comuns no Amazon Bedrock com o AWS Python para testar se suas permissões e autenticação estão configuradas corretamente. Antes de executar os exemplos a seguir, verifique se você atendeu aos seguintes pré-requisitos:
Pré-requisitos
-
Você tem um Conta da AWS e ter permissões para acessar uma função com as permissões necessárias para o Amazon Bedrock. Caso contrário, siga as etapas emEu já tenho um Conta da AWS.
-
Você solicitou acesso ao Amazon Titan Text G1 - Express modelo. Caso contrário, siga as etapas emSolicite acesso a um modelo da Amazon Bedrock Foundation.
-
Você recebeu as chaves de acesso IAM do seu usuário e configurou um perfil com elas. Caso contrário, siga as etapas aplicáveis ao seu caso de uso emObtenha credenciais para conceder acesso programático a um usuário.
Teste se suas permissões e chaves de acesso estão configuradas corretamente para o Amazon Bedrock, usando a função Amazon Bedrock que você criou. Esses exemplos pressupõem que você configurou seu ambiente com suas chaves de acesso. Observe o seguinte:
-
Minimamente, você deve especificar seu AWS ID da chave de acesso e um AWS chave de acesso secreta.
-
Se você estiver usando credenciais temporárias, você também deve incluir um AWS token de sessão.
Se você não especificar suas credenciais em seu ambiente, poderá especificá-las ao criar um clienteaws_session_token
argumentos aws_access_key_id
aws_secret_access_key
,, e (se você estiver usando credenciais de curto prazo) ao criar o cliente.
Tópicos
Liste os modelos básicos que o Amazon Bedrock tem a oferecer
O exemplo a seguir executa a ListFoundationModelsoperação usando um cliente Amazon Bedrock. ListFoundationModels
lista os modelos de fundação (FMs) que estão disponíveis no Amazon Bedrock em sua região. Execute o seguinte script SDK para Python para criar um cliente Amazon Bedrock e testar a operação: ListFoundationModels
# Use the ListFoundationModels API to show the models that are available in your region. import boto3 # Create an &BR; client in the ®ion-us-east-1; Region. bedrock = boto3.client( service_name="bedrock" ) bedrock.list_foundation_models()
Se o script for bem-sucedido, a resposta retornará uma lista de modelos básicos que estão disponíveis no Amazon Bedrock.
Envie uma solicitação de texto para um modelo e gere uma resposta de texto com InvokeModel
O exemplo a seguir executa a InvokeModeloperação usando um cliente Amazon Bedrock. InvokeModel
permite que você envie uma solicitação para gerar uma resposta do modelo. Execute o seguinte script SDK para Python para criar um cliente de tempo de execução do Amazon Bedrock e gerar uma resposta de texto com a operação:
# Use the native inference API to send a text message to Amazon Titan Text G1 - Express. import boto3 import json from botocore.exceptions import ClientError # Create an Amazon Bedrock Runtime client. brt = boto3.client("bedrock-runtime") # Set the model ID, e.g., Amazon Titan Text G1 - Express. model_id = "amazon.titan-text-express-v1" # Define the prompt for the model. prompt = "Describe the purpose of a 'hello world' program in one line." # Format the request payload using the model's native structure. native_request = { "inputText": prompt, "textGenerationConfig": { "maxTokenCount": 512, "temperature": 0.5, "topP": 0.9 }, } # Convert the native request to JSON. request = json.dumps(native_request) try: # Invoke the model with the request. response = brt.invoke_model(modelId=model_id, body=request) except (ClientError, Exception) as e: print(f"ERROR: Can't invoke '{model_id}'. Reason: {e}") exit(1) # Decode the response body. model_response = json.loads(response["body"].read()) # Extract and print the response text. response_text = model_response["results"][0]["outputText"] print(response_text)
Se o comando for bem-sucedido, a resposta retornará o texto gerado pelo modelo em resposta ao prompt.
Envie uma solicitação de texto para um modelo e gere uma resposta de texto com o Converse
O exemplo a seguir executa a operação Converse usando um cliente Amazon Bedrock. Recomendamos usar a Converse
operação InvokeModel
quando houver suporte, pois ela unifica a solicitação de inferência em todos os modelos do Amazon Bedrock e simplifica o gerenciamento de conversas em vários turnos. Execute o seguinte script SDK para Python para criar um cliente de tempo de execução do Amazon Bedrock e gerar uma resposta de texto com a operação: Converse
# Use the Conversation API to send a text message to Amazon Titan Text G1 - Express. import boto3 from botocore.exceptions import ClientError # Create an Amazon Bedrock Runtime client. brt = boto3.client("bedrock-runtime") # Set the model ID, e.g., Amazon Titan Text G1 - Express. model_id = "amazon.titan-text-express-v1" # Start a conversation with the user message. user_message = "Describe the purpose of a 'hello world' program in one line." conversation = [ { "role": "user", "content": [{"text": user_message}], } ] try: # Send the message to the model, using a basic inference configuration. response = brt.converse( modelId=model_id, messages=conversation, inferenceConfig={"maxTokens": 512, "temperature": 0.5, "topP": 0.9}, ) # Extract and print the response text. response_text = response["output"]["message"]["content"][0]["text"] print(response_text) except (ClientError, Exception) as e: print(f"ERROR: Can't invoke '{model_id}'. Reason: {e}") exit(1)
Se o comando for bem-sucedido, a resposta retornará o texto gerado pelo modelo em resposta ao prompt.