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 AI21 Labs Jamba
Cette section fournit les paramètres d’inférence et un exemple de code pour l’utilisation des modèles AI21 Labs Jamba.
Rubriques
Champs obligatoires
Les modèles AI21 Labs Jamba prennent en charge les champs obligatoires suivants :
-
Messages (
messages) : les messages précédents de cette discussion, du plus ancien (index 0) au plus récent. La liste doit contenir au moins un message d’utilisateur ou d’assistant. Incluent à la fois les entrées de l’utilisateur et les réponses du système. La taille totale maximale de la liste est d’environ 256 000 jetons. Chaque message contient les membres suivants : -
Rôle (
role) : rôle de l’auteur du message. L’une des valeurs suivantes :-
Utilisateur (
user) : entrée fournie par l’utilisateur. Toutes les instructions données ici qui sont en conflit avec les instructions données dans l’invitesystemont priorité sur les instructions de l’invitesystem. -
Assistant (
assistant) : réponse générée par le modèle. -
Système (
system) : instructions initiales fournies au système pour fournir des indications générales sur le ton et la voix du message généré. Un message système initial est facultatif, mais recommandé pour indiquer le ton du chat. Par exemple, « Vous êtes un chatbot utile avec une formation en sciences de la Terre et un charmant accent français. »
-
-
Contenu (
content) : contenu du message.
Paramètres d’inférence
Les modèles AI21 Labs Jamba prennent en charge les paramètres d’inférence suivants.
Caractère aléatoire et diversité
Les modèles AI21 Labs Jamba prennent en charge les paramètres suivants pour contrôler le caractère aléatoire et la diversité de la réponse.
-
Température (
temperature) : degré de variation à fournir dans chaque réponse. La définition de cette valeur sur 0 garantit la même réponse à la même question à chaque fois. La définition d’une valeur plus élevée favorise de plus grandes variations. Modifie la distribution à partir de laquelle les jetons sont échantillonnés. Valeur par défaut : 1,0. Plage de valeurs : de 0,0 à 2,0 -
Top P (
top_p) : limitez l’ensemble des prochains jetons à chaque étape au Nᵉ percentile supérieur des jetons possibles, où 1,0 correspond à l’ensemble de tous les jetons possibles et 0,01 correspond uniquement aux jetons les plus probables.
Longueur
Les modèles AI21 Labs Jamba prennent en charge les paramètres suivants pour contrôler la longueur de la réponse générée.
-
Durée maximale d’exécution (
max_tokens) : nombre maximal de jetons à autoriser pour chaque message de réponse généré. Généralement, le meilleur moyen de limiter la longueur de sortie est de fournir une limite de longueur dans l’invite du système (par exemple, « limite tes réponses à trois phrases »). Valeur par défaut : 4 096. Plage de valeurs : de 0 à 4 096. -
Séquences d’arrêt (
stop) : termine le message lorsque le modèle génère l’une de ces chaînes. La séquence d’arrêt n’est pas incluse dans le message généré. Chaque séquence peut avoir une longueur maximale de 64 Ko et peut contenir de nouvelles lignes sous la forme de caractères \n.Exemples :
-
Chaîne d’arrêt unique avec mot et point : « singes. »
-
Chaînes d’arrêt multiples avec nouvelle ligne : [« chat », « chien », « . », « #### », « \n »]
-
-
Nombre de réponses (
n) : nombre de réponses à générer pour le chat. Les notes n doivent être égales à 1 pour les réponses en streaming. Si n est supérieur à 1, le paramètretemperature=0échoue toujours, car il est garanti que toutes les réponses seront des doublons. Valeur par défaut : 1. Plage de valeurs : de 1 à 16
Répétitions
Les modèles AI21 Labs Jamba prennent en charge les paramètres suivants pour contrôler la répétition dans la réponse générée.
-
Pénalité de fréquence (
frequency_penalty) : réduisez la fréquence des mots répétés dans un seul message de réponse en augmentant ce nombre. Cette pénalité augmente progressivement au fur et à mesure qu’un mot apparaît lors de la génération de la réponse. Le réglage sur 2,0 produit une chaîne contenant peu ou pas de mots répétés. -
Pénalité de présence (
presence_penalty) : réduisez la fréquence des mots répétés dans un seul message en augmentant ce nombre. Contrairement à la pénalité de fréquence, la pénalité de présence est la même quel que soit le nombre de fois qu’un mot apparaît.
Champ body de la demande d’invocation du modèle
Lorsque vous effectuez un appel InvokeModel ou InvokeModelWithResponseStream à l’aide d’un modèle AI21 Labs, remplissez le champ body avec un objet JSON conforme à celui ci-dessous. Entrez l’invite dans le champ prompt.
{ "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 }
Champ body de la réponse à l’invocation du modèle
Pour plus d’informations sur le format du champ body dans la réponse, consultez https://docs.ai21.com/reference/jamba-instruct-api#response-details
Exemple de code
Cet exemple montre comment appeler le modèle AI21 Labs Jamba-Instruct.
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))
Exemple de code pour Jamba 1.5 Large
Cet exemple montre comment appeler le modèle AI21 Labs Jamba 1.5 Large.
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 }