Meta Llama modelos - 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.

Meta Llama modelos

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

Los modelos básicos de Amazon Bedrock admiten modalidades de entrada y salida, que varían de un modelo a otro. Para comprobar las modalidades que Meta Llama modelos compatibles, consulteModelos fundacionales compatibles en Amazon Bedrock. Para comprobar qué Amazon Bedrock incluye Meta Llama modelos compatibles, consulteSoporte de modelos por función. Para comprobar qué AWS regiones Meta Llama los modelos están disponibles enSoporte de modelos por AWS región.

Cuando realiza llamadas de inferencia con Meta Llama modelos, se incluye un mensaje para el modelo. Para obtener información general sobre la creación de mensajes para los modelos compatibles con Amazon Bedrock, consulte. Conceptos de ingeniería rápidos En Meta Llama para obtener información específica sobre las solicitudes, consulte la Meta Llama guía de ingeniería rápida.

nota

Llama 3.2 Instruct los modelos usan geofencing. 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 2

  • Llama 2 Chat

  • Llama 3 Instruct

  • Llama 3.1 Instruct

  • Llama 3.2 Instruct

Solicitud y respuesta

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

Request

Llama 2 Chat, Llama 2, Llama 3 Instruct, Llama 3.1 Instruct, y Llama 3.2 Instruct los modelos tienen los siguientes parámetros de inferencia.

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

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

Los siguientes parámetros son obligatorios.

  • prompt: (obligatorio) El mensaje que desea pasar al modelo. Con Llama 2 Chat, formatea la conversación con la siguiente plantilla.

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

    Las instrucciones entre los <<SYS>> símbolos proporcionan un mensaje de sistema para el modelo. El siguiente es un ejemplo de mensaje que incluye un mensaje del sistema.

    <s>[INST] <<SYS>> You are a helpful, respectful and honest assistant. Always answer as helpfully as possible, while being safe. Your answers should not include any harmful, unethical, racist, sexist, toxic, dangerous, or illegal content. Please ensure that your responses are socially unbiased and positive in nature. If a question does not make any sense, or is not factually coherent, explain why instead of answering something not correct. If you don't know the answer to a question, please don't share false information. <</SYS>> There's a llama in my garden What should I do? [/INST]

    Para obtener más información, consulte lo siguiente.

Los siguientes son parámetros opcionales.

  • temperatura: utilice un valor más bajo para disminuir la aleatoriedad de la respuesta.

    Predeterminado Mínimo Máximo

    0,5

    0

    1

  • top_p — Usa un valor más bajo para ignorar las opciones menos probables. Configúrelo en 0 o 1,0 para deshabilitarlo.

    Predeterminado Mínimo Máximo

    0.9

    0

    1

  • max_gen_len: especifique la cantidad máxima de fichas que se utilizarán en la respuesta generada. El modelo trunca la respuesta una vez que el texto generado excede max_gen_len.

    Predeterminado Mínimo Máximo

    512

    1

    2048

Response

Llama 2 Chat, Llama 2, y Llama 3 Instruct los 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.

  • generación: el texto generado.

  • prompt_token_count: el número de fichas de la solicitud.

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

  • stop_reason: el motivo por el que la respuesta dejó 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 Meta Llama 2 Chat Modelo 13B.

# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 """ Shows how to generate text with Meta Llama 2 Chat (on demand). """ import json import logging import boto3 from botocore.exceptions import ClientError logger = logging.getLogger(__name__) logging.basicConfig(level=logging.INFO) def generate_text(model_id, body): """ Generate an image using Meta Llama 2 Chat on demand. Args: model_id (str): The model ID to use. body (str) : The request body to use. Returns: response (JSON): The text that the model generated, token information, and the reason the model stopped generating text. """ logger.info("Generating image with Meta Llama 2 Chat model %s", model_id) bedrock = boto3.client(service_name='bedrock-runtime') response = bedrock.invoke_model( body=body, modelId=model_id) response_body = json.loads(response.get('body').read()) return response_body def main(): """ Entrypoint for Meta Llama 2 Chat example. """ logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s") model_id = "meta.llama2-13b-chat-v1" prompt = """<s>[INST] <<SYS>> You are a helpful, respectful and honest assistant. Always answer as helpfully as possible, while being safe. Your answers should not include any harmful, unethical, racist, sexist, toxic, dangerous, or illegal content. Please ensure that your responses are socially unbiased and positive in nature. If a question does not make any sense, or is not factually coherent, explain why instead of answering something not correct. If you don't know the answer to a question, please don't share false information. <</SYS>> There's a llama in my garden What should I do? [/INST]""" max_gen_len = 128 temperature = 0.1 top_p = 0.9 # Create request body. body = json.dumps({ "prompt": prompt, "max_gen_len": max_gen_len, "temperature": temperature, "top_p": top_p }) try: response = generate_text(model_id, body) print(f"Generated Text: {response['generation']}") print(f"Prompt Token count: {response['prompt_token_count']}") print(f"Generation Token count: {response['generation_token_count']}") print(f"Stop reason: {response['stop_reason']}") except ClientError as err: message = err.response["Error"]["Message"] logger.error("A client error occurred: %s", message) print("A client error occured: " + format(message)) else: print( f"Finished generating text with Meta Llama 2 Chat model {model_id}.") if __name__ == "__main__": main()