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 ConverseAPI. Para verificar se a Converse API é compatível com um Meta Llama modelo específico, consulteModelos compatíveis e recursos do modelo. 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

Llama 3.2 Instructe Llama 3.3 Instruct os modelos usam geofencing. 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 Llama 4 Instruct modelosLlama 3 Instruct,Llama 3.1 Instruct,Llama 3.2 Instruct, e têm os seguintes parâmetros de inferência:

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

NOTA: O Llama 3.2 e os modelos posteriores são adicionados images à estrutura de solicitação, que é uma lista de strings. Example: 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 em vários turnos

    Veja a seguir um exemplo de uma conversa em 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 Llama 3 Instruct modelos retornam os seguintes campos para uma chamada de inferência de conclusão 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 Llama 3 Instructmodelo.

# 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 Llama 3 Instruct modelos. Para obter respostas detalhadas ou resumos, ajuste `max_gen_len` e inclua instruções específicas em seu prompt.