top_p와 max_tokens로 출력 제어하기
마케팅 팀은 이제 대표 요리 로봇 ChefBot에 대한 스토리를 두 가지 버전으로 원해요. 투자자용 간결한 브리핑과, 더 창의적인 ‘비하인드 스토리’ 블로그 글이에요.
이 연습 문제에서는 boto3와 json 라이브러리, 그리고 bedrock 클라이언트가 미리 임포트되어 있어요.
이 연습은 강의의 일부입니다
Amazon Bedrock 입문
연습 안내
- 낮은
top_p와 낮은max_tokens로 간결한 스토리를 생성하고, 높은top_p와 높은max_tokens로 더 창의적인 스토리를 생성하세요. 단,max_tokens는 최대 200으로 유지하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
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)