Зробити розмову чутливою до пам'яті
Продовжуючи роботу над ChargeBot у ChargeNet, ви зберігатимете кожен крок діалогу й надсилатимете до Claude лише найсвіжіші повідомлення, щоб підтримувати контекст розмови з моделлю Claude від Amazon Bedrock. Бот керуватиме історією повідомлень і форматуватиме розмову так, щоб Claude її розумів, використовуючи лише найактуальніший контекст.
Бібліотеки boto3 і json, а також клас ConversationManager, який ви визначили в попередній вправі, уже завантажено.
Ця вправа є частиною курсу
Вступ до Amazon Bedrock
Інструкції до вправи
- Використайте метод
add_message(), щоб зберегти введення користувача. - Надішліть до Claude лише останні два повідомлення з історії у правильному форматі повідомлень.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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="us.anthropic.claude-sonnet-4-5-20250929-v1:0", body=request_body)
completion = json.loads(response['body'].read().decode())["content"][0]["text"]
conversation.add_message("assistant", completion)
print(completion)