Pular para o conteúdo principal

Glossário

Tokens

Tokens são as unidades fundamentais que os modelos de linguagem utilizam para processar texto. Eles representam sequências de caracteres que compõem a linguagem escrita. Um token pode ser: Uma palavra inteira, parte de uma palavra, um caractere único ou uma sequência de caracteres especiais. Por exemplo, a palavra "tokenização" pode ser dividida em "token" e "ização". Em média, um token corresponde a aproximadamente 4 caracteres.

Por que os tokens são importantes?

  • Limitação de Processamento: O tamanho do texto que um modelo pode processar é limitado pelo número de tokens que ele pode manipular de uma vez, conhecido como 'janela de contexto'.
  • Cálculo de Custos: Os custos são calculados com base no número de tokens processados, sendo cobrados por milhão de tokens.

Como saber quantos tokens serei cobrado?

Para saber de antemão o quanto suas requisições irão custar, use a função count_tokens para saber o número de tokens em um dado prompt.

from maritalk import count_tokens

prompt = "Com quantos paus se faz uma canoa?"

total_tokens = count_tokens(prompt, model="sabia-3")

print(f'O prompt "{prompt}" contém {total_tokens} tokens.')

Contexto (Janela de contexto)

A janela de contexto refere-se à quantidade de texto que um modelo de linguagem pode levar em conta ao gerar uma nova resposta. Ela funciona como a capacidade de lembrar detalhes ao contar uma história. Quando alguém explica um evento que aconteceu durante o dia, se consegue lembrar de muitos detalhes desde o começo, pode contar a história de forma completa e bem conectada. Mas, se só recordar os últimos momentos, a história pode ficar incompleta ou sem nexo.

Da mesma forma, em um modelo de linguagem, a janela de contexto determina quantos detalhes anteriores ele pode "lembrar" ao criar uma nova resposta. Quanto maior for essa janela, mais contexto o modelo tem para gerar uma resposta rica e precisa. Se a janela for menor, ele só consegue considerar uma parte limitada da informação, o que pode afetar a qualidade da resposta.

Importância do Tamanho da Janela de Contexto

  • Maior Janela de Contexto: Permite que o modelo compreenda e responda a prompts mais complexos e extensos.
  • Menor Janela de Contexto: Pode limitar a capacidade do modelo de lidar com prompts longos ou de manter a coerência em conversas prolongadas.

Limitações

  • Para modelos de geração de texto, a soma do tamanho do prompt e da saída gerada não deve ultrapassar o comprimento máximo da janela de contexto.

Temperatura

A temperatura é um parâmetro que controla o nível de aleatoriedade nas respostas de um modelo de linguagem durante a geração de texto.

  • Temperaturas mais altas resultam em respostas mais criativas e variadas. Por exemplo, ao pedir para o modelo continuar uma história, ele pode inventar finais diferentes e inesperados. Isso é útil quando se busca originalidade, como na escrita de ficção, onde múltiplas possibilidades e surpresas são desejadas.

  • Temperaturas mais baixas, por outro lado, produzem respostas mais previsíveis e conservadoras. Nesse caso, o modelo tende a seguir o caminho mais provável e seguro, repetindo padrões comuns de linguagem. Isso é ideal para tarefas que exigem respostas consistentes e confiáveis, como ao avaliar o desempenho de um modelo em um cenário.

Ajustar a temperatura é essencial para encontrar o equilíbrio certo entre criatividade e precisão, dependendo do objetivo da tarefa. Em atividades como a criação de histórias, diálogos, ou qualquer outro tipo de conteúdo onde a originalidade é importante, configurar a temperatura adequadamente pode ser a chave para alcançar o resultado desejado. Por outro lado, quando a precisão e a consistência são mais importantes, uma temperatura mais baixa ajuda a garantir que as respostas sejam claras e previsíveis.


TTFT (Tempo para o Primeiro Token)

O Tempo para o Primeiro Token (TTFT) mede a rapidez com que um modelo de linguagem começa a responder após receber uma solicitação (prompt). Um TTFT baixo indica que o modelo responde rapidamente, o que é essencial para uma experiência de usuário fluida, especialmente em chatbots e sistemas em tempo real.

O que influencia o TTFT?

  • Tamanho do modelo: Modelos maiores podem ser mais lentos.
  • Hardware: Computadores mais potentes reduzem o TTFT.
  • Condições de rede: Internet lenta aumenta o TTFT.
  • Comprimento do prompt: Prompts mais longos aumentam o TTFT.

Rate Limit

O rate limit é uma prática comum em serviços de API para evitar o uso excessivo e garantir a estabilidade e a distribuição equitativa dos recursos do servidor entre os usuários. Ele estabelece um limite para o número de solicitações que um usuário ou sistema pode fazer dentro de um determinado período de tempo.

Por que o rate limit é importante?

  • Estabilidade do Serviço: Previne contra sobrecargas que podem ser causadas por muitas solicitações simultâneas.
  • Justiça de Uso: Assegura que todos os usuários tenham acesso justo ao serviço, evitando que um usuário monopolize os recursos.
  • Segurança: Ajuda a identificar e mitigar possíveis ataques de negação de serviço (DoS).

Como o rate limit afeta o uso da API?

Uma vez atingido o limite de solicitações, as chamadas subsequentes podem ser rejeitadas ou resultar em mensagens de erro. Assim, os desenvolvedores precisam monitorar e gerenciar suas chamadas de API para evitar exceder o limite.

Na API da Maritaca, existem três tipos de rate limit:

  • Número máximo de tokens de entrada (prompt), enviados por minuto
  • Número máximo de tokens de gerados por minuto
  • Número máximo de requisições por minuto, independente do tamanho do prompt ou tokens gerados.

Onde consulto os rate limits?

Os rate limits de cada modelo estão disponíveis em https://plataforma.maritaca.ai/modelos

O que fazer se atingir o rate limit?

  • Ajustar a Frequência de Solicitações: Espaçar as chamadas de API para ficar dentro do limite permitido.
  • Aumentar o Limite: Se precisa de rate limits maiores, por favor, nos envie uma mensagem para suporte@maritaca.ai