Exécutez des exemples de API demandes Amazon Bedrock via le AWS SDKpour Python (Boto3) - Amazon Bedrock

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exécutez des exemples de API demandes Amazon Bedrock via le AWS SDKpour Python (Boto3)

Cette section vous explique comment tester certaines opérations courantes dans Amazon Bedrock avec le AWS Python pour vérifier que vos autorisations et votre authentification sont correctement configurées. Avant d'exécuter les exemples suivants, vous devez vérifier que vous avez rempli les conditions préalables suivantes :

Prérequis

Vérifiez que vos autorisations et clés d'accès sont correctement configurées pour Amazon Bedrock, en utilisant le rôle Amazon Bedrock que vous avez créé. Ces exemples supposent que vous avez configuré votre environnement avec vos clés d'accès. Notez ce qui suit :

  • Au minimum, vous devez spécifier votre AWS ID de clé d'accès et un AWS clé d'accès secrète.

  • Si vous utilisez des informations d'identification temporaires, vous devez également inclure un AWS jeton de session.

Si vous ne spécifiez pas vos informations d'identification dans votre environnement, vous pouvez les spécifier lors de la création d'un client pour les opérations Amazon Bedrock. Pour ce faire, incluez les aws_session_token arguments aws_access_key_idaws_secret_access_key, et (si vous utilisez des informations d'identification à court terme) lorsque vous créez le client.

Répertoriez les modèles de base proposés par Amazon Bedrock

L'exemple suivant exécute l'ListFoundationModelsopération à l'aide d'un client Amazon Bedrock. ListFoundationModelsrépertorie les modèles de fondation (FMs) disponibles sur Amazon Bedrock dans votre région. Exécutez le script Python suivant SDK pour créer un client Amazon Bedrock et tester le ListFoundationModelsfonctionnement :

# Use the ListFoundationModels API to show the models that are available in your region. import boto3 # Create an &BR; client in the &region-us-east-1; Region. bedrock = boto3.client( service_name="bedrock" ) bedrock.list_foundation_models()

Si le script aboutit, la réponse renvoie une liste des modèles de base disponibles sur Amazon Bedrock.

Envoyez une demande de texte à un modèle et générez une réponse textuelle avec InvokeModel

L'exemple suivant exécute l'InvokeModelopération à l'aide d'un client Amazon Bedrock. InvokeModelvous permet d'envoyer une invite pour générer un modèle de réponse. Exécutez le script suivant SDK pour Python afin de créer un client d'exécution Amazon Bedrock et de générer une réponse textuelle avec l'opération :

# 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)

Si la commande aboutit, la réponse renvoie le texte généré par le modèle en réponse à l'invite.

Envoyer une demande de texte à un modèle et générer une réponse textuelle avec Converse

L'exemple suivant exécute l'opération Converse à l'aide d'un client Amazon Bedrock. Nous recommandons d'utiliser Converse Operation Over InvokeModel lorsqu'il est pris en charge, car cela unifie la demande d'inférence entre les modèles Amazon Bedrock et simplifie la gestion des conversations à plusieurs tours. Exécutez le script suivant SDK pour Python afin de créer un client d'exécution Amazon Bedrock et de générer une réponse textuelle avec l'Converseopération :

# 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)

Si la commande aboutit, la réponse renvoie le texte généré par le modèle en réponse à l'invite.