Kategorizace zprávy pomocí foundation modelu
Pracuješ teď na funkci s umělou inteligencí, která pomáhá rychle pochopit aktuální počasí. Místo čtení dlouhých zpráv chce aplikace SkyCast Assistant zobrazovat jednoduché shrnutí v jediném slově. Jako proof of concept využiješ Amazon Bedrock ke kategorizaci zprávy o počasí do jednoho slova z předem definovaného seznamu.
Knihovny boto3 a json jsou předem načteny. K dispozici máš také ukázkovou zprávu o počasí uloženou v proměnné report a seznam platných kategorií categories.
Toto cvičení je součástí kurzu
Úvod do Amazon Bedrock
Pokyny k cvičení
- Vytvoř prompt, který zmíní povolené kategorie ze seznamu
categoriesa zahrne obsah proměnnéreport. - Přidej tento prompt do těla požadavku při volání modelu.
- Extrahuj shrnutí z odpovědi
responsevrácené Bedrockem.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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)}")