Exécutez des exemples de API demandes Amazon Bedrock à l'aide d'un carnet Amazon SageMaker - 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 à l'aide d'un carnet Amazon SageMaker

Cette section vous explique comment tester certaines opérations courantes dans Amazon Bedrock à l'aide d'un SageMaker bloc-notes Amazon afin de vérifier que les autorisations de votre rôle Amazon Bedrock 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

  • Vous avez un Compte AWS et disposez des autorisations nécessaires pour accéder à un rôle disposant des autorisations nécessaires pour Amazon Bedrock. Dans le cas contraire, suivez les étapes indiquées àJ'ai déjà un Compte AWS.

  • Vous avez demandé l'accès au Amazon Titan Text G1 - Express modèle. Dans le cas contraire, suivez les étapes indiquées àDemandez l'accès à un modèle de fondation Amazon Bedrock.

  • Procédez comme suit pour configurer IAM les autorisations SageMaker et créer un bloc-notes :

    1. Modifiez la politique de confiance du rôle Amazon Bedrock que vous avez configuré J'ai déjà un Compte AWS via la console CLI, ou API. Associez la politique de confiance suivante au rôle afin de permettre à Amazon Bedrock et SageMaker aux services d'assumer le rôle Amazon Bedrock :

      { "Version": "2012-10-17", "Statement": [ { "Sid": "BedrockTrust", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Sid": "SagemakerTrust", "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
    2. Connectez-vous au rôle Amazon Bedrock dont vous venez de modifier la politique de confiance.

    3. Suivez les étapes décrites dans la section Créer une instance Amazon SageMaker Notebook pour le didacticiel et spécifiez le ARN rôle Amazon Bedrock que vous avez créé pour créer une instance de SageMaker bloc-notes.

    4. Lorsque le statut de l'instance de bloc-notes est défini InService, choisissez l'instance, puis sélectionnez Ouvrir JupyterLab.

Après avoir ouvert votre SageMaker bloc-notes, vous pouvez essayer les exemples suivants :

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.

Envoyer un message texte à un modèle et générer une réponse

L'exemple suivant exécute l'opération Converse à l'aide d'un client Amazon Bedrock. Conversevous permet d'envoyer une invite pour générer un modèle de réponse. Exécutez le script Python suivant SDK pour créer un client d'exécution Amazon Bedrock et tester l'opération 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)

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