Adăugarea memoriei conversaționale
Continuând lucrul la ChargeBot pentru ChargeNet, vei stoca fiecare schimb din dialog și vei trimite către Claude doar cele mai recente mesaje, pentru a menține contextul conversației cu modelul Claude din Amazon Bedrock. Botul va gestiona istoricul mesajelor și va formata conversația într-un mod pe care Claude îl poate înțelege, folosind doar contextul cel mai recent.
Bibliotecile boto3 și json, precum și clasa ConversationManager pe care ai definit-o în exercițiul anterior, au fost preîncărcate.
Acest exercițiu face parte din cursul
Introducere în Amazon Bedrock
Instrucțiuni pentru exercițiu
- Folosește metoda
add_message()pentru a stoca inputul utilizatorului. - Trimite către Claude doar ultimele două mesaje din istoric, folosind formatul corect al mesajelor.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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)