Membuat percakapan sadar memori
Melanjutkan pengerjaan ChargeBot di ChargeNet, Anda akan menyimpan setiap giliran dialog dan hanya mengirim pesan paling baru ke Claude untuk mempertahankan konteks percakapan dengan model Claude di Amazon Bedrock. Bot akan mengelola riwayat pesan dan memformat percakapan dengan cara yang dapat dipahami Claude, menggunakan konteks terbaru saja.
Pustaka boto3 dan json, serta kelas ConversationManager yang Anda definisikan pada latihan sebelumnya, sudah dimuat.
Latihan ini adalah bagian dari kursus
Pengantar Amazon Bedrock
Petunjuk latihan
- Gunakan metode
add_message()untuk menyimpan masukan pengguna. - Kirim hanya dua pesan terakhir dari riwayat ke Claude menggunakan format pesan yang benar.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
conversation = ConversationManager()
user_input = "What is the charging speed of your Highway Max station?"
# Add the user input
conversation.____
# Send only the last two messages from conversation history
messages = ____
request_body = json.dumps({"anthropic_version": "bedrock-2023-05-31", "max_tokens": 200, "temperature": 0.2, "messages": messages})
response = conversation.bedrock.invoke_model(modelId="anthropic.claude-3-5-sonnet-20240620-v1:0", body=request_body)
completion = json.loads(response['body'].read().decode())["content"][0]["text"]
conversation.add_message("assistant", completion)
print(completion)