GEO

Chunking Semantico

O chunking semantico e uma tecnica de divisao de documentos que corta o texto em fronteiras de significado, em vez de contagens fixas de caracteres ou tokens. Ele usa embeddings para detectar quando frases adjacentes mudam de topico e, entao, posiciona o corte ali, de modo que cada chunk resultante seja internamente coerente e recuperavel como uma unica ideia.

O chunking semantico e uma tecnica de divisao de documentos que corta o texto em fronteiras de significado, em vez de contagens fixas de caracteres ou tokens. Ele usa embeddings para detectar quando frases adjacentes mudam de topico e, entao, posiciona o corte ali, de modo que cada chunk resultante seja internamente coerente e recuperavel como uma unica ideia.

Por que importa

O chunking ingenuo divide a cada N tokens ou nas quebras de paragrafo, alheio ao significado. Isso rotineiramente corta um unico argumento ao meio, colocando a premissa em um chunk e a conclusao em outro, de modo que o recuperador retorna fragmentos que nao fazem sentido. O chunking semantico corrige isso ao respeitar as mudancas de topico. Relatorios de benchmark da LlamaIndex e da LangChain de 2024 a 2025 mostram que o chunking semantico melhora a qualidade das respostas de RAG em 8 a 20% em QA de dominio aberto, em comparacao com a divisao de tamanho fixo, com os maiores ganhos em documentos tecnicos longos.

Como funciona

1. Dividir em frases: use um tokenizador de frases para obter unidades atomicas.

2. Fazer o embedding de cada frase: um pequeno modelo de embedding produz um vetor por frase.

3. Calcular similaridades adjacentes: para cada par de frases, meca a similaridade de cosseno entre os embeddings.

4. Encontrar os pontos de quebra: quando a similaridade cai abaixo de um limite (ou fica no percentil inferior), marque o ponto como uma mudanca de topico.

5. Agrupar as frases entre as quebras em chunks: cada chunk e topicamente coerente.

6. Limites de tamanho opcionais: mescle chunks minusculos ou divida os enormes para que a recuperacao continue pratica.

Chunking Semantico vs Tamanho Fixo vs Recursivo

EstrategiaComo divideCoerenciaCustoQuando usar
Tamanho fixoA cada N tokensBaixaGratisPrototipagem, logs
RecursivoParagrafo → frase → palavraMediaGratisPadrao de uso geral
SemanticoFronteiras de similaridade de embeddingAltaCusto de embeddingDocs tecnicos, artigos longos
AgenticoO LLM decide por documentoA mais altaMuito altoAlto risco, baixo volume

O chunking semantico fica entre os extremos do barato-e-burro e do caro-e-inteligente, sendo um bom padrao quando voce supera a divisao recursiva.

Parametros de ajuste

Limite de similaridade: limite baixo → mais chunks, maior coerencia de topico, pior continuidade de contexto. Limite alto → menos chunks, mais longos. Comece em torno do percentil 15 a 25 das similaridades adjacentes.

Modelo de embedding: um modelo de embedding pequeno e barato geralmente basta, ja que voce esta medindo mudancas relativas, e nao o significado absoluto.

Tamanho minimo de chunk: chunks muito curtos (uma frase) tem recuperacao ruim porque carecem de contexto. Imponha um piso.

Tamanho maximo de chunk: limite os chunks para que nenhum exceda a janela de contexto subsequente.

Sobreposicao: uma pequena sobreposicao de frases (1 a 2 frases) entre chunks adjacentes resgata casos extremos em que a fronteira e ambigua.

Quando nao ajuda

Documentos curtos: se o documento inteiro cabe em um unico chunk, dividir e apenas sobrecarga.

Texto altamente repetitivo: logs, listagens de produtos e tabelas tem pouca variacao natural de topico, e o chunking semantico degenera para tamanho fixo.

Conteudo estruturado: tabelas, codigo e JSON devem ser divididos por estrutura, nao por significado.

Quando a recuperacao nao e o gargalo: se a alucinacao vem do design do prompt ou do reranking, corrigir o chunking nao vai ajudar.

Fontes: