Esegui esempi di richieste API Amazon Bedrock tramite l' AWS SDK for Python (Boto3) - Amazon Bedrock

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esegui esempi di richieste API Amazon Bedrock tramite l' AWS SDK for Python (Boto3)

Questa sezione ti guida a provare alcune operazioni comuni in Amazon Bedrock per verificare che le autorizzazioni e l'autenticazione siano configurate correttamente. Prima di eseguire i seguenti esempi, dovresti verificare di aver soddisfatto i seguenti prerequisiti:

Prerequisiti

Verifica che le autorizzazioni e le chiavi di accesso siano configurate correttamente per Amazon Bedrock, utilizzando il ruolo Amazon Bedrock che hai creato. Questi esempi presuppongono che tu abbia configurato il tuo ambiente con le tue chiavi di accesso. Tieni presente quanto segue:

  • Come minimo, è necessario specificare l'ID della chiave di AWS accesso e una chiave di accesso AWS segreta.

  • Se utilizzi credenziali temporanee, devi includere anche un token di AWS sessione.

Se non specifichi le tue credenziali nel tuo ambiente, puoi specificarle quando crei un client per le operazioni di Amazon Bedrock. A tale scopo, includi gli aws_session_token argomenti aws_access_key_idaws_secret_access_key, e (se utilizzi credenziali a breve termine) quando crei il client.

Elenca i modelli base offerti da Amazon Bedrock

L'esempio seguente esegue l'ListFoundationModelsoperazione utilizzando un client Amazon Bedrock. ListFoundationModelselenca i modelli base (FM) disponibili in Amazon Bedrock nella tua regione. Esegui il seguente script SDK for Python per creare un client Amazon Bedrock e testarne il funzionamento: ListFoundationModels

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

Se lo script ha esito positivo, la risposta restituisce un elenco di modelli base disponibili in Amazon Bedrock.

Invia un messaggio di testo a un modello e genera una risposta testuale con InvokeModel

L'esempio seguente esegue l'InvokeModeloperazione utilizzando un client Amazon Bedrock. InvokeModelconsente di inviare un prompt per generare una risposta modello. Esegui il seguente script SDK for Python per creare un client di runtime Amazon Bedrock e generare una risposta di testo con l'operazione:

# 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 in the AWS Region of your choice. brt = boto3.client("bedrock-runtime", region_name="us-east-1") # 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 il comando ha esito positivo, la risposta restituisce il testo generato dal modello in risposta al prompt.

Invia un prompt di testo a un modello e genera una risposta testuale con Converse

L'esempio seguente esegue l'operazione Converse utilizzando un client Amazon Bedrock. Consigliamo di utilizzare Converse operation over InvokeModel quando supportato, perché unifica la richiesta di inferenza tra i modelli Amazon Bedrock e semplifica la gestione delle conversazioni a più turni. Esegui il seguente script SDK for Python per creare un client di runtime Amazon Bedrock e generare una risposta di testo con l'operazione: 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 in the AWS Region you want to use. brt = boto3.client("bedrock-runtime", region_name="us-east-1") # 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 il comando ha esito positivo, la risposta restituisce il testo generato dal modello in risposta al prompt.