Zacznij terazZacznij za darmo

Kategoryzacja raportu za pomocą modelu podstawowego

Pracujesz teraz nad funkcją AI, która pomaga szybko ocenić warunki pogodowe. Zamiast czytać długie raporty, użytkownicy chcą widzieć krótkie, jednowyrazowe podsumowanie w aplikacji SkyCast Assistant. Jako prototyp rozwiązania używasz Amazon Bedrock, aby skrócić raport pogodowy do jednego słowa z predefiniowanej listy.

Biblioteki boto3 i json zostały wcześniej załadowane. Przykładowy raport pogodowy zapisany jako report oraz lista dozwolonych kategorii categories są również dostępne.

To ćwiczenie jest częścią kursu

Wprowadzenie do Amazon Bedrock

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz prompt, który wymienia dozwolone kategorie z listy categories i zawiera treść zmiennej report.
  • Dodaj ten prompt do treści żądania podczas wywoływania modelu.
  • Wyodrębnij podsumowanie z odpowiedzi response zwróconej przez Bedrock.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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)}")
Edytuj i uruchom kod