Language Recursive Text Splitter
El Language Recursive Text Splitter es una herramienta que toma un bloque de texto y lo divide en partes más pequeñas, llamadas chunks. Cada chunk tiene un tamaño máximo que tú defines y, opcionalmente, puede compartir parte del contenido con el chunk siguiente (esto se llama overlap). El componente adapta la división al idioma del texto, lo que ayuda a mantener la coherencia y la legibilidad de los fragmentos.
¿Cómo funciona?
Internamente el componente utiliza la clase RecursiveCharacterTextSplitter
de la librería langchain_text_splitters. Cuando le das un texto, el splitter:
- Detecta el idioma que seleccionaste (por ejemplo, Python, JavaScript, Español, etc.).
- Divide el texto en bloques de longitud máxima (
chunk_size
). - Si especificas un
chunk_overlap
, copia esa cantidad de caracteres del final de un bloque al principio del siguiente, asegurando que el contexto se mantenga entre los fragmentos. - Devuelve una lista de objetos Document (tipo
Data
) que contienen cada fragmento.
No se necesita ninguna conexión externa; todo el procesamiento ocurre localmente dentro del dashboard.
Entradas
Campos de Entrada
- Input: Los textos que quieres dividir. Puedes pegar el contenido directamente o conectar la salida de otro componente que genere documentos.
- Chunk Overlap: La cantidad de caracteres que se repetirán entre bloques consecutivos. Un valor mayor ayuda a preservar el contexto, pero aumenta el número total de fragmentos.
- Chunk Size: El tamaño máximo de cada bloque, medido en caracteres. Ajusta este valor según el límite que necesites para tu aplicación (por ejemplo, 1000 caracteres por bloque).
- Code Language: El idioma que se usará para la división. El componente incluye una lista de idiomas compatibles; elige el que corresponda al texto que vas a procesar.
Salidas
- Data: Una colección de fragmentos de texto (tipo
Data
). Cada fragmento se puede usar como entrada para otros componentes, como modelos de IA, motores de búsqueda o procesos de análisis.
Ejemplo de Uso
- Añade el componente “Language Recursive Text Splitter” al flujo de trabajo.
- Configura los parámetros:
Input
: Conecta la salida de un componente que lee un documento grande (por ejemplo, un PDF o un archivo de texto).Chunk Size
: 1000Chunk Overlap
: 200Code Language
: python
- Ejecuta el flujo. El componente devolverá una lista de bloques de texto, cada uno con un máximo de 1000 caracteres y 200 caracteres compartidos con el bloque siguiente.
- Utiliza la salida: Conecta el campo Data a un modelo de lenguaje para generar resúmenes, a un motor de búsqueda para indexar, o a cualquier otro proceso que requiera textos cortos y coherentes.
Componentes Relacionados
- Recursive Text Splitter – Divide textos sin considerar el idioma, útil cuando el idioma no es crítico.
- Simple Text Splitter – Separa el texto en bloques de longitud fija sin lógica recursiva.
- Chunked Text Splitter – Similar al actual, pero permite configurar delimitadores personalizados (p. ej., saltos de línea).
Consejos y Mejores Prácticas
- Ajusta el
Chunk Size
según el modelo de IA que usarás; muchos modelos tienen límites de tokens que deben respetarse. - Usa
Chunk Overlap
cuando el contexto sea importante (por ejemplo, para resúmenes o análisis de sentimiento). - Selecciona el idioma correcto para evitar que el splitter interprete mal la estructura del texto.
- Revisa los fragmentos resultantes antes de pasarlos a procesos sensibles; asegúrate de que no contengan información confidencial inadvertida.
Consideraciones de Seguridad
El componente procesa datos localmente y no envía información fuera del entorno del dashboard. Asegúrate de que los documentos que introduces no contengan datos sensibles que deban permanecer privados, y utiliza las políticas de acceso del sistema para protegerlos.