Saltearse al contenido

JSON Cleaner

El JSON Cleaner es un componente sencillo que toma una cadena JSON que puede contener errores comunes (caracteres de control, codificación incorrecta, formato irregular) y la transforma en una cadena JSON válida y bien formada. Es ideal cuando recibes respuestas de un modelo de lenguaje que no siempre generan JSON perfecto y necesitas usar esos datos en tu flujo de trabajo de Nappai.

¿Cómo funciona?

El componente procesa la cadena JSON localmente, sin llamar a servicios externos.

  1. Extracción: Busca el primer { y el último } para aislar el bloque JSON.
  2. Opciones de limpieza (activables por el usuario):
    • Remove Control Characters: Elimina caracteres de control (códigos 0‑31 y 127) que pueden romper el parseo.
    • Normalize Unicode: Normaliza los caracteres Unicode a la forma NFC, asegurando consistencia en textos multilingües.
    • Validate JSON: Intenta cargar la cadena con json.loads para comprobar que ya sea válida; si falla, lanza un error.
  3. Reparación: Usa la librería json_repair (instalable con pip install json_repair) para corregir errores de sintaxis que no se pudieron arreglar con las opciones anteriores.
  4. Salida: Devuelve la cadena JSON reparada como un objeto Message, listo para ser usado en el siguiente paso del flujo.

Entradas

  • JSON String: La cadena JSON que deseas limpiar.
  • Normalize Unicode: Si está activado, se normalizarán los caracteres Unicode.
  • Remove Control Characters: Si está activado, se eliminarán los caracteres de control.
  • Validate JSON: Si está activado, se verificará que la cadena sea JSON válido antes de intentar repararla.

Salidas

  • Cleaned JSON String: Una cadena JSON que cumple con la especificación JSON y está lista para ser consumida por otros componentes o almacenada.

Ejemplo de Uso

Supongamos que un modelo de lenguaje devuelve la siguiente respuesta: json { “name”: “Juan”, “age”: 30, “bio”: “Hola,\n\t¡bienvenido a Nappai! \x07” }

  1. Configura el componente:

    • JSON String: Pega la respuesta anterior.
    • Remove Control Characters: Activado (elimina el \x07).
    • Normalize Unicode: Desactivado (no hay caracteres especiales).
    • Validate JSON: Activado (verifica que la estructura sea correcta).
  2. Ejecuta: El componente devuelve: json { “name”: “Juan”, “age”: 30, “bio”: “Hola,\n\t¡bienvenido a Nappai!” }

Esta cadena ya es válida y puede enviarse a un componente de almacenamiento, a una API externa o a cualquier otro proceso dentro del dashboard.

Componentes Relacionados

  • JSON Parser – Convierte la cadena JSON limpia en un objeto que puede ser manipulado en el flujo.
  • Data Validator – Verifica que los datos cumplan con un esquema específico después de haber sido limpiados.
  • Text Cleaner – Similar al JSON Cleaner pero para textos sin formato JSON.

Consejos y Mejores Prácticas

  • Usa siempre la opción “Validate JSON” cuando la cadena provenga de fuentes externas; evita que errores pasen desapercibidos.
  • Activa “Remove Control Characters” si notas que los datos contienen caracteres invisibles que pueden romper la visualización o el procesamiento.
  • Combina con “JSON Parser” para convertir la salida en un objeto que puedas manipular con filtros y transformaciones.
  • Revisa la salida en el panel de depuración antes de pasarla a componentes que requieran datos estrictamente estructurados.

Consideraciones de Seguridad

  • La limpieza se realiza localmente; no se envían datos a servicios externos, por lo que la información permanece dentro del entorno de Nappai.
  • Si la cadena JSON contiene datos sensibles, asegúrate de que el flujo de trabajo esté protegido con los permisos adecuados y que la salida no sea expuesta a usuarios no autorizados.