Divisão por caractere
Um processo fundamental na implementação do Retrieval Augmented Generation (RAG) é dividir os documentos em partes para armazenamento em um banco de dados vetorial.
Há várias estratégias de divisão disponíveis no LangChain, algumas com rotinas mais complexas do que outras. Neste exercício, você implementará um divisor de texto de caracteres, que divide documentos com base em caracteres e mede o comprimento do bloco pelo número de caracteres.
Lembre-se de que não existe uma estratégia de divisão ideal; talvez você precise experimentar algumas para encontrar a mais adequada para o seu caso de uso.
Este exercício faz parte do curso
Desenvolvimento de aplicativos LLM com LangChain
Instruções de exercício
- Importe a classe LangChain apropriada para dividir um documento por caractere.
- Defina um divisor de caracteres que se divide em
"\n"
com umchunk_size
de24
echunk_overlap
de10
. - Divida
quote
e imprima os pedaços e os comprimentos dos pedaços.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Import the 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 string and print the chunks
docs = ____
print(docs)
print([len(doc) for doc in docs])