Ejecute API solicitudes de Amazon Bedrock de ejemplo con un bloc de notas Amazon SageMaker AI - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejecute API solicitudes de Amazon Bedrock de ejemplo con un bloc de notas Amazon SageMaker AI

En esta sección, se explica cómo probar algunas operaciones habituales en Amazon Bedrock con un bloc de notas de Amazon SageMaker AI para comprobar que los permisos de su rol de Amazon Bedrock están configurados correctamente. Antes de ejecutar los siguientes ejemplos, debe comprobar que cumple los requisitos previos que se indican a continuación:

Requisitos previos

  • Tiene un rol Cuenta de AWS y tiene permisos para acceder a él con los permisos necesarios para Amazon Bedrock. De lo contrario, siga estos pasos en Ya tengo una Cuenta de AWS.

  • Ha solicitado acceso al Amazon Titan Text G1 - Express modelo. De lo contrario, siga estos pasos en Solicitud de acceso a un modelo fundacional de Amazon Bedrock.

  • Realice los siguientes pasos para configurar los IAM permisos para la SageMaker IA y crear un bloc de notas:

    1. Modifique la política de confianza del rol de Amazon Bedrock que configuró Ya tengo una Cuenta de AWS a través de la consola CLI, o API. Adjunta la siguiente política de confianza al rol para permitir que los servicios de Amazon Bedrock y SageMaker AI asuman el rol de 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. Inicie sesión en el rol de Amazon Bedrock cuya política de confianza acaba de modificar.

    3. Siga los pasos descritos en Crear una instancia de Amazon SageMaker AI Notebook para ver el tutorial y especifique el rol ARN de Amazon Bedrock que creó para crear una instancia de bloc de notas de SageMaker IA.

    4. Cuando el estado de la instancia del bloc de notas sea InService, elija la instancia y, a continuación, elija Abrir JupyterLab.

Después de abrir tu bloc de notas de SageMaker IA, puedes probar los siguientes ejemplos:

Enumeración de los modelos fundacionales que ofrece Amazon Bedrock

En el siguiente ejemplo, se ejecuta la ListFoundationModelsoperación con un cliente de Amazon Bedrock. ListFoundationModelsmuestra los modelos de base (FMs) que están disponibles en Amazon Bedrock en su región. Ejecute el siguiente script de Python SDK para crear un cliente Amazon Bedrock y probar la ListFoundationModelsoperación:

# 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 el script se ejecuta correctamente, la respuesta devuelve una lista de modelos fundacionales disponibles en Amazon Bedrock.

Envío de una petición de texto a un modelo y generación de una respuesta

En el siguiente ejemplo se ejecuta la operación Converse con un cliente de Amazon Bedrock. Converse le permite enviar una petición para generar una respuesta del modelo. Ejecute lo siguiente SDK para el script de Python para crear un cliente de tiempo de ejecución de Amazon Bedrock y probar la operación de 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 el comando se ejecuta correctamente, la respuesta devuelve el texto generado por el modelo en respuesta a la petición.