O Conversor JSON para TOON transforma JSON, CSV ou XML em TOON, uma notação mais compacta que o JSON. O formato foi pensado para gastar menos tokens em modelos de IA. É como dobrar roupas para a mala: o conteúdo é o mesmo, mas ocupa menos espaço. A conversão roda no navegador, e a tela compara tokens e caracteres antes e depois. Para medir a economia, cole um exemplo real do seu payload e compare os tokens.
Como usar o Conversor JSON para TOON
Cole o conteúdo em JSON, CSV ou XML no campo de entrada e clique em Converter; o formato é detectado sozinho, e aspas simples no JSON são convertidas. A saída em TOON aparece ao lado, com a contagem de tokens e caracteres do original e do resultado e o percentual de economia. No Conversor JSON para TOON, copie o resultado ou baixe o arquivo .toon.
Como a contagem de tokens é feita
O Conversor JSON para TOON conta tokens com o tokenizador cl100k_base, da biblioteca js-tiktoken, que a página baixa do jsDelivr ao abrir. É o tokenizador usado pela OpenAI em modelos como o GPT-4. Outros modelos dividem o texto de outro jeito, então trate o número como comparação entre os dois formatos, não como previsão exata da fatura. O verbete sobre token explica por que o português tende a gastar mais que o inglês.
Se a biblioteca não carregar, por bloqueio de rede ou extensão, os tokens aparecem como zero e só a contagem de caracteres vale.
Exemplo prático com números simples
Considere este JSON minificado: {"usuarios":[{"id":1,"nome":"Ana"},{"id":2,"nome":"Beto"}]}. São dois objetos e os campos id e nome se repetem. Pela forma tabular da especificação, a ideia equivalente em TOON é:
usuarios[2]{id,nome}:
1,Ana
2,BetoA conta de caracteres do JSON acima é 59, contando as chaves, aspas, colchetes, vírgulas e dois-pontos. O bloco TOON tem 38 caracteres se as duas quebras de linha e os quatro espaços de recuo forem incluídos. A redução literal é (59 – 38) ÷ 59 × 100 = 35,6%. Esse percentual é apenas deste exemplo e não substitui o número mostrado pela ferramenta, que usa tokens. Se você inserir espaços, quebras de linha ou nomes diferentes, a conta muda.
Como interpretar o resultado
Em usuarios[2]{id,nome}:, o número 2 declara duas linhas, e cada linha segue a ordem id e depois nome.
Quando o TOON economiza e quando quase não muda
O ganho aparece em listas de objetos com os mesmos campos, que viram uma tabela com um cabeçalho só, em vez de repetir cada chave em cada linha. Objetos aninhados e com formatos diferentes viram blocos indentados, e a diferença para o JSON encolhe. A base da comparação também pesa: a ferramenta compara com o texto exatamente como você colou, então um JSON com recuo e quebras de linha parece render mais economia do que um JSON minificado. Compare com o mesmo payload que você manda ao modelo. Se a API de destino exige JSON, mantenha JSON.
Erros comuns e como evitar
- Usar a primeira linha de um CSV como dado: ela precisa ser o cabeçalho.
- Comparar JSON formatado com TOON sem considerar recuo e quebras de linha, que também entram na comparação.
- Tratar zero tokens como economia total: isso pode indicar que o js-tiktoken não carregou. Use a contagem de caracteres como diagnóstico.
Limites e quando não usar
TOON preserva o modelo de dados do JSON, mas a ferramenta não garante que o destino aceite TOON. Ela não converte TOON de volta para JSON, não gera CSV nem XML de saída, não ordena nem valida os campos do seu esquema e não testa se o modelo entende o formato. Para uma integração que exige JSON válido, use um validador de JSON.
A saída segue a especificação oficial do formato TOON, com vírgula como separador e dois espaços por nível. O campo de entrada fica salvo neste navegador; com dados sensíveis, apague o conteúdo antes de sair. Antes de trocar o formato em produção, mande o mesmo pedido ao modelo em JSON e em TOON e compare as respostas, não só os tokens.