Implementarea modelelor de rezervă
Pentru a garanta disponibilitatea non-stop, TrailBlaze are nevoie să comute la un model mai ușor atunci când Claude nu este disponibil. Implementează un mecanism de rezervă de la Claude la Nova Text Lite în cazul apariției unor erori, pentru a asigura continuitatea serviciului în aplicația de călătorii.
Bibliotecile json și boto3, precum și clientul bedrock, sunt preîncărcate.
Acest exercițiu face parte din cursul
Introducere în Amazon Bedrock
Instrucțiuni pentru exercițiu
- Înfășoară apelul principal către modelul Claude într-un bloc
try. - În blocul
except, gestionează erorile folosindClientErrorși apelează modelul Nova Text Lite.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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?"))