Modelos de Meta Llama - Amazon Bedrock

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Modelos de Meta Llama

En esta sección se describen los parámetros de solicitud y los campos de respuesta de los modelos de Meta Llama. Utilice esta información para realizar llamadas de inferencia a Meta Llama los modelos con las operaciones InvokeModely InvokeModelWithResponseStream(transmisión). En esta sección también se incluyen ejemplos de código de Python que muestran cómo llamar a los modelos de Meta Llama. Para utilizar un modelo en una operación de inferencia, necesitará el ID del modelo. Para obtener el ID del modelo, consulte Modelos fundacionales compatibles en Amazon Bedrock. Algunos modelos también funcionan con la ConverseAPI. Para comprobar si la Converse API es compatible con un Meta Llama modelo específico, consulteModelos y características del modelo compatibles. Para obtener ejemplos de código, consulte Ejemplos de código para Amazon Bedrock mediante AWS SDKs.

Los modelos fundacionales de Amazon Bedrock admiten modalidades de entrada y salida, que varían de un modelo a otro. Para comprobar las modalidades que admiten los modelos de Meta Llama, consulte Modelos fundacionales compatibles en Amazon Bedrock. Para comprobar qué características de Amazon Bedrock son compatibles con los modelos de Meta Llama, consulte Modelos fundacionales compatibles en Amazon Bedrock. Para comprobar en qué AWS regiones están disponibles esos Meta Llama modelos, consulteModelos fundacionales compatibles en Amazon Bedrock.

Cuando realiza llamadas de inferencia con modelos de Meta Llama, usted incluye una petición para el modelo. Para obtener información general sobre cómo crear peticiones para los modelos compatibles con Amazon Bedrock, consulte Conceptos de ingeniería de peticiones. Para obtener información específica sobre las peticiones a Meta Llama, consulte la guía de ingeniería de peticiones de Meta Llama.

nota

Llama 3.2 Instructy Llama 3.3 Instruct los modelos utilizan el geocercado. Esto significa que estos modelos no se pueden utilizar fuera de las AWS regiones disponibles para los modelos que figuran en la tabla de regiones.

En esta sección se proporciona información sobre el uso de los siguientes modelos de Meta.

  • Llama 3 Instruct

  • Llama 3.1 Instruct

  • Llama 3.2 Instruct

  • Llama 3.3 Instruct

  • Llama 4 Instruct

Solicitud y respuesta

El cuerpo de la solicitud se pasa en el body campo de una solicitud a InvokeModelo InvokeModelWithResponseStream.

nota

No puedes usar las operaciones InvokeModelWithResponseStreamor ConverseStream(de streaming) conLlama 4 Instruct.

Request

Los Llama 4 Instruct modelos Llama 3 InstructLlama 3.1 Instruct,Llama 3.2 Instruct, y tienen los siguientes parámetros de inferencia:

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

NOTA: Los modelos Llama 3.2 y posteriores añaden images elementos a la estructura de solicitudes, que es una lista de cadenas. Ejemplo: images: Optional[List[str]]

Los siguientes parámetros son obligatorios:

  • prompt: (obligatorio) es el mensaje que desea pasar al modelo. Para obtener resultados óptimos, formatee la conversación con la siguiente plantilla.

    <|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|>

    Ejemplo de plantilla con indicador del sistema

    El siguiente es un ejemplo de petición que incluye una petición del 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|>

    Ejemplo de conversación en varios turnos

    El siguiente es un ejemplo de mensaje de una conversación en varios 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|>

    Ejemplo de plantilla con indicador del sistema

    Para obtener más información, consulte MetaLlama 3.

Los siguientes parámetros son opcionales:

  • temperature: utilice un valor bajo para reducir la asignación al azar de la respuesta.

    Predeterminado/a Mínimo Máximo

    0,5

    0

    1

  • top_p: utilice un valor bajo para ignorar las opciones menos probables. Configúrelo en 0 o 1,0 para deshabilitarlo.

    Predeterminado/a Mínimo Máximo

    0.9

    0

    1

  • max_gen_len: especifique la cantidad máxima de tokens a usar en la respuesta generada. El modelo trunca la respuesta una vez que el texto generado excede max_gen_len.

    Predeterminado/a Mínimo Máximo

    512

    1

    2048

Response

Los Llama 3 Instruct modelos devuelven los siguientes campos para una llamada de inferencia para completar el texto.

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

A continuación, se proporciona más información sobre cada campo.

  • generation: es el texto generado.

  • prompt_token_count: es el número de tokens en la petición.

  • generation_token_count: es el número de tokens en el texto generado.

  • stop_reason: motivo por el que la respuesta ha dejado de generar texto. Los valores posibles son los siguientes:

    • detener: el modelo ha terminado de generar texto para la solicitud de entrada.

    • longitud: la longitud de los símbolos del texto generado supera el valor de max_gen_len en la llamada a InvokeModel (InvokeModelWithResponseStream, si está transmitiendo la salida). La respuesta se trunca en tokens max_gen_len. Considere la posibilidad de aumentar el valor de max_gen_len y volver a intentarlo.

Código de ejemplo

En este ejemplo se muestra cómo llamar al 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ón de 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)

En este ejemplo se muestra cómo controlar la longitud de generación mediante Llama 3 Instruct modelos. Para obtener respuestas o resúmenes detallados, ajusta `max_gen_len` e incluye instrucciones específicas en el mensaje.