ComeçarComece de graça

Categorização de relatório por foundation model

Agora você está trabalhando em um recurso de IA que ajuda a entender rapidamente as condições do tempo. Em vez de ler relatórios longos, os usuários querem um resumo simples, de uma única palavra, que apareça no app SkyCast Assistant. Como prova de conceito, você usa o Amazon Bedrock para resumir um relatório meteorológico em uma única palavra escolhida de uma lista predefinida.

As bibliotecas boto3 e json já foram carregadas. Um relatório meteorológico de exemplo salvo como report e uma lista de categories válidas também foram pré-carregados.

Este exercício faz parte do curso

Introdução ao Amazon Bedrock

Ver curso

Instruções do exercício

  • Crie um prompt que mencione as categorias permitidas da lista categories e inclua o report.
  • Adicione esse prompt ao corpo da solicitação ao invocar o modelo.
  • Extraia o resumo da response retornada pelo Bedrock.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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)}")
Editar e executar o código