Jamba-Modelle von AI21 Labs - 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.

Jamba-Modelle von AI21 Labs

Dieser Abschnitt enthält Inferenzparameter und ein Codebeispiel für die Verwendung von Jamba-Modellen von AI21 Labs.

Pflichtfelder

Die Jamba-Modelle von AI21 Labs unterstützen die folgenden Pflichtfelder:

  • Nachrichten (messages) – Die vorherigen Nachrichten in diesem Chat, von der ältesten (Index 0) bis zur neuesten. Die Liste muss mindestens eine Benutzer- oder Assistentennachricht enthalten. Schließen Sie sowohl Benutzereingaben als auch Systemantworten ein. Die maximale Gesamtgröße für die Liste beträgt etwa 256 000 Token. Jede Nachricht umfasst die folgenden Mitglieder:

  • Rolle (role) – Die Rolle des Nachrichtenautors. Einer der folgenden Werte:

    • Benutzer (user) – Vom Benutzer bereitgestellte Eingabe. Alle hier angegebenen Anweisungen, die im Widerspruch zu den Anweisungen im system-Prompt stehen, haben Vorrang vor den Anweisungen im system-Prompt.

    • Assistent (assistant) – Vom Modell generierte Antwort

    • System (system) – Erste Anweisungen an das System mit allgemeinen Hinweisen zu Tonfall und Stimme der generierten Nachricht. Eine erste Systemnachricht ist optional, wird jedoch empfohlen, um Hinweise zum Tonfall des Chats zu geben. Zum Beispiel: „Sie sind ein hilfreicher Chatbot mit einem Hintergrund in Geowissenschaften und einem charmanten französischen Akzent.“

  • Inhalt (content) – Der Inhalt der Nachricht

Inferenzparameter

Jamba-Modelle von AI21 Labs unterstützen die folgenden Inferenzparameter.

Zufälligkeit und Diversität

Jamba-Modelle von AI21 Labs unterstützen in der Regel die folgenden Parameter, um die Zufälligkeit und Diversität der Antwort zu kontrollieren.

  • Temperatur (temperature) – Wie viel Variation bei jeder Antwort angegeben werden soll. Wenn Sie diesen Wert auf 0 einstellen, wird garantiert, dass jedes Mal dieselbe Antwort auf dieselbe Frage gegeben wird. Ein höherer Wert führt zu mehr Variation. Ändert die Distribution, aus der Token erfasst werden. Standard: 1,0, Wertebereich: 0,0–2,0

  • Top P (top_p) – Beschränkt den Pool der nächsten Token in jedem Schritt auf das oberste N-Perzentil der möglichen Token, wobei 1,0 den Pool aller möglichen Token und 0,01 den Pool nur der wahrscheinlichsten nächsten Token bedeutet.

Länge

Jamba-Modelle von AI21 Labs unterstützen die folgenden Parameter, um die Länge der generierten Antwort zu steuern.

  • Max. Dauer des Abschlusses (max_tokens) – Die maximale Anzahl von Token, die für jede generierte Antwortnachricht zulässig sind. In der Regel ist es am besten, die Länge der Ausgabe zu begrenzen, indem Sie im System-Prompt eine Längenbeschränkung angeben (z. B. „Beschränken Sie die Antworten auf drei Sätze“). Standard: 4 096, Wertebereich: 0–4 096

  • Sequenzen beenden (stop) – Beendet die Nachricht, wenn das Modell eine dieser Zeichenfolgen generiert. Die Stoppsequenz ist nicht in der generierten Nachricht enthalten. Jede Sequenz kann bis zu 64 KB lang sein und Zeilenumbrüche als\n Zeichen enthalten.

    Beispiele:

    • Einfache Stoppzeichenfolge mit einem Wort und einem Punkt: „Affen.“

    • Mehrere Stoppzeichenfolgen und eine neue Zeile: [„Katze“, „Hund“, „ .“, „####“, "\n„]

  • Anzahl der Antworten (n) – Wie viele Chat-Antworten generiert werden sollen. Hinweise n muss 1 sein, damit Antworten gestreamt werden können. Wenn n auf einen Wert größer als 1 festgelegt wird, schlägt die Einstellung temperature=0 immer fehl, da es sich bei allen Antworten garantiert um Duplikate handelt. Standard: 1, Wertebereich: 1–16

Wiederholungen

Jamba-Modelle von AI21 Labs unterstützen die folgenden Parameter, um Wiederholungen in der generierten Antwort zu steuern.

  • Häufigkeitsstrafe (frequency_penalty) – Reduzieren Sie die Häufigkeit wiederholter Wörter in einer einzelnen Antwortnachricht, indem Sie diese Zahl erhöhen. Diese Strafe nimmt allmählich zu, je öfter ein Wort während der Antwortgenerierung vorkommt. Bei der Einstellung 2,0 wird eine Zeichenfolge mit wenigen, wenn überhaupt, sich wiederholenden Wörtern erzeugt.

  • Präsenzstrafe (presence_penalty) – Reduzieren Sie die Häufigkeit wiederholter Wörter in einer einzelnen Nachricht, indem Sie diese Zahl erhöhen. Im Gegensatz zur Häufigkeitsstrafe ist die Präsenzstrafe immer gleich, egal wie oft ein Wort vorkommt.

Textfeld für die Modellaufrufanforderung

Wenn Sie mit einem Modell von AI21 Labs einen InvokeModel- oder InvokeModelWithResponseStream-Aufruf ausführen, füllen Sie das body-Feld mit einem JSON-Objekt aus, das dem unten stehenden entspricht. Geben Sie die Eingabeaufforderung in das Feld prompt ein.

{ "messages": [ { "role":"system", // Non-printing contextual information for the model "content":"You are a helpful history teacher. You are kind and you respond with helpful content in a professional manner. Limit your answers to three sentences. Your listener is a high school student." }, { "role":"user", // The question we want answered. "content":"Who was the first emperor of rome?" } ], "n":1 // Limit response to one answer }

Textfeld für die Modellaufruf-Antwort

Informationen zum Format des Felds body in der Antwort finden Sie unter https://docs.ai21.com/reference/jamba-instruct-api#response-details.

Codebeispiel

Dieses Beispiel zeigt, wie das Jamba-Instruct-Modell von AI21 Labs aufgerufen wird.

invoke_model

import boto3 import json bedrock = session.client('bedrock-runtime', 'us-east-1') response = bedrock.invoke_model( modelId='ai21.jamba-instruct-v1:0', body=json.dumps({ 'messages': [ { 'role': 'user', 'content': 'which llm are you?' } ], }) ) print(json.dumps(json.loads(response['body']), indent=4))

Converse

import boto3 import json bedrock = session.client('bedrock-runtime', 'us-east-1') response = bedrock.converse( modelId='ai21.jamba-instruct-v1:0', messages=[ { 'role': 'user', 'content': [ { 'text': 'which llm are you?' } ] } ] ) print(json.dumps(json.loads(response['body']), indent=4))

Codebeispiel für Jamba 1.5 Large

Dieses Beispiel zeigt, wie das Modell Jamba 1.5 Large von AI21 Labs aufgerufen wird.

invoke_model

POST https://bedrock-runtime.us-east-1.amazonaws.com/model/ai21.jamba-1-5-mini-v1:0/invoke-model HTTP/1.1 { "messages": [ { "role": "system", "content": "You are a helpful chatbot with a background in earth sciences and a charming French accent." }, { "role": "user", "content": "What are the main causes of earthquakes?" } ], "max_tokens": 512, "temperature": 0.7, "top_p": 0.9, "stop": ["###"], "n": 1 }