Rendre une conversation sensible à la mémoire
En poursuivant votre travail sur ChargeBot chez ChargeNet, vous enregistrerez chaque tour de dialogue et n'enverrez que les messages les plus récents à Claude, afin de conserver le contexte de la conversation avec le modèle Claude d'Amazon Bedrock. Le bot gérera l'historique des messages et mettra en forme la conversation de manière à ce que Claude puisse la comprendre, en utilisant uniquement le contexte le plus récent.
Les bibliothèques boto3
et json
, ainsi que la classe ConversationManager
que vous avez définie dans l'exercice précédent, ont été préchargées.
Cet exercice fait partie du cours
Introduction à Amazon Bedrock
Instructions
- Veuillez utiliser la méthode «
add_message()
» pour enregistrer les données saisies par l'utilisateur. - Veuillez envoyer uniquement les deux derniers messages de l'historique à Claude en utilisant le format de message approprié.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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)