Saltearse al contenido

Split Text

El componente Split Text te permite dividir un bloque de texto en partes más pequeñas, llamadas chunks. Esto es útil cuando necesitas procesar textos extensos con modelos de lenguaje o cualquier otro proceso que requiera entradas de tamaño limitado. Puedes controlar cuántos caracteres tendrá cada fragmento y cuántos caracteres se repetirán entre fragmentos para mantener el contexto.

¿Cómo funciona?

Internamente el componente utiliza la clase CharacterTextSplitter de la librería langchain_text_splitters. Cuando envías datos al componente:

  1. Recibe una lista de objetos Data (cada uno contiene un texto y opcionalmente metadatos).
  2. Configura el splitter con los valores que hayas introducido:
    • chunk_size: longitud máxima de cada fragmento.
    • chunk_overlap: número de caracteres que se repetirán entre fragmentos consecutivos.
    • separator: carácter que indica dónde se pueden dividir los textos (por defecto es una nueva línea \n).
  3. Divide cada documento en fragmentos que cumplan con esos criterios.
  4. Devuelve una lista de objetos Data, cada uno con el contenido del fragmento y los metadatos originales.

No se realizan llamadas a APIs externas; todo el procesamiento ocurre localmente dentro del dashboard.

Entradas

Campos de Entrada

  • Data Inputs: El texto o los textos que deseas dividir. Puedes introducir varios bloques de datos a la vez.
  • Chunk Overlap: Número de caracteres que se repetirán entre fragmentos consecutivos. Ayuda a mantener el contexto cuando los fragmentos se procesan por separado.
  • Chunk Size: Longitud máxima (en caracteres) de cada fragmento. Ajusta este valor según el límite de entrada de la herramienta que usarás después.
  • Separator: El carácter que indica dónde se pueden dividir los textos. Si lo dejas vacío, se usará una nueva línea como separador por defecto.

Salidas

  • Chunks: Una lista de objetos Data, cada uno conteniendo un fragmento de texto y los metadatos originales. Esta salida se puede conectar a cualquier otro componente que acepte datos de tipo Data, como un modelo de lenguaje, un motor de búsqueda o un proceso de análisis.

Ejemplo de Uso

Supongamos que tienes un artículo de 5 000 caracteres y quieres enviarlo a un modelo de IA que solo acepta 1 000 caracteres por entrada. Puedes usar Split Text de la siguiente manera:

  1. Conecta el bloque de texto del artículo al campo Data Inputs.
  2. Configura:
    • Chunk Size = 1000
    • Chunk Overlap = 200 (para que cada fragmento comparta 200 caracteres con el siguiente)
    • Separator = \n (o deja el valor por defecto)
  3. Ejecuta el componente. Obtendrás 5 fragmentos (aproximadamente) que puedes enviar a tu modelo de IA uno por uno.

Componentes Relacionados

  • Merge Text – Une varios fragmentos de texto en un solo bloque.
  • Text to Data – Convierte texto plano en objetos Data que pueden ser procesados por otros componentes.
  • Data to Text – Extrae el contenido de los objetos Data y los muestra como texto plano.

Consejos y Mejores Prácticas

  • Elige un Chunk Size que se ajuste al límite de entrada de la herramienta que usarás después (por ejemplo, 1 000 caracteres para GPT‑3.5).
  • Usa un Chunk Overlap moderado (entre 100 y 300 caracteres) para evitar perder contexto entre fragmentos sin crear demasiados datos redundantes.
  • Ajusta el Separator según la estructura de tu texto: si tu documento está dividido por párrafos, usar \n suele ser suficiente; si está dividido por secciones, puedes usar --- o cualquier otro delimitador.
  • Revisa los metadatos: si tus objetos Data contienen metadatos, estos se conservarán en cada fragmento, lo que facilita el seguimiento de la fuente original.

Consideraciones de Seguridad

El componente procesa los datos localmente dentro del dashboard y no envía información a servicios externos. Aun así, evita incluir datos sensibles (contraseñas, claves API, información personal identificable) en los textos que envías al componente, ya que los fragmentos resultantes podrían ser almacenados o enviados a otros procesos que no estén protegidos adecuadamente.