ComeçarComece de graça

Divisão recursiva por caractere

Muitos desenvolvedores estão usando um divisor de caracteres recursivo para dividir documentos com base em uma lista específica de caracteres. Esses caracteres são parágrafos, novas linhas, espaços e cadeias de caracteres vazias, por padrão: ["\n\n", "\n", " ", ""].

Na verdade, o divisor tenta dividir por parágrafos, verifica se os valores chunk_size e chunk_overlap são atendidos e, caso contrário, divide por frases, depois por palavras e caracteres individuais.

Muitas vezes, você precisará experimentar diferentes valores de chunk_size e chunk_overlap para encontrar os que funcionam melhor para seus documentos.

Este exercício faz parte do curso

Desenvolvimento de aplicativos LLM com LangChain

Ver curso

Instruções do exercício

  • Importe a classe LangChain apropriada para dividir um documento recursivamente por caractere.
  • Defina um divisor de caracteres recursivo para dividir os caracteres "\n", " " e "" (nessa ordem) com um chunk_size de 24 e um chunk_overlap de 10.
  • Divida quote e imprima os pedaços e os comprimentos dos pedaços.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Import the recursive character splitter
from langchain_text_splitters import ____

quote = 'Words are flowing out like endless rain into a paper cup,\nthey slither while they pass,\nthey slip away across the universe.'
chunk_size = 24
chunk_overlap = 10

# Create an instance of the splitter class
splitter = ____

# Split the document and print the chunks
docs = ____
print(docs)
print([len(doc) for doc in docs])
Editar e executar o código