Calculadora de Chunking para RAG
Entradas
| Tokens do Documento | 8.000 |
|---|---|
| Tamanho do Chunk | 512 |
| Sobreposição do Chunk | 64 |
Calculadora de Chunking para RAG
Descubra em quantos chunks sobrepostos um documento é dividido para geração aumentada por recuperação, e quantos tokens isso envia ao modelo de embedding.
Entradas
Documento
Chunking
Resultados
Insira um valor para ver os resultados.
Detalhes
Chunking para RAG
A geração aumentada por recuperação (RAG) responde a uma pergunta buscando primeiro, em uma coleção de documentos, as passagens relevantes e depois entregando essas passagens a um modelo de linguagem. Como um documento inteiro costuma ser longo demais para ser incorporado e recuperado como uma única unidade, cada documento é antes dividido em pedaços menores chamados chunks. O chunking é a etapa que decide como esses pedaços são cortados, e ela molda tanto a qualidade da recuperação quanto o custo de embedding. Esta calculadora informa em quantos chunks um documento de determinado tamanho é dividido e quantos tokens isso envia ao modelo de embedding.
Como o chunking funciona
Um divisor desliza uma janela de tamanho fixo ao longo do documento. A janela
tem chunk_size tokens de largura e, depois de emitir cada chunk, avança um
passo em vez de a largura inteira, de modo que chunks consecutivos compartilham
uma faixa de chunk_overlap tokens. A sobreposição existe para que um fato que
atravessa a fronteira de um chunk ainda apareça inteiro em pelo menos um chunk
— sem ela, uma frase cortada ao meio poderia não ser recuperável a partir de
nenhuma das metades.
O passo é o tamanho do chunk menos a sobreposição:
s=c−oUm documento de tokens fica coberto quando o primeiro chunk consumiu tokens de partida e os tokens restantes foram percorridos em passos de , o que exige
n=⌈sT−o⌉chunks. O teto contabiliza a janela final, possivelmente curta. Cada um dos chunks é incorporado em seu tamanho cheio, então o total de tokens enviados ao modelo de embedding é
Temb=n⋅cComo todo chunk após o primeiro repete tokens, é maior que o original sempre que a sobreposição é diferente de zero.
Exemplo resolvido
Considere um documento de 8.000 tokens, dividido com tamanho de chunk de 512 e sobreposição de 64. A janela avança
s=512−64=448 tokense o número de chunks é
n=⌈4488000−64⌉=⌈4487936⌉=⌈17,71⌉=18Incorporar todos os 18 chunks em tamanho cheio envia
Temb=18×512=9216 tokensao modelo de embedding. A sobreposição inflou o volume incorporado de 8.000 para 9.216 tokens — cerca de 15 por cento a mais —, que é o preço pago para manter intactas as passagens que cruzam fronteiras. Essa razão é próxima do tamanho do chunk dividido pelo passo, .
Observações e variações
Divisores reais raramente cortam em fronteiras exatas de tokens. A maioria respeita quebras de frase ou parágrafo, então os chunks variam em comprimento e a contagem difere um pouco da estimativa de janela uniforme adotada aqui. Divisores recursivos e semânticos ajustam as fronteiras à estrutura natural, trocando uniformidade por coerência. A fração de sobreposição é a principal alavanca sobre o volume incorporado: uma sobreposição de 50 por cento aproximadamente dobra os tokens incorporados, enquanto uma sobreposição zero incorpora exatamente o comprimento do documento, mas arrisca dividir fatos.
Aplicação
A contagem de chunks determina o dimensionamento posterior. Cada chunk vira um vetor, então ela alimenta diretamente o tamanho do índice calculado por Calculadora de Tamanho de Banco de Dados Vetorial, e o total de tokens incorporados define o gasto único de embedding estimado por Calculadora de Custo de Embedding. Ajustar o tamanho do chunk e a sobreposição, portanto, equilibra a precisão da recuperação contra os custos de armazenamento e de embedding ao mesmo tempo.
Perguntas frequentes (FAQ)
Por que adicionar sobreposição entre chunks?
Um corte rígido pode partir uma frase, linha de tabela ou fato ao meio, deixando nenhum dos chunks com a informação completa. A sobreposição repete a parte final de um chunk no início do seguinte, de modo que uma passagem que cruza uma fronteira ainda apareça intacta em pelo menos um chunk.
A contrapartida é que os tokens repetidos são incorporados mais de uma vez, aumentando o custo de embedding e adicionando entradas quase duplicadas ao índice.
Que tamanho de chunk devo usar?
Não existe um valor universalmente melhor; depende do conteúdo e da tarefa de recuperação. Chunks menores, em torno de 256 a 512 tokens, isolam uma única ideia por chunk e recuperam com precisão, o que serve para busca de fatos. Chunks maiores, de 1.000 tokens ou mais, preservam mais contexto ao redor, o que ajuda em sumarização e perguntas de raciocínio.
Um ponto de partida comum é 512 tokens com sobreposição de 10 a 20 por cento, ajustando depois conforme a qualidade da recuperação.
Por que mais tokens são incorporados do que o documento contém?
Todo chunk após o primeiro repete a região de sobreposição do chunk anterior, então esses tokens são incorporados duas vezes. O total incorporado é o número de chunks vezes o tamanho do chunk, que é maior que o comprimento bruto do documento sempre que há qualquer sobreposição.
A razão entre tokens incorporados e tokens do documento é aproximadamente o tamanho do chunk dividido pelo passo, de modo que uma sobreposição pesada pode inflar o volume de embedding bem acima do tamanho original do documento.
Aviso legal
A contagem de tokens depende do tokenizador do modelo e de como o divisor trata as fronteiras de frase e parágrafo; pipelines reais raramente produzem chunks perfeitamente uniformes. Trate estes números como estimativas de planejamento e verifique as contagens exatas e o gasto de embedding com suas próprias ferramentas.