Skip to content
ai agents

A nova solução da Microsoft para IAs com falhas

Agentes de IA são brilhantes em código, mas terríveis em visuais, o que resulta em gráficos quebrados e desperdício de tokens. Um novo projeto da Microsoft revela que o problema não é a inteligência do modelo, mas a linguagem que o forçamos a falar.

Sol Aguirre
A nova solução da Microsoft para IAs com falhas

O problema de geometria que a IA não consegue resolver

Grandes Modelos de Linguagem (LLMs) frequentemente tropeçam onde a precisão é mais importante. Agentes podem orquestrar sistemas de backend complexos, mas lutam com uma solicitação aparentemente simples: gerar uma única visualização de dados. O modo de falha comum envolve um LLM produzindo centenas de linhas de código Vega-Lite para um gráfico de cascata, apenas para renderizar uma página em branco ou um gráfico quebrado e inutilizável.

Essa falha comum destaca uma dicotomia fundamental: significado versus geometria. LLMs se destacam na compreensão semântica, reconhecendo que "esta coluna é mês" ou "aquela é receita". Eles compreendem o quê dos dados. No entanto, eles falham consistentemente com as decisões geométricas precisas necessárias para um gráfico funcional, como definir tamanhos de passo de axis, definir domínios de escala ou configurar espaçamento de rótulos e rampas de cores.

Para produtos voltados ao usuário, isso não é uma falha menor; é um defeito crítico. O próprio agente de análise da Microsoft, por exemplo, alcançou apenas uma taxa de sucesso de 80% para gráficos bem renderizados. Embora 80% possa parecer aceitável em alguns contextos, para os usuários finais, uma taxa de falha de um em cada cinco corrói a confiança e exige intervenção manual constante. Essa taxa de sucesso inaceitável torna o problema um desafio crítico de negócios para a adoção de IA.

Como o Flint divide o trabalho

Flint reestrutura a geração de gráficos, dividindo o problema em duas tarefas distintas. Primeiro, o LLM constrói uma semantic spec compacta de cerca de 10 linhas, focando exclusivamente no significado. Ele aproveita a biblioteca do Flint de mais de 70 semantic types — como 'quarter', 'price' ou 'percentageChange' — para descrever atributos de dados, não o layout visual.

Segundo, um compilador determinístico assume essa especificação semântica e assume total responsabilidade por todas as decisões geométricas. Essa camada dita precisamente elementos como tamanhos de passo de eixo, domínios de escala e espaçamento de rótulos, gerando uma especificação completa e correta para Vega-Lite, ECharts ou Chart.js. O LLM lida com o significado; o compilador lida com a matemática.

Testemunhar o sistema em ação revela sua elegância. Alterar uma única palavra na especificação semântica — por exemplo, mudar uma tag de coluna de 'quantity' para 'percentageChange' — aciona instantaneamente uma cascata de escolhas de design inteligentes. O compilador seleciona automaticamente uma paleta de cores divergente, reformatando valores numéricos e redimensionando o eixo, garantindo um gráfico visualmente apropriado e preciso sem intervenção adicional do LLM.

O verdadeiro projeto para futuros agentes

O Flint transcende ser apenas uma nova linguagem de gráficos. Ele atua como um estudo de caso profundo para um padrão poderoso e emergente, crucial para a construção de agentic systems confiáveis. Essa arquitetura prioriza a validação e a previsibilidade, indo além da fragilidade inerente da geração monolítica de IA. É um projeto de como a IA pode entregar resultados de forma consistente, em vez de apenas sugerir.

Em sua essência, o padrão é elegantemente simples, porém profundamente impactante: um LLM gera uma Intermediate Representation (IR) pequena e validável. Essa IR concisa, muitas vezes com apenas 10 linhas de JSON descrevendo o significado semântico, alimenta então uma Deterministic Execution Layer. Essa camada, totalmente separada do LLM, lida com todas as decisões geométricas e renderização precisa, isolando efetivamente o resultado final de alucinações do modelo.

Essa separação de responsabilidades oferece uma vantagem crítica em confiabilidade. É possível validar facilmente 10 linhas de JSON IR do Flint, verificando sua adesão a tipos semânticos específicos (por exemplo, 'quarter', 'price'). Uma verificação programática tão rápida garante que a intenção do LLM seja capturada corretamente antes que qualquer renderização ocorra. Isso contrasta fortemente com a tarefa quase impossível de validar de forma confiável mais de 100 linhas de código bruto gerado em D3 ou Vega-Lite, onde um único colchete fora do lugar pode quebrar toda a visualização.

Essa arquitetura — LLM para intenção, sistema determinístico para execução — representa uma evolução significativa nas ferramentas de IA. É o caminho pragmático para agentes em que podemos confiar, não apenas nos maravilhar. Para insights mais profundos sobre essa filosofia de design, explore o Flint: A visualization language for the AI era - Microsoft Research Blog. Essa abordagem promete desbloquear aplicações de IA muito mais robustas e verificáveis em diversos domínios.

Gostando do artigo? Receba um assim na sua caixa de entrada toda manhã.

um e-mail por dia · cancele em dois cliques · sem rastreadores de terceiros

Verificação de Realidade: Promessas vs. Produção

O Flint permanece como um projeto de pesquisa inicial, atualmente na v0.2, com bugs conhecidos onde as especificações são renderizadas de forma inconsistente entre os backends. Ele carece de um pacote Python para desenvolvedores ávidos e faltam recursos críticos:

  • mapas
  • 3D
  • gráficos de rede
  • camadas

A acessibilidade, uma preocupação fundamental, é um issue vazio no GitHub.

Usuários avançados que utilizam modelos de fronteira frequentemente conseguem criar gráficos simples de primeira, fazendo com que o Flint pareça redundante para suas necessidades. Seu verdadeiro valor surge com modelos menores e mais baratos, ou ao lidar com gráficos complexos como cascata (waterfalls) e sunbursts. Para produtos que exigem mais de 99% de confiabilidade, onde 80% de sucesso não é suficiente para os usuários finais, a abordagem determinística do Flint é indispensável.

Apesar de seu estágio inicial, o Flint mostra um impulso significativo. Mais de 5.000 downloads semanais no NPM ressaltam o interesse dos desenvolvedores. Crucialmente, ele já alimenta a ferramenta interna Data Formulator da Microsoft, sinalizando forte apoio e validação interna. Este projeto exemplifica o padrão emergente em agentes: LLMs geram uma representação intermediária pequena e validável, e então uma camada determinística lida com a execução complexa e precisa.

Perguntas Frequentes

O que é o Microsoft Flint?

O Flint é uma nova linguagem de gráficos onde um agente de IA define o 'significado' dos dados em uma especificação simples, e um compilador determinístico lida com a 'geometria' complexa para gerar gráficos de forma confiável para backends como Vega-Lite ou ECharts.

Como o Flint é diferente do Vega-Lite?

O Flint não é um substituto para o Vega-Lite; ele compila para ele. Ele atua como uma abstração de nível superior que permite que um LLM descreva 'o que' são os dados, enquanto o compilador Flint lida com o código geométrico verboso que os LLMs frequentemente erram.

Qual é a principal vantagem da abordagem do Flint?

Sua principal vantagem é a confiabilidade. Ao separar o significado da geometria e usar uma especificação pequena e validável, ele aumenta drasticamente a taxa de sucesso de gráficos gerados por IA, visando resolver o problema em que 1 em cada 5 gráficos gerados diretamente por LLMs apresenta falhas.

O Flint está pronto para uso em produção?

O Flint é um projeto de pesquisa em estágio inicial (v0.2). Embora alimente a ferramenta Data Formulator da Microsoft, atualmente ele carece de um pacote Python e de recursos avançados como mapas ou gráficos 3D, tornando-o ideal para casos de uso específicos onde a confiabilidade do gráfico é crítica.

Found this useful? Share it.

For builders

Want Stork to write one of these about your product?

Send us a URL. We use the product, form a view, and publish what we actually think — in 8 languages, labeled Sponsored, with no copy approval on your side. That last part is what makes it worth quoting.

See how it works$500 · AI tools & software only