TOON: o formato de dados compacto para trabalhar com LLMs

o-que-e-toon
Lucas Ribeiro Mata
Lucas Ribeiro Mata

Compartilhe

Trabalhar com modelos de linguagem envolve um desafio constante: como transmitir dados de forma eficiente sem comprometer a clareza das informações? 

Formatos tradicionais como JSON, apesar de amplamente utilizados, tendem a aumentar o consumo de tokens e, consequentemente, os custos de processamento. 

Em aplicações que lidam com grandes volumes de dados, essa ineficiência pode se tornar um problema significativo.

O TOON surge como uma solução prática para esse cenário. Trata-se de um formato de dados projetado especificamente para otimizar a comunicação com LLMs, reduzindo redundâncias sem perder a estrutura ou a legibilidade.

Isso torna as interações com modelos de IA mais rápidas, econômicas e assertivas.

Neste artigo, você vai conhecer como o TOON funciona, entender suas vantagens em relação a formatos convencionais e descobrir em quais situações ele se mostra mais eficiente. 

O que é TOON?

TOON é um formato de dados pensado para representar informações de forma compacta e fácil de interpretar, principalmente por modelos de IA dedicados ao processamento da linguagem natural (Large Language Models - LLMs). 

O termo “TOON” é um acrônimo criado a partir de Token Oriented Object Notation e seu objetivo é simples: reduzir o número de tokens necessários para transmitir dados sem perder clareza ou estrutura.

Uma alternativa mais eficiente ao JSON

O TOON segue o mesmo modelo de dados do JSON, mas elimina repetições desnecessárias. Em vez de escrever os nomes dos campos em cada item de uma lista, o formato declara esses campos uma única vez e organiza os registros como linhas em uma tabela. Isso torna os dados mais curtos e mais fáceis de serem analisados.

Banner da Alura anunciando o Último Deploy do Ano com até 40% de desconto nos cursos. A imagem convida quem ainda tem metas para o fim do ano a transformar esse momento em uma oportunidade de fazer upgrade na carreira em tecnologia. Há destaque para a oferta por tempo limitado e um botão com a chamada “Matricule-se com desconto”. Promoção da Alura para estudar programação, dados, design e tecnologia com desconto especial.

Como funciona o TOON?

O TOON combina três ideias conhecidas:

  • Indentação do YAML para objetos aninhados
  • Listas compactas para arrays simples
  • Formato tabular semelhante ao CSV para listas de objetos uniformes

Para entender melhor, vamos analisar um mesmo conjunto de dados representado em JSON e depois em TOON:

Representação em JSON:

```
{
  "users": [
    { "id": 1, "name": "Alice", "role": "admin" },
    { "id": 2, "name": "Bob", "role": "user" }
  ]
}
```

Repare que o JSON precisa repetir "id", "name" e "role" em cada item da lista.

Representação em TOON:

```
users[2]{id,name,role}:
  1,Alice,admin
  2,Bob,user
```

Aqui, o TOON declara:

  • [2]: o número de itens da lista
  • {id,name,role}: os nomes dos campos
  • Cada linha seguinte representa um registro, de forma compacta e direta

Esse padrão reduz tokens, facilita a leitura da estrutura e contribui para que modelos de linguagem recuperem informações com mais precisão.

O TOON é utilizado como uma camada de tradução: você mantém o JSON nos sistemas e converte para TOON apenas quando precisa enviar dados para um modelo de linguagem. 

Essa abordagem reduz custos, melhora a eficiência e ajuda o modelo a compreender a estrutura com menos ambiguidade.

Qual é a importância do TOON no uso com LLMs?

O uso de modelos de linguagem envolve sempre um custo relacionado à quantidade de tokens enviados na entrada. 

Formatos tradicionais como JSON, YAML ou XML tendem a ser verbosos, repetindo chaves e estruturas em praticamente todos os registros. Isso aumenta o tamanho da entrada e, como consequência, o custo e o tempo de processamento.

O TOON surge como uma alternativa mais eficiente para representar dados estruturados, pois reduz essa redundância sem perder a organização nem a clareza. 

Ao declarar a estrutura apenas uma vez e transmitir os registros de forma direta, ele diminui significativamente o número de tokens necessários para representar a mesma informação.

Eficiência na comunicação

Benchmarks mostram que o TOON usa menos tokens e ainda mantém ou até melhora a precisão das respostas quando comparado a outros formatos. 

Isso acontece porque o modelo recebe dados mais limpos e com estrutura explícita, o que reduz as chances de ambiguidades na hora de recuperar informações.

Maior confiabilidade na interpretação dos dados

O TOON também adiciona elementos que ajudam o modelo a entender e validar a estrutura, como:

  • O número total de itens de uma lista
  • O conjunto de campos presentes em cada linha

Essas informações permitem detectar truncamentos, inconsistências ou formatos inválidos. Isso aumenta a segurança ao trabalhar com dados extensos, evitando que o modelo responda com base em informações incompletas.

Redução de custos

Ao diminuir a quantidade de tokens na entrada, o TOON:

  • reduz o custo da chamada ao modelo
  • melhora o tempo de resposta
  • torna a interação mais eficiente, especialmente em cenários que envolvem grandes conjuntos de dados

Essa economia é especialmente relevante em aplicações que precisam enviar vários documentos ou representam dados tabulares volumosos, como registros de usuários, catálogos de produtos e logs de eventos.

Como funciona o ciclo de conversão entre JSON e TOON

O TOON não substitui o JSON no desenvolvimento de sistemas. Em vez disso, ele funciona como uma camada adicional usada apenas quando você precisa enviar dados para um modelo de linguagem de forma mais compacta e eficiente. O ciclo de conversão entre os dois formatos é simples e totalmente reversível.

A etapa mais comum do ciclo é converter dados existentes em JSON para TOON antes de enviá-los a um modelo de linguagem. 

Essa conversão remove repetições, agrupa campos de forma tabular e reorganiza a estrutura para reduzir tokens.

Exemplo: JSON de entrada

```
{
  "users": [
    { "id": 1, "name": "Alice", "role": "admin" },
    { "id": 2, "name": "Bob", "role": "user" }
  ]
}
```

Resultado em TOON

```
users[2]{id,name,role}:
  1,Alice,admin
  2,Bob,user
```

A conversão identifica automaticamente que users é uma lista uniforme e aplica o formato tabular. Objetos aninhados ou listas simples seguem outros padrões do TOON.

A conversão inversa faz o caminho natural: transforma um documento TOON em JSON novamente. Esse processo reconstrói todos os objetos e listas com fidelidade.

Exemplo de TOON de entrada

```
product[2]{id,name,price}:
  10,Notebook,5400
  11,Mouse,150
```

Resultado em JSON

```
{
  "product": [
    { "id": 10, "name": "Notebook", "price": 5400 },
    { "id": 11, "name": "Mouse", "price": 150 }
  ]
}
```

A recuperação garante que os dados retornem ao formato esperado pelos sistemas, mantendo compatibilidade com APIs, serviços e bancos de dados.

O ciclo é totalmente estável: converter de JSON para TOON e depois voltar para JSON preserva todas as informações. 

Esse aspecto torna o TOON uma camada segura para comunicação com modelos de linguagem, sem comprometer o funcionamento dos sistemas que dependem do formato original.

Tipos de dados que mais se beneficiam do TOON

O TOON foi projetado para lidar muito bem com certos padrões de dados. Embora ele seja compatível com qualquer estrutura representada em JSON, alguns formatos se destacam por aproveitar melhor suas características. 

A seguir, apresentamos os tipos de dados que mais se beneficiam da compactação e da clareza estrutural oferecidas pelo TOON.

Dados tabulares com estrutura uniforme

Listas onde todos os itens possuem os mesmos campos representam o cenário ideal para o TOON. O formato evita a repetição dos nomes das chaves e transforma cada registro em uma linha compacta, resultando em economia significativa de tokens.

Exemplos comuns incluem:

  • listas de usuários
  • catálogos de produtos
  • registros de logs com campos fixos
  • métricas e eventos estruturados

Esses formatos alcançam níveis próximos ao CSV em termos de compacidade, mas com a vantagem de manter a estrutura explícita.

Arrays simples com valores primitivos

Listas formadas por valores únicos, como números ou strings, também se beneficiam do TOON. O uso de notação direta, sem aspas desnecessárias, ajuda a reduzir o tamanho da entrada e facilita a interpretação pelos modelos.

Exemplos:

  • listas de nomes
  • sequências numéricas
  • status e categorias simples

Objetos com campos estáveis

Objetos que mantêm uma estrutura previsível, mesmo com informações aninhadas, podem ser representados de forma mais legível no TOON, aproveitando a indentação semelhante ao YAML. 

Essa organização favorece a compreensão de relações hierárquicas por parte dos modelos de linguagem.

Exemplos:

  • configurações de sistemas
  • preferências de usuário
  • dados de contexto

Conjuntos de dados usados em consultas por LLMs

Cenários onde um modelo de linguagem precisa localizar valores, filtrar registros, contar itens ou reconhecer campos ganham em precisão quando os dados seguem uma estrutura explícita. 

A presença da declaração de quantidade e dos nomes dos campos ajuda o modelo a validar consistência e evitar interpretações equivocadas.

Aplicações típicas incluem:

  • análises de datasets
  • comparações entre registros
  • extração de informações específicas em tabelas grandes

Qual é o tipo de dados que menos se beneficia com TOON?

Algumas estruturas complexas não exploram o melhor do TOON. Dados profundamente aninhados, altamente heterogêneos ou com campos variáveis tendem a apresentar pouca economia de tokens. Nessas situações, JSON compacto tende a ser mais eficiente.

Ferramentas do TOON

O uso do TOON no dia a dia se torna ainda mais simples graças ao conjunto de ferramentas que compõem o seu ecossistema. 

Essas ferramentas ajudam a converter dados, validar documentos, testar estruturas e integrar o formato em diferentes tipos de aplicações.

Biblioteca oficial em TypeScript

A forma mais prática de trabalhar com TOON em aplicações é por meio da biblioteca oficial em TypeScript, publicada no npm. 

Ela permite converter dados de JSON para TOON e também fazer o caminho inverso.

CLI para uso rápido

O TOON também oferece uma CLI que facilita a conversão de arquivos sem necessidade de escrever código. A ferramenta pode ser usada diretamente com npx ou instalada globalmente. 

A CLI é relevante para pipelines, scripts de automação e para quem deseja testar o formato rapidamente sem configurar um projeto.

Playground interativo

O projeto disponibiliza um playground online onde você pode colar um JSON, visualizar a conversão imediata para TOON e editar os dados para ver o comportamento em tempo real. 

Esse recurso é ideal para aprendizado, testes rápidos e validação de estruturas mais complexas.

Implementações e integrações

O ecossistema do TOON está em expansão e já conta com implementações e ferramentas adicionais criadas pela comunidade. Entre os recursos disponíveis estão:

  • validadores de estrutura
  • conversores para diferentes linguagens
  • utilitários para análise de tokens
  • ambientes de teste para prompts com modelos de linguagem

O formato é simples e determinístico, o que facilita a criação de integrações com ferramentas e frameworks que dependem de representação eficiente de dados.

Resumo sobre TOON

O TOON surge como uma alternativa moderna para representar dados de forma compacta e clara, especialmente em cenários que envolvem interação com modelos de linguagem. 

A combinação de legibilidade, economia de tokens e estrutura explícita torna o formato uma escolha interessante para quem trabalha com conjuntos de dados extensos e consultas realizadas por IA.

A possibilidade de converter facilmente entre JSON e TOON preserva a compatibilidade com sistemas existentes, enquanto os ganhos de eficiência ajudam a reduzir custos e melhorar o desempenho. 

O ecossistema de ferramentas, incluindo a biblioteca oficial, a CLI e o playground, facilita a adoção do formato no dia a dia.

O TOON ainda é uma proposta em evolução, mas já demonstra benefícios concretos para aplicações que dependem de modelos de linguagem. 

Com o avanço do ecossistema, a tendência é que ele se torne cada vez mais presente em fluxos de trabalho que exigem representação de dados precisa, compacta e confiável.

Aprenda mais sobre Inteligência artificial

Em poucas horas, você vai dominar LangChain, LangGraph, Llama 3 e Hugging Face e aprender a conectar LLMs a dados reais, criar agentes inteligentes e evitar alucinações. Tudo de forma prática, para que você saia com um projeto prático para seu portfólio. 

Além de acelerar seu aprendizado, você ainda garante um certificado da Alura para fortalecer seu perfil profissional. Acesse agora a página do flash skills e matricule-se!

Além disso, temos também nossas carreiras de inteligência artificial que reúnem conteúdos de diferentes níveis para você avançar no mundo da IA.

FAQ | Perguntas frequentes sobre TOON

1. O TOON é um padrão oficial ou apenas uma proposta experimental?

Não. O TOON não é um padrão oficial como JSON ou XML. Ele é uma proposta aberta, criada especificamente para otimizar a comunicação com LLMs. Isso significa que pode evoluir rapidamente, mas também exige critério na adoção em ambientes críticos.

2. Posso usar TOON diretamente como formato de armazenamento em banco de dados?

Não é recomendado. O TOON foi pensado para transmissão e contexto de prompts, não como formato de persistência. Bancos de dados, APIs e contratos de sistema continuam funcionando melhor com JSON ou formatos tradicionais.

3. Existe risco de o modelo interpretar errado um TOON mal formatado?

Sim. Por ser mais compacto, erros de formatação podem ter impacto maior. Campos fora de ordem, linhas inconsistentes ou contagens incorretas podem confundir o modelo. Por isso, validação automática é essencial antes do envio.

4. O TOON é compatível com qualquer LLM?

Sim, porque ele não depende de recursos proprietários. No entanto, modelos mais recentes e com melhor compreensão estrutural tendem a extrair mais valor do formato do que modelos menores ou mais antigos.

Lucas Ribeiro Mata
Lucas Ribeiro Mata

Engenheiro, pesquisador, consultor e educador com atuação interdisciplinar em IA, IoT, robótica e DevOps. Atua em projetos de P&D no CITI-USP com foco em inteligência artificial e sistemas embarcados. Atua como consultor em projetos de transformação digital e como professor na FIAP. Doutorando em Engenharia Elétrica pela Escola Politécnica da USP, possui mestrado em Engenharia Elétrica pela Escola Politécnica da USP/University of Twente e graduação em Engenharia Mecânica pela UFRJ.

Veja outros artigos sobre Programação