Категоризація звіту базовою моделлю
Тепер ви працюєте над функцією ШІ, яка допомагає швидко зрозуміти погодні умови. Замість читання довгих звітів користувачі хочуть бачити просте, одне слово підсумку в застосунку SkyCast Assistant. Як прототип ви використовуєте Amazon Bedrock, щоб узагальнити погодний звіт до одного слова з попередньо визначеного списку.
Бібліотеки boto3 та json вже завантажено. Зразок погодного звіту збережено як report, а список допустимих categories також попередньо завантажено.
Ця вправа є частиною курсу
Вступ до Amazon Bedrock
Інструкції до вправи
- Створіть підказку, у якій згадано дозволені категорії зі списку
categories, і додайте до неїreport. - Додайте цю підказку до тіла запиту під час виклику моделі.
- Видобудьте підсумок із
response, повернутого Bedrock.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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)}")