Dominando la CLI de TOON
Si ha estado trabajando con modelos de lenguajes grandes (LLM), sabrá que JSON es la lengua franca del intercambio de datos. Sin embargo, también sabes que JSON es notoriamente "conversador". Todas esas llaves, comillas y claves repetidas consumen su ventana de contexto, aumentan la latencia y aumentan los costos de API.
Aquí es donde brilla TOON (La notación orientada a objetos). Si bien la biblioteca TypeScript es excelente para el código de aplicaciones, a veces solo necesitas hacer las cosas rápidamente en la terminal. Ya sea que esté depurando un mensaje, preparando un conjunto de datos o simplemente tenga curiosidad sobre cuánto dinero podría ahorrar en tokens, la CLI @toon-format/toon es su nuevo mejor amigo.
En esta guía, veremos cómo aprovechar la interfaz de línea de comandos de TOON para integrar la optimización de datos directamente en los flujos de trabajo de su shell.
Configuración
Una de las mejores cosas de las herramientas JavaScript modernas es que a menudo no es necesario "instalar" nada para comenzar. Si solo quieres probar TOON en un solo archivo, puedes usar npx para ejecutar el binario directamente:
npx @ formato-toon/cli input.json -o salida.toon
Sin embargo, si planea utilizar esto con frecuencia (y una vez que vea los ahorros simbólicos, probablemente lo hará), una instalación global es el camino a seguir. Le brinda acceso al comando conciso toon en cualquier parte de su sistema.
instalación npm -g @toon-format/cli
# o
pnpm agregar -g @toon-format/cli
Una vez instalado, estará listo para comenzar a reducir sus datos.
La magia de la autodetección
TOON CLI está diseñado para ser inteligente en lo que intenta hacer. Rara vez es necesario indicarle explícitamente que codifique o decodifique; Mira las extensiones de tus archivos para decidir.
Si le proporciona un archivo .json, se supone que desea codificarlo en TOON. Si proporciona un archivo .toon, cambia al modo de decodificación para devolverle JSON.
# Codifica automáticamente a TOON
toon data.json -o comprimido.toon
# Decodifica automáticamente a JSON
toon comprimido.toon -o restaurado.json
Pero donde la CLI realmente demuestra su valor es en la "filosofía Unix": pequeñas herramientas unidas libremente. Debido a que TOON CLI lee desde la entrada estándar (stdin) y escribe en la salida estándar (stdout), puede canalizar datos directamente a través de ella.
# Canaliza JSON directamente a TOON
gato conjunto de datos grande.json | toon > datos.toon
# Haz eco de un objeto rápido para ver cómo se ve en TOON
echo '{"nombre": "Ada", "rol": "admin"}' | dibujos animados
Cuando canaliza datos a través de stdin, la CLI utiliza de forma predeterminada el modo codificar. Si necesita decodificar un flujo de datos TOON provenientes de otro proceso, simplemente agregue el indicador --decode (o -d).
Análisis de ahorros de tokens
La optimización de los formatos de datos suele implicar juegos de adivinanzas. "Si elimino los espacios en blanco, ¿cuánto ahorro?" "¿Qué pasa si cambio a YAML?"
La CLI de TOON elimina las conjeturas con el indicador --stats. Al codificar, esta opción calcula el recuento estimado de tokens y le muestra los ahorros inmediatamente. Esto es invaluable cuando se hace un presupuesto para llamadas de LLM de gran volumen.
contexto de dibujos animados.json --estadísticas
Es posible que vea un resultado que indique una reducción de tamaño del 30 % o 40 %. Eso no es sólo espacio en disco; es decir, un 40% menos de latencia y un 40% menos de costo en tokens de entrada.
Ajuste avanzado: delimitadores y formato
De forma predeterminada, TOON usa comas para separar elementos de la matriz, similar a JSON. Sin embargo, los diferentes tokenizadores LLM se comportan de manera diferente con la puntuación. A veces, un carácter de tabulación o una barra vertical (|) es más eficiente que una coma.
La CLI le permite intercambiar delimitadores sobre la marcha. Si trabaja con datos tabulares, cambiar a un delimitador de tabulaciones puede hacer que la salida se vea más limpia y se procese de manera más eficiente.
Para una lista de productos, esto transforma la salida de una lista separada por comas a una estructura limpia y separada por tabulaciones que parece casi una hoja de cálculo, que muchos modelos analizan excepcionalmente bien.
# Usar pestañas para elementos de matriz
toon items.json --delimitador "\t" -o items.toon
::: consejo
Consejo profesional: Los delimitadores de tabulaciones a menudo reducen la necesidad de comillas de escape y pueden dar como resultado una mejor tokenización de datos numéricos. Si está procesando conjuntos de datos masivos, pruebe con --delimiter "\t" para aprovechar al máximo la eficiencia.
:::
Estructura de compresión con plegado de llave.
Una de las funciones más nuevas (introducida en la especificación v1.5) disponible en la CLI es Plegamiento de claves. Los datos JSON suelen estar profundamente anidados, con claves contenedoras como data.response.items que añaden profundidad estructural sin añadir significado.
La CLI le permite "doblar" estas claves anidadas en una ruta única con puntos, aplanando la jerarquía y guardando tokens en sangrías y llaves.
toon deep-structure.json --caja fuerte plegable con llave -o flat.toon
Esto transforma objetos anidados:
{ "usuario": { "perfil": { "id": 1 } } }
En una representación TOON concisa:
usuario.perfil.id: 1
Si necesita volver a convertir esto a JSON completo más adelante, puede usar el indicador --expand-paths safe durante la decodificación para reconstruir perfectamente la estructura profunda del objeto.
integración en tuberías
El verdadero poder de TOON CLI surge cuando lo encadenas con otras herramientas como curl y jq. Puede obtener datos de una API, filtrarlos hasta lo esencial y convertirlos a TOON en una sola línea, listos para pegarlos en un mensaje o enviarlos a un punto final de inferencia.
En este flujo de trabajo, obtienes los datos, extraes solo los usuarios activos, los conviertes a un formato TOON delimitado por barras verticales y obtienes un informe estadístico sobre cuántos tokens acabas de guardar.
curl -s https://api.example.com/users \
| jq '.data.active_users' \
| dibujos animados --stats --delimiter "|"
Resumen
El @toon-format/cli es más que un simple conversor de archivos; es un cinturón de herramientas para la era LLM. Al trasladar el procesamiento de datos a la línea de comandos, puede iterar más rápido, visualizar optimizaciones de inmediato e integrar formatos eficientes en tokens en sus flujos de trabajo de ingeniería existentes.
Ya sea que esté preparando documentos RAG (recuperación-generación aumentada) o simplemente intentando encajar un blob JSON masivo en una pequeña ventana contextual, pruebe la CLI. Su presupuesto simbólico se lo agradecerá.