Contrôler la sortie avec top_p et max_tokens
L'équipe de marketing veut maintenant deux versions d'une histoire sur ChefBot, le robot cuisinier vedette : un bref compte rendu pour les investisseurs et un billet de blogue plus créatif des coulisses.
Dans cet exercice, les bibliothèques boto3 et json, ainsi que le client bedrock, ont été préimportés.
Cette activité fait partie du cours
Introduction à Amazon Bedrock
Instructions de l’exercice
- Générez une histoire concise avec un
top_pfaible et unmax_tokensfaible, puis une histoire plus créative avec untop_pélevé et unmax_tokensélevé, en limitantmax_tokensà un maximum de 200.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
def generate_story_with_params(bedrock, top_p, max_tokens):
messages = [{"role": "user",
"content": "Write a story about ChefBot writing a bestselling AI-powered cookbook memoir."}]
request_body=json.dumps({"anthropic_version": "bedrock-2023-05-31", "max_tokens": max_tokens,
"top_p": top_p, "messages": messages})
response = bedrock.invoke_model(body=request_body, modelId='us.anthropic.claude-sonnet-4-5-20250929-v1:0')
response_body = json.loads(response.get('body').read().decode())
return response_body["content"][0]["text"]
# Modify the parameters to create the two stories
short_focused = generate_story_with_params(bedrock, ____, ____)
long_diverse = generate_story_with_params(bedrock, ____, ____)
print("More focused: ", short_focused, "More creative: ", long_diverse)