ควบคุมผลลัพธ์ด้วย top_p และ max_tokens
ทีมการตลาดต้องการเรื่องราวเกี่ยวกับ ChefBot หุ่นยนต์ทำอาหารรุ่นเรือธงถึงสองเวอร์ชัน ได้แก่ บทสรุปกระชับสำหรับนักลงทุน และบล็อกโพสต์สไตล์ "เบื้องหลัง" ที่มีความสร้างสรรค์มากขึ้น
ในแบบฝึกหัดนี้ มีการนำเข้าไลบรารี boto3 และ json รวมถึง bedrock client ไว้ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
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)