Modèles Meta Llama - Amazon Bedrock

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Modèles Meta Llama

Cette section décrit les paramètres de demande et les champs de réponse pour les modèles Meta Llama. Utilisez ces informations pour effectuer des appels d’inférence aux modèles Meta Llama à l’aide des opérations InvokeModel et InvokeModelWithResponseStream (streaming). Cette section inclut également des exemples de code Python qui montrent comment appeler les modèles Meta Llama. Pour utiliser un modèle dans une opération d’inférence, vous avez besoin de l’ID du modèle. Pour obtenir l’ID du modèle, consultez Modèles de fondation pris en charge dans Amazon Bedrock. Certains modèles fonctionnent également avec l’API Converse. Pour vérifier si l’API Converse prend en charge un modèle Meta Llama spécifique, consultez Modèles et fonctionnalités des modèles pris en charge. Pour plus d’exemples de code, consultez Exemples de code pour Amazon Bedrock utilisant AWS SDKs.

Les modèles de fondation d’Amazon Bedrock prennent en charge les modalités d’entrée et de sortie, qui varient d’un modèle à l’autre. Pour vérifier les modalités prises en charge par les modèles Meta Llama, consultez Modèles de fondation pris en charge dans Amazon Bedrock. Pour vérifier quelles fonctionnalités Amazon Bedrock sont prises en charge par les modèles Meta Llama, consultez Modèles de fondation pris en charge dans Amazon Bedrock. Pour vérifier dans quelles régions AWS les modèles Meta Llama sont disponibles, consultez Modèles de fondation pris en charge dans Amazon Bedrock.

Lorsque vous effectuez des appels d’inférence avec les modèles Meta Llama, vous incluez une invite pour le modèle. Pour plus d’informations générales sur la création d’invites pour les modèles pris en charge par Amazon Bedrock, consultez Concepts d’ingénierie de requête. Pour obtenir des informations sur les invites spécifiques à Meta Llama, consultez le guide d’ingénierie de requête MetaLlama.

Note

Les modèles Llama 3.2 Instruct et Llama 3.3 Instruct utilisent le géorepérage. Cela signifie que ces modèles ne peuvent pas être utilisés en dehors des régions AWS disponibles pour les modèles répertoriés dans le tableau des régions.

Cette section fournit des informations sur l’utilisation des modèles suivants de Meta.

  • Llama 3 Instruct

  • Llama 3.1 Instruct

  • Llama 3.2 Instruct

  • Llama 3.3 Instruct

  • Llama 4 Instruct

Demande et réponse

Le corps de la demande est transmis dans le champ body d’une demande adressée à InvokeModel ou InvokeModelWithResponseStream.

Note

Vous ne pouvez pas utiliser les opérations InvokeModelWithResponseStream ou ConverseStream (streaming) avec Llama 4 Instruct.

Request

Les modèles Llama 3 Instruct, Llama 3.1 Instruct, Llama 3.2 Instruct et Llama 4 Instruct possèdent les paramètres d’inférence suivants :

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

REMARQUE : Llama 3.2 et les modèles ultérieurs ajoutent images à la structure de requête, qui est une liste de chaînes. Exemple : images: Optional[List[str]]

Les paramètres suivants sont obligatoires :

  • prompt : (obligatoire) invite que vous souhaitez transmettre au modèle. Pour des résultats optimaux, formatez la conversation à l’aide du modèle suivant.

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

    Exemple de modèle avec invite système

    Voici un exemple d’invite qui inclut une invite système.

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

    Exemple de conversation complexe

    Voici un exemple d’invite d’une conversation complexe.

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

    Exemple de modèle avec invite système

    Pour plus d’informations, consultez Meta Llama 3.

Les paramètres suivants sont facultatifs :

  • temperature : utilisez une valeur inférieure pour réduire le caractère aléatoire de la réponse.

    Par défaut Minimum Maximum

    0.5

    0

    1

  • top_p : utilisez une valeur inférieure pour ignorer les options les moins probables. Réglez cette option sur 0 ou 1,0 pour la désactiver.

    Par défaut Minimum Maximum

    0.9

    0

    1

  • max_gen_len : spécifiez le nombre maximum de jetons à utiliser dans la réponse générée. Le modèle tronque la réponse une fois que le texte généré dépasse max_gen_len.

    Par défaut Minimum Maximum

    512

    1

    2048

Response

Les modèles Llama 3 Instruct renvoient les champs suivants pour un appel d’inférence de complétion de texte.

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

Vous trouverez plus d'informations sur chaque champ ci-dessous.

  • generation : texte généré.

  • prompt_token_count : nombre de jetons figurant dans l’invite.

  • generation_token_count : nombre de jetons dans le texte généré.

  • stop_reason : raison pour laquelle la réponse a cessé de générer du texte. Les valeurs possibles sont :

    • arrêt : le modèle a fini de générer le texte pour l’invite d’entrée.

    • longueur : la longueur des jetons pour le texte généré dépasse la valeur de max_gen_len dans l’appel InvokeModel (InvokeModelWithResponseStream, si vous diffusez une sortie). La réponse est tronquée en fonction du nombre de jetons défini dans max_gen_len. Envisagez d’augmenter la valeur de max_gen_len et de réessayer.

Exemple de code

Cet exemple montre comment appeler le modèle 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 Région 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)

Cet exemple montre comment contrôler la durée de la génération à l’aide des modèles Llama 3 Instruct. Pour obtenir des réponses ou des résumés détaillés, ajustez `max_gen_len` et incluez des instructions spécifiques dans votre invite.