Controlando a saída com top_p e max_tokens
A galera do marketing agora quer duas versões de uma história sobre o ChefBot, o robô de cozinha que é o carro-chefe da empresa: um briefing curto para os investidores e um post mais criativo para o blog, mostrando os bastidores.
Neste exercício, as bibliotecas boto3
e json
, e o cliente bedrock
, já foram importados.
Este exercício faz parte do curso
Introdução ao Amazon Bedrock
Instruções do exercício
- Crie uma história curta usando um baixo
top_p
e um baixomax_tokens
e uma história mais criativa usando um altotop_p
e um altomax_tokens
, mantendo omax_tokens
no máximo de 200.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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='anthropic.claude-3-5-sonnet-20240620-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)