Flint: промежуточный язык визуализации данных для ИИ-агентов
Исследователи представили Flint — инструмент с открытым исходным кодом, который помогает языковым моделям надежно генерировать сложные и эстетичные графики из кратких описаний.
Исследователи представили Flint — инструмент с открытым исходным кодом, который помогает языковым моделям надежно генерировать сложные и эстетичные графики из кратких описаний.
3 мин

Исследовательское подразделение Microsoft представило Flint — промежуточный язык визуализации, созданный специально для эпохи искусственного интеллекта. Этот инструмент позволяет ИИ-агентам преобразовывать компактные, понятные человеку спецификации в высококачественные графики. Flint берет на себя рутину по настройке дизайна, позволяя большим языковым моделям (LLM) сосредоточиться на сути данных.
Создание хорошего графика требует множества дизайнерских решений: от форматирования дат и выбора цветовой палитры до настройки отступов и осей. Современные библиотеки, такие как Vega-Lite, Apache ECharts и Chart.js, предоставляют полный контроль над этими параметрами.
Однако при работе с ИИ возникает дилемма. Если попросить модель написать короткий код, полагаясь на системные настройки по умолчанию, результат получается невзрачным. Если же требовать детальную спецификацию с выверенными параметрами, код становится слишком громоздким. ИИ-агенты часто допускают ошибки в таких сложных низкоуровневых структурах, создавая хрупкий код, который трудно читать и исправлять человеку.

A dense grid displaying a diverse gallery of data visualizations. The collection showcases over twenty different chart types, including stacked area charts, line graphs, sunburst charts, stacked bar charts, treemaps, radar charts, Sankey diagrams, dense heatmaps, diverging bar charts, candlestick charts, violin plots, a choropleth map of the United States, scatter plots, grouped bar charts, waterfall charts, and parallel coordinate plots.
Flint предлагает компромиссный подход. Вместо того чтобы заставлять ИИ прописывать каждый пиксель, язык использует семантические типы данных.
Модель определяет смысл информации (например, что колонка — это даты, цены или проценты) и базовые связи (ось X, ось Y, цвет). Далее в дело вступает компилятор Flint. Он автоматически вычисляет оптимальные масштабы, форматирование осей, агрегацию данных и цветовые схемы.
Ключевые особенности проекта:
В ходе тестирования на наборах данных Tidy Tuesdays, использование Flint показало более высокие результаты по оценке LLM-судей по сравнению с прямой генерацией спецификаций Vega-Lite моделями серии GPT.

A three-step diagram illustrating the Flint workflow from left to right. It starts with a short JSON code snippet labeled
Появление Flint отражает важный сдвиг в разработке инструментов для ИИ. Оказывается, языковым моделям гораздо проще оперировать высокоуровневыми абстракциями и семантикой, чем манипулировать точными координатами и параметрами форматирования.
Разделяя "намерение" (что мы хотим показать) и "реализацию" (как именно это нарисовать), разработчики снижают вероятность галлюцинаций и ошибок компиляции. Это классический принцип программной инженерии, который теперь применяется к взаимодействию между человеком и агентом.
Flint уже используется в проекте Data Formulator для ИИ-ассистированного анализа данных. Открытие исходного кода и предоставление готового MCP-сервера означает, что в ближайшее время мы можем увидеть интеграцию этого стандарта во множество аналитических инструментов.
В долгосрочной перспективе подобные промежуточные языки могут стать стандартом де-факто для любых задач, где ИИ должен взаимодействовать со сложными визуальными или пользовательскими интерфейсами.
Flint решает проблему некачественной генерации графиков нейросетями, выступая умным посредником между кратким промптом и сложными библиотеками визуализации.
Языковым моделям значительно проще определить смысловую нагрузку данных (например, распознать валюту), чем математически высчитывать правильные отступы и цвета для осей координат.