Mettre en place des solutions de rechange entre modèles
Pour garantir un service 24 h/24 et 7 j/7, TrailBlaze doit basculer vers un modèle plus léger lorsque Claude n'est pas disponible. Mettez en œuvre un repli de Claude vers Nova Text Lite en cas de problème, afin d'assurer un service continu pour l'application de voyage.
Les bibliothèques json et boto3, ainsi que le client bedrock, sont déjà chargés.
Cette activité fait partie du cours
Introduction à Amazon Bedrock
Instructions de l’exercice
- Encadrez l'appel au modèle Claude principal avec un bloc
try. - Dans le bloc
except, gérez les erreurs avecClientErroret appelez le modèle Nova Text Lite.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
def process_with_fallback(prompt):
# Handle errors with a try-except block
____:
response = bedrock.invoke_model(
modelId="us.anthropic.claude-sonnet-4-5-20250929-v1:0",
body=json.dumps({"anthropic_version": "bedrock-2023-05-31", "max_tokens": 100,
"messages": [{"role": "user", "content": [{"type": "text", "text": prompt}]}]}))
return json.loads(response["body"].read().decode())["content"][0]["text"]
except ____:
fallback = bedrock.invoke_model(
modelId="us.amazon.nova-2-lite-v1:0",
body=json.dumps({"messages": [{"role": "user", "content": [{"text": prompt}]}]}))
return json.loads(fallback["body"].read().decode())["output"]["message"]["content"][0]["text"]
print(process_with_fallback("What are the best destinations in Australia for kayaking?"))