As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
AI21 Labs Modelos Jamba
Esta seção fornece parâmetros de inferência e um exemplo de código para usar AI21 Labs Modelos Jamba.
Tópicos
Campos obrigatórios
Os modelos Jamba do AI21 Labs oferecem suporte aos seguintes campos obrigatórios:
-
Mensagens (
messages
): as mensagens anteriores neste chat, da mais antiga (índice 0) à mais recente. Deve haver pelo menos uma mensagem de usuário ou de assistente na lista. Inclua as entradas do usuário e as respostas do sistema. O tamanho total máximo da lista é de cerca de 256K tokens. Cada mensagem inclui os seguintes membros: -
Perfil (
role
): o perfil do autor da mensagem. Um dos seguintes valores:-
Usuário (
user
): entrada fornecida pelo usuário. Quaisquer instruções fornecidas aqui que entrem em conflito com as instruções fornecidas no prompt dosystem
têm precedência sobre as instruções do prompt dosystem
. -
Assistente (
assistant
): resposta gerada pelo modelo. -
Sistema (
system
): instruções iniciais fornecidas ao sistema para oferecer orientação geral sobre o tom e a voz da mensagem gerada. Uma mensagem inicial do sistema é opcional, mas é recomendada para fornecer orientação sobre o tom do chat. Por exemplo, “Você é um chatbot útil com formação em ciências da terra e um charmoso sotaque francês”.
-
-
Conteúdo (
content
): o conteúdo da mensagem.
Parâmetros de inferência
Os modelos Jamba do AI21 Labs oferecem suporte aos seguintes parâmetros de inferência.
Aleatoriedade e diversidade
Os modelos do AI21 Labs Jamba suportam os seguintes parâmetros para controlar a aleatoriedade e a diversidade na resposta.
-
Temperatura (
temperature
): quanto de variação deve ser fornecido em cada resposta. A definição desse valor como 0 garante sempre a mesma resposta à mesma pergunta. A definição de um valor mais alto incentiva mais variações. Modifica a distribuição na qual os tokens são amostrados. Padrão: 1.0, Intervalo: de 0.0 a 2.0 -
Top P (
top_p
): limite o grupo de próximos tokens em cada etapa ao percentil N superior dos tokens possíveis, em que 1.0 significa o grupo de todos os tokens possíveis e 0.01 significa o grupo somente dos próximos tokens mais prováveis.
Tamanho
Os modelos Jamba do AI21 Labs oferecem suporte aos seguintes parâmetros para controlar a duração da resposta gerada.
-
Tamanho máximo de conclusão (
max_tokens
): o número máximo de tokens permitidos para cada mensagem de resposta gerada. Normalmente, a melhor maneira de limitar o tamanho da saída é o fornecimento de um limite de tamanho no prompt do sistema (por exemplo, “limite suas respostas a três frases”). Padrão: 4096, Intervalo: de 0 a 4096. -
Sequências de parada (
stop
): encerre a mensagem quando o modelo gerar uma dessas sequências de caracteres. A sequência de parada não está incluída na mensagem gerada. Cada sequência pode ter até 64K de comprimento e conter novas linhas como caracteres \n.Exemplos:
-
String de parada única com uma palavra e um ponto final: “macacos”.
-
Várias strings de parada e uma nova linha: [“gato”, “cachorro”, “ . ”, “####”, “\n”]
-
-
Número de respostas (
n
): quantas respostas de chat devem ser geradas. As observações n devem ser 1 para respostas de streaming. Se n for definido como maior que 1, a configuração detemperature=0
sempre falhará porque é garantido que todas as respostas sejam duplicadas. Padrão: 1, Intervalo: de 1 a 16
Repetições
Os modelos Jamba do AI21 Labs oferecem suporte aos seguintes parâmetros para controlar a repetição na resposta gerada.
-
Penalidade de frequência (
frequency_penalty
): reduza a frequência de palavras repetidas em uma única mensagem de resposta aumentando esse número. Essa penalidade aumenta gradualmente quanto mais vezes uma palavra aparece durante a geração da resposta. A definição como 2.0 produzirá uma string com poucas ou nenhuma palavra repetida. -
Penalidade de presença (
presence_penalty
): reduza a frequência de palavras repetidas em uma única mensagem aumentando esse número. Ao contrário da penalidade de frequência, a penalidade de presença é a mesma, não importa quantas vezes uma palavra apareça.
Campo do corpo da solicitação de invocação do modelo
Quando você faz uma InvokeModelWithResponseStreamchamada InvokeModelou usando um AI21 Labs modelo, preencha o body
campo com um objeto JSON que esteja em conformidade com o abaixo. Insira o prompt no campo 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 }
Campo do corpo da resposta de invocação do modelo
Para obter informações sobre o formato do body
campo na resposta, consulte https://docs.ai21.com/reference/jamba-instruct-api#response -details
Exemplo de código
Este exemplo mostra como chamar o modelo AI21 Jamba-Instruct do Labs.
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))
Exemplo de código do Jamba 1.5 Large
Este exemplo mostra como chamar o modelo 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 }