Temel model rapor kategorileştirme
Artık hava durumunu hızlıca anlamaya yardımcı olan bir AI özelliği üzerinde çalışıyorsun. Kullanıcılar uzun raporlar okumak yerine, SkyCast Assistant uygulamasında tek kelimelik basit bir özet görmek istiyor. Bir kavram kanıtı olarak, Amazon Bedrock kullanarak bir hava durumu raporunu önceden tanımlanmış bir listeden tek bir kelimeye özetliyorsun.
boto3 ve json kütüphaneleri önceden yüklendi. report olarak kaydedilmiş örnek bir hava durumu raporu ve geçerli categories listesi de önceden yüklendi.
Bu egzersiz, kursun bir parçasıdır
Amazon Bedrock'a Giriş
Egzersiz talimatları
categorieslistesindeki izin verilen kategorilerden bahseden vereportiçeriğini de ekleyen bir istem oluştur.- Modeli çağırırken bu istemi istek gövdesine ekle.
- Bedrock tarafından döndürülen
responseiçinden özeti çıkar.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
def summarize_weather(report):
bedrock = boto3.client("bedrock-runtime", region_name="us-east-1")
# Create prompt with allowed categories and pass in the report
prompt = f"""Summarize the following weather report as one word from: {', '.join(____)}. Report: {____}"""
# Pass the prompt to the body
body = {"messages": [{"role": "user", "content": [{"text": ____}]}]}
response = bedrock.invoke_model(modelId="us.amazon.nova-2-lite-v1:0", body=json.dumps(body))
# Extract the summary from the response
data = json.loads(response.get("body").read()____)
return data["output"]["message"]["content"][0]["text"]
print(f"Weather Summary: {summarize_weather(report)}")