Meta Llama Modelle - Amazon Bedrock

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Meta Llama Modelle

In diesem Abschnitt werden die Anforderungsparameter und Antwortfelder für beschrieben Meta Llama Modelle. Verwenden Sie diese Informationen, um Inferenzrufe zu tätigen Meta Llama Modelle mit den Operationen InvokeModelund InvokeModelWithResponseStream(Streaming). Dieser Abschnitt umfasst auch Python Codebeispiele, die zeigen, wie man anruft Meta Llama Modelle. Um ein Modell in einer Inferenzoperation zu verwenden, benötigen Sie die Modell-ID für das Modell. Informationen zum Abrufen der Modell-ID finden Sie unterModell Amazon Bedrock IDs. Einige Modelle funktionieren auch mit dem Converse API. Um zu überprüfen, ob der Converse ein bestimmtes API unterstützt Meta Llama Modell, sieheUnterstützte Modelle und Modellfunktionen. Weitere Codebeispiele finden Sie unterCodebeispiele für Amazon Bedrock mit AWS SDKs.

Foundation-Modelle in Amazon Bedrock unterstützen Eingabe- und Ausgabemodalitäten, die von Modell zu Modell variieren. Um die Modalitäten zu überprüfen, die Meta Llama Modelle unterstützen, sieheUnterstützte Basismodelle in Amazon Bedrock. Um zu überprüfen, welche Amazon Bedrock Funktionen bietet Meta Llama Unterstützte Modelle finden Sie unterModellunterstützung nach Funktionen. Um zu überprüfen, welche AWS Regionen das Meta Llama Modelle sind in erhältlich, sieheModellunterstützung nach AWS Regionen.

Wenn Sie Inferenzrufe tätigen mit Meta Llama Modelle fügen Sie eine Eingabeaufforderung für das Modell hinzu. Allgemeine Informationen zum Erstellen von Eingabeaufforderungen für die von Amazon Bedrock unterstützten Modelle finden Sie unter. Schnelle technische Konzepte Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Meta Llama spezifische Informationen zur Aufforderung finden Sie in der Meta Llama schneller technischer Leitfaden.

Anmerkung

Llama 3.2 Instruct Modelle verwenden Geofencing. Das bedeutet, dass diese Modelle nicht außerhalb der AWS Regionen verwendet werden können, die für diese in der Tabelle Regionen aufgeführten Modelle verfügbar sind.

Dieser Abschnitt enthält Informationen zur Verwendung der folgenden Modelle von Meta.

  • Llama 2

  • Llama 2 Chat

  • Llama 3 Instruct

  • Llama 3.1 Instruct

  • Llama 3.2 Instruct

Anfrage und Antwort

Der Text der Anfrage wird im body Feld einer Anfrage an InvokeModeloder übergeben InvokeModelWithResponseStream.

Request

Llama 2 Chat, Llama 2, Llama 3 Instruct, Llama 3.1 Instruct, und Llama 3.2 Instruct Modelle haben die folgenden Inferenzparameter.

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

NOTE: Llama 3.2 Models erweitert images die Anforderungsstruktur, die aus einer Liste von Zeichenketten besteht. Beispiel: images: Optional[List[str]]

Die folgenden Parameter sind erforderlich.

  • prompt — (Erforderlich) Die Aufforderung, die Sie an das Modell übergeben möchten. Mit Llama 2 Chat, formatieren Sie die Konversation mit der folgenden Vorlage.

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

    Die Anweisungen zwischen den <<SYS>> Tokens bieten eine Systemaufforderung für das Modell. Im Folgenden finden Sie ein Beispiel für eine Eingabeaufforderung, die eine Systemaufforderung enthält.

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

    Weitere Informationen finden Sie unter den folgenden Topics.

Die folgenden Parameter sind optional.

  • Temperatur — Verwenden Sie einen niedrigeren Wert, um die Zufälligkeit der Antwortvariablen zu verringern.

    Standard Minimum Maximum

    0.5

    0

    1

  • top_p — Verwenden Sie einen niedrigeren Wert, um weniger wahrscheinliche Optionen zu ignorieren. Legen Sie den Wert auf 0 oder 1,0 fest, um den Parameter zu deaktivieren.

    Standard Minimum Maximum

    0.9

    0

    1

  • max_gen_len — Gibt die maximale Anzahl von Tokens an, die in der generierten Antwort verwendet werden sollen. Das Modell kürzt die Antwort, sobald der generierte Text den Wert max_gen_len überschreitet.

    Standard Minimum Maximum

    512

    1

    2048

Response

Llama 2 Chat, Llama 2, und Llama 3 Instruct Modelle geben die folgenden Felder für einen Inferenzaufruf zur Textvervollständigung zurück.

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

Weitere Informationen zu den einzelnen Feldern finden Sie weiter unten.

  • Generation — Der generierte Text.

  • prompt_token_count — Die Anzahl der Token in der Eingabeaufforderung.

  • generation_token_count — Die Anzahl der Token im generierten Text.

  • stop_reason — Der Grund, warum die Antwort aufgehört hat, Text zu generieren. Die möglichen Werte sind:

    • Stopp – Das Modell hat die Textgenerierung für die Eingabeaufforderung abgeschlossen.

    • Länge – Die Länge der Token für den generierten Text überschreitet den Wert von max_gen_len im Aufruf von InvokeModel (InvokeModelWithResponseStream, wenn Sie die Ausgabe streamen). Die Antwort wird auf max_gen_len Token gekürzt. Erwägen Sie, den Wert max_gen_len zu erhöhen und es erneut zu versuchen.

Beispiel-Code

Dieses Beispiel zeigt, wie der Aufruf von Meta Llama 2 Chat Modell 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()