O que são tokens em um modelo de linguagem?

Central de aprendizado5 min de leitura

Um token é a unidade de texto que um modelo de linguagem lê e escreve. Ele pode ser uma palavra inteira, parte de uma palavra, um único caractere, um sinal de pontuação ou um espaço ligado a uma palavra. Antes que um modelo veja qualquer texto, uma ferramenta chamada tokenizador corta esse texto em tokens e substitui cada um por um número que o modelo consegue processar.

Um grande modelo de linguagem trabalha inteiramente com tokens. Ele recebe uma sequência de números de tokens, prevê o próximo token mais provável, adiciona esse token à sequência e repete o processo. As palavras que você vê em uma resposta são esses tokens convertidos de volta em texto.

Como um modelo divide o texto em tokens?

Cada modelo tem um vocabulário fixo, uma lista de dezenas de milhares de fragmentos de texto com um número de identificação para cada um. O vocabulário é criado uma única vez, antes do treinamento, a partir de uma grande amostra de texto. A maioria dos modelos modernos usa um método chamado byte pair encoding, que funciona mais ou menos assim:

  1. Comece com caracteres individuais (ou bytes) como vocabulário.
  2. Conte quais pares de pedaços vizinhos aparecem com mais frequência no texto de amostra.
  3. Junte o par mais frequente em um pedaço novo e mais longo e adicione esse pedaço ao vocabulário.
  4. Repita até que o vocabulário atinja o tamanho desejado.

No vocabulário final, palavras comuns como "the" ou "search" são tokens únicos, enquanto palavras raras são formadas por vários pedaços menores. Um tokenizador pode dividir "tokenization" em "token" e "ization", e um nome de marca incomum em três ou quatro fragmentos. Espaços iniciais geralmente fazem parte do token, então " search" e "search" podem ter IDs diferentes.

Famílias de modelos diferentes usam tokenizadores diferentes, então a mesma frase pode gerar um número diferente de tokens em dois modelos.

Palavras comuns ficam inteiras, e as mais raras se quebram em pedaços. A divisão e os IDs são ilustrativos, porque cada tokenizador corta de um jeito um pouco diferente.

Por que os modelos usam tokens em vez de palavras ou letras?

Tokens são um meio-termo entre duas opções piores. Um vocabulário de palavras inteiras precisaria de milhões de entradas e ainda falharia com palavras novas, erros de digitação, códigos de produto e nomes. Um vocabulário de letras individuais daria conta de qualquer coisa, mas cada frase viraria uma sequência muito longa, e o modelo gastaria a maior parte da sua capacidade aprendendo a soletrar.

Tokens de subpalavras mantêm as sequências razoavelmente curtas e ainda cobrem qualquer entrada. Uma palavra que o modelo nunca viu sempre pode ser escrita como uma combinação de pedaços menores que ele conhece.

Quantos tokens tem um texto?

A contagem depende do tokenizador e do tipo de texto. Para prosa comum em inglês, uma regra prática frequente é que um token equivale a cerca de quatro caracteres, ou cerca de três quartos de uma palavra. Outros tipos de texto são tokenizados de forma diferente:

TextoTokenização típica
Palavras comuns em inglêsUm token cada
Palavras raras, nomes, termos técnicosVários tokens cada
Números longos, preços, datasDivididos em pequenos grupos de dígitos
Idiomas com menos dados de treinamentoMais tokens por palavra do que o inglês
HTML, código, espaços repetidosMuitos tokens para pouco conteúdo legível

Por isso, uma página em alemão, polonês ou japonês costuma usar mais tokens do que o mesmo conteúdo em inglês. Marcação e restos de texto de navegação também adicionam tokens sem acrescentar significado.

O que os tokens limitam?

Quase todo limite prático de um modelo de linguagem é medido em tokens.

  • Janela de contexto. É o número máximo de tokens que o modelo consegue considerar de uma vez, incluindo as instruções, a conversa, os documentos recuperados e a resposta que ele está escrevendo. O texto além do limite é descartado ou nunca chega a ser enviado.
  • Tamanho da resposta. As respostas têm um limite definido de tokens, e é por isso que respostas longas às vezes param no meio de uma frase.
  • Custo. Os provedores de API cobram por token, geralmente com preços separados para tokens de entrada e de saída.
  • Velocidade. O modelo produz um token por etapa, então uma resposta mais longa demora mais para ser gerada.

Os embeddings também começam a partir de tokens. Na busca semântica, um trecho é tokenizado e depois transformado em uma lista de números que representa o seu significado, e os modelos de embedding têm os seus próprios limites de tokens por trecho.

Por que os tokens causam alguns erros estranhos nos modelos?

O modelo vê IDs de tokens, então ele não tem uma visão direta das letras dentro de um token. Quando alguém pede para contar as letras de uma palavra, inverter uma sequência de caracteres ou verificar uma rima, ele está trabalhando com fragmentos que não consegue inspecionar, e pode errar essas tarefas simples. Cálculos com números longos têm um problema parecido, já que os dígitos podem ser agrupados de formas que não correspondem às casas decimais.

A tokenização também explica por que a grafia dos nomes importa. Uma marca escrita sempre da mesma forma é uma sequência estável de tokens que o modelo consegue associar aos fatos que viu. Várias grafias do mesmo nome se dividem em sequências diferentes, e o modelo pode tratá-las como coisas separadas.

O que os tokens significam para um site?

Sistemas de busca com IA usam geração aumentada por recuperação: eles buscam páginas, dividem essas páginas em trechos e passam uma seleção para o modelo. Cada trecho custa tokens, e a janela de contexto tem espaço para apenas um número limitado deles, então o sistema mantém um pequeno conjunto de trechos curtos de cada fonte e descarta o restante.

Os trechos geralmente são cortados pela contagem de tokens, muitas vezes com algumas centenas de tokens cada. Um fato que está em um parágrafo compacto, perto de um título claro, sobrevive intacto a esse corte. Se o mesmo fato estiver espalhado por uma introdução longa, uma barra lateral e uma nota de rodapé, ele pode ser dividido entre partes diferentes e perder o contexto. Páginas carregadas de texto padrão, scripts ou menus repetidos desperdiçam parte do orçamento com texto que não responde a nada.

A etapa de ranqueamento que escolhe quais trechos chegam ao modelo é explicada em como a busca com IA escolhe quais fontes citar. Para um site, isso significa que cada afirmação que merece virar resposta deve fazer sentido sozinha dentro de um trecho curto de texto, escrita em palavras simples e com os nomes grafados da mesma forma em todos os lugares.

Teste grátis por 14 dias
e receba seu relatório de IA