Dividir por caracteres
Un proceso clave en la aplicación de la Generación Aumentada de Recuperación (RAG) es dividir los documentos en trozos para almacenarlos en una base de datos vectorial.
Hay varias estrategias de división disponibles en LangChain, algunas con rutinas más complejas que otras. En este ejercicio, implementarás un divisor de texto por caracteres, que divide los documentos en función de los caracteres y mide la longitud del trozo por el número de caracteres.
Recuerda que no existe una estrategia de división ideal, puede que tengas que experimentar con unas cuantas para encontrar la adecuada a tu caso de uso.
Este ejercicio forma parte del curso
Desarrollar aplicaciones LLM con LangChain
Instrucciones de ejercicio
- Importa la clase LangChain adecuada para dividir un documento por caracteres.
- Define un divisor de caracteres que se divida en
"\n"
con unchunk_size
de24
y unchunk_overlap
de10
. - Divide
quote
, e imprime los trozos y la longitud de los trozos.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# 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])