IniziaInizia gratis

Classificazione dei report con modelli foundation

Ora stai lavorando a una funzionalità di AI che aiuta a capire rapidamente le condizioni meteo. Invece di leggere lunghi report, gli utenti vogliono che nella loro app SkyCast Assistant compaia un riepilogo semplice di una sola parola. Come prova di concetto, usi Amazon Bedrock per riassumere un bollettino meteo in una singola parola scelta da un elenco predefinito.

Le librerie boto3 e json sono già caricate. Un esempio di bollettino meteo salvato come report e un elenco di categories valide sono stati anch’essi precaricati.

Questo esercizio fa parte del corso

Introduzione ad Amazon Bedrock

Visualizza il corso

Istruzioni dell'esercizio

  • Crea un prompt che menzioni le categorie consentite dalla lista categories e includa il report.
  • Aggiungi questo prompt al corpo della richiesta quando invochi il modello.
  • Estrai il riepilogo dalla response restituita da Bedrock.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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="amazon.nova-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)}")
Modifica ed esegui il codice