View a markdown version of this page

Modelos Llama da Meta - Amazon Bedrock

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Modelos Llama da Meta

Esta seção descreve os parâmetros de solicitação e os campos de resposta dos modelos Llama da Meta. Use essas informações para fazer chamadas de inferência para Meta Llama modelos com as operações InvokeModeland InvokeModelWithResponseStream(streaming). Esta seção também inclui exemplos de código do Python que mostram como chamar modelos Llama da Meta. Para usar um modelo em uma operação de inferência, o ID do modelo é necessário. Para obter o ID do modelo, consulte Modelos de base compatíveis no Amazon Bedrock. Alguns modelos também funcionam com a API Converse. Para verificar se um Meta Llama modelo específico oferece suporte a um recurso, consulte os modelos em um piscar de olhos. Para obter mais exemplos de código, consulte Exemplos de código para o Amazon Bedrock usando AWS SDKs.

Os modelos de base no Amazon Bedrock são compatíveis com as modalidades de entrada e saída, que variam de modelo para modelo. Para verificar as modalidades compatíveis com os modelos Llama da Meta, consulte Modelos de base compatíveis no Amazon Bedrock. Para verificar quais recursos do Amazon Bedrock são compatíveis com os modelos Llama da Meta, consulte Modelos de base compatíveis no Amazon Bedrock. Para verificar em quais AWS regiões Meta Llama esses modelos estão disponíveis, consulteModelos de base compatíveis no Amazon Bedrock.

Ao fazer chamadas de inferência com modelos Llama da Meta, inclua um prompt para o modelo. Para obter informações gerais sobre como criar prompts para os modelos compatíveis com o Amazon Bedrock, consulte Conceitos de engenharia de prompts. Para obter informações de prompts específicos do Llama da Meta, consulte o MetaLlama prompt engineering guide.

nota

Os modelos Llama 3.2 Instruct e Llama 3.3 Instruct usam cercas geográficas. Isso significa que esses modelos não podem ser usados fora das AWS regiões disponíveis para esses modelos listados na tabela Regiões.

Esta seção fornece informações sobre como usar os modelos da Meta a seguir.

  • Llama 3 Instruct

  • Llama 3.1 Instruct

  • Llama 3.2 Instruct

  • Llama 3.3 Instruct

  • Llama 4 Instruct

Solicitação e reposta

O corpo da solicitação é passado no body campo de uma solicitação para InvokeModelou InvokeModelWithResponseStream.

nota

Você não pode usar as operações InvokeModelWithResponseStreamou ConverseStream(streaming) comLlama 4 Instruct.

Request

Os modelos Llama 3 Instruct, Llama 3.1 Instruct, Llama 3.2 Instruct e Llama 4 Instruct têm os seguintes parâmetros de inferência:

{ "prompt": string, "temperature": float, "top_p": float, "max_gen_len": int }

OBSERVAÇÃO: os modelos Llama 3.2 e posteriores adicionam images à estrutura da solicitação, que é uma lista de strings. Exemplo: images: Optional[List[str]]

Os seguintes parâmetros são obrigatórios:

  • prompt: (obrigatório) o prompt que você deseja passar para o modelo. Para obter os melhores resultados, formate a conversa com o modelo a seguir.

    <|begin_of_text|><|start_header_id|>user<|end_header_id|> What can you help me with?<|eot_id|><|start_header_id|>assistant<|end_header_id|>

    Modelo de exemplo com prompt do sistema

    Veja a seguir um exemplo de prompt que inclui um prompt do sistema.

    <|begin_of_text|><|start_header_id|>system<|end_header_id|> You are a helpful AI assistant for travel tips and recommendations<|eot_id|><|start_header_id|>user<|end_header_id|> What can you help me with?<|eot_id|><|start_header_id|>assistant<|end_header_id|>

    Exemplo de conversa de vários turnos

    Veja a seguir um exemplo de prompt de uma conversa de vários turnos.

    <|begin_of_text|><|start_header_id|>user<|end_header_id|> What is the capital of France?<|eot_id|><|start_header_id|>assistant<|end_header_id|> The capital of France is Paris!<|eot_id|><|start_header_id|>user<|end_header_id|> What is the weather like in Paris?<|eot_id|><|start_header_id|>assistant<|end_header_id|>

    Modelo de exemplo com prompt do sistema

    Para obter mais informações, consulte MetaLlama 3.

Veja os seguintes parâmetros opcionais:

  • temperature: use um valor menor para reduzir a aleatoriedade na resposta.

    Padrão Mínimo Máximo

    0,5

    0

    1

  • top_p: use um valor menor para ignorar opções menos prováveis. Defina como 0 ou 1,0 para desabilitar.

    Padrão Mínimo Máximo

    0.9

    0

    1

  • max_gen_len: especifique o número máximo de tokens a serem usados na resposta gerada. O modelo trunca a resposta quando o texto gerado excede max_gen_len.

    Padrão Mínimo Máximo

    512

    1

    2048

Response

Os modelos Llama 3 Instruct exibem os campos a seguir para uma chamada de inferência de preenchimento de texto.

{ "generation": "\n\n<response>", "prompt_token_count": int, "generation_token_count": int, "stop_reason" : string }

Mais informações sobre cada campo são fornecidas a seguir.

  • generation: o texto gerado.

  • prompt_token_count: o número de tokens no prompt.

  • generation_token_count: o número de tokens no texto gerado.

  • stop_reason: o motivo pelo qual a resposta parou de gerar texto. Os valores possíveis são:

    • interromper: o modelo terminou de gerar texto para o prompt de entrada.

    • comprimento: o comprimento dos tokens do texto gerado excede o valor de max_gen_len na chamada para InvokeModel (InvokeModelWithResponseStream, se você estiver transmitindo uma saída). A resposta é truncada em tokens max_gen_len. Considere aumentar o valor de max_gen_len e tente novamente.

Código de exemplo

Este exemplo mostra como chamar o modelo Llama 3 Instruct.

# Use the native inference API to send a text message to Meta Llama 3. import boto3 import json from botocore.exceptions import ClientError # Create a Bedrock Runtime client in the Região da AWS of your choice. client = boto3.client("bedrock-runtime", region_name="us-west-2") # Set the model ID, e.g., Llama 3 70b Instruct. model_id = "meta.llama3-70b-instruct-v1:0" # Define the prompt for the model. prompt = "Describe the purpose of a 'hello world' program in one line." # Embed the prompt in Llama 3's instruction format. formatted_prompt = f""" <|begin_of_text|><|start_header_id|>user<|end_header_id|> {prompt} <|eot_id|> <|start_header_id|>assistant<|end_header_id|> """ # Format the request payload using the model's native structure. native_request = { "prompt": formatted_prompt, "max_gen_len": 512, "temperature": 0.5, } # Convert the native request to JSON. request = json.dumps(native_request) try: # Invoke the model with the request. response = client.invoke_model(modelId=model_id, body=request) except (ClientError, Exception) as e: print(f"ERROR: Can't invoke '{model_id}'. Reason: {e}") exit(1) # Decode the response body. model_response = json.loads(response["body"].read()) # Extract and print the response text. response_text = model_response["generation"] print(response_text)

Este exemplo mostra como controlar a duração da geração usando modelos Llama 3 Instruct. Para obter respostas detalhadas ou resumos, ajuste “max_gen_len” e inclua instruções específicas no prompt.