Modelli Meta Llama - Amazon Bedrock

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Modelli Meta Llama

In questa sezione vengono descritti i parametri di richiesta e i campi di risposta per i modelli Meta Llama. Utilizza queste informazioni per effettuare chiamate di inferenza ai modelli Meta Llama con le operazioni InvokeModel e InvokeModelWithResponseStream (streaming). Questa sezione include anche esempi di codice Python che mostrano come chiamare i modelli Meta Llama. Per utilizzare un modello in un’operazione di inferenza, è necessario l’ID modello per il modello. Per ottenere l’ID modello, consulta Modelli di fondazione supportati in Amazon Bedrock. Alcuni modelli funzionano anche con l’API Converse. Per verificare se l’API Converse supporta un modello Meta Llama specifico, consulta Modelli e funzionalità del modello supportati. Per ulteriori esempi di codice, consulta Esempi di codice per l'utilizzo di Amazon Bedrock AWS SDKs.

I modelli di fondazione in Amazon Bedrock supportano modalità di input e output, che variano da modello a modello. Per verificare le modalità supportate dai modelli Meta Llama, consulta Modelli di fondazione supportati in Amazon Bedrock. Per verificare quali funzionalità di Amazon Bedrock sono supportate dai modelli Meta Llama, consulta Modelli di fondazione supportati in Amazon Bedrock. Per verificare in quali Regioni AWS sono disponibili i modelli Meta Llama, consulta Modelli di fondazione supportati in Amazon Bedrock.

Quando effettui chiamate di inferenza con modelli Meta Llama, includi un prompt per il modello. Per informazioni generali sulla creazione di prompt per i modelli supportati da Amazon Bedrock, consulta Concetti di progettazione dei prompt. Per informazioni sui prompt specifiche di Meta Llama, consulta la Guida alla progettazione dei prompt Meta Llama.

Nota

I modelli Llama 3.2 Instruct e Llama 3.3 Instruct utilizzano il geofencing. Questo significa che non possono essere utilizzati al di fuori delle Regioni AWS disponibili per tali modelli elencate nella tabella Regioni.

In questa sezione vengono fornite informazioni per l’utilizzo dei seguenti modelli di Meta.

  • Llama 3 Instruct

  • Llama 3.1 Instruct

  • Llama 3.2 Instruct

  • Llama 3.3 Instruct

  • Llama 4 Instruct

Richiesta e risposta

Il corpo della richiesta viene passato nel campo body di una richiesta a InvokeModel o InvokeModelWithResponseStream.

Nota

Non è possibile utilizzare le operazioni InvokeModelWithResponseStream o ConverseStream (streaming) con Llama 4 Instruct.

Request

I modelli Llama 3 Instruct, Llama 3.1 Instruct, Llama 3.2 Instruct e Llama 4 Instruct hanno i seguenti parametri di inferenza:

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

NOTA: i modelli Llama 3.2 e versioni successive aggiungono images alla struttura della richiesta, che consiste in un elenco di stringhe. Ad esempio: images: Optional[List[str]]

I seguenti sono parametri obbligatori:

  • prompt: (obbligatorio) il prompt che desideri passare al modello. Per risultati ottimali, formatta la conversazione con il modello indicato di seguito.

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

    Modello di esempio con prompt di sistema

    Di seguito è riportato un esempio di prompt che include un prompt di 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|>

    Esempio di conversazione multi-turno

    Di seguito è riportato un esempio di prompt di conversazione multi-turno.

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

    Modello di esempio con prompt di sistema

    Per ulteriori informazioni, consulta Meta Llama 3.

I seguenti sono parametri opzionali:

  • temperature: utilizza un valore più basso per ridurre la randomizzazione nella risposta.

    Predefinita Minimo Massimo

    0,5

    0

    1

  • top_p: utilizza un valore più basso per ignorare le opzioni meno probabili. Imposta 0 o 1,0 per disabilitare questa funzionalità.

    Predefinita Minimo Massimo

    0.9

    0

    1

  • max_gen_len: specifica il numero massimo di token da utilizzare nella risposta generata. Il modello tronca la risposta se il testo generato supera max_gen_len.

    Predefinita Minimo Massimo

    512

    1

    2048

Response

I modelli Llama 3 Instruct restituiscono i campi indicati di seguito per effettuare chiamate di inferenza per il completamento del testo.

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

Di seguito sono fornite ulteriori informazioni su ciascun campo.

  • generation: il testo generato.

  • prompt_token_count: il numero di token nel prompt.

  • generation_token_count: il numero di token nel testo generato.

  • stop_reason: il motivo per cui la risposta ha smesso di generare testo. I valori possibili sono:

    • stop: il modello ha terminato la generazione del testo per il prompt di input.

    • length: la lunghezza dei token per il testo generato supera max_gen_len nella chiamata a InvokeModel (InvokeModelWithResponseStream, nel caso di streaming dell'output). La risposta viene troncata in base al valore max_gen_len specificato per i token. Valuta la possibilità di aumentare il valore di max_gen_len e riprovare.

Codice di esempio

Questo esempio mostra come chiamare il modello 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 Regione 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)

Questo esempio mostra come controllare la lunghezza della generazione tramite i modelli Llama 3 Instruct. Per risposte o riepiloghi dettagliati, modifica “max_gen_len” e includi istruzioni specifiche nel prompt.