AI21 Labs Modelos Jamba - Amazon Bedrock

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.

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 do system têm precedência sobre as instruções do prompt do system.

    • 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 de temperature=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 }