Microsoft представила Flint, язык визуализации для ИИ-агентов

Microsoft представила Flint, язык визуализации для ИИ-агентов

Microsoft Research представила Flint, промежуточный язык (intermediate language) для описания диаграмм, рассчитанный на то, что спецификации будут писать ИИ-агенты, а редактировать, люди. Проблема, которую решает Flint: существующие библиотеки визуализации (Vega-Lite, Apache ECharts, Chart.js) требуют либо короткой спецификации, дающей невыразительный график «по умолчанию», либо подробной, но громоздкой и хрупкой конфигурации с ручным выбором шкал, форматирования подписей и цветовых схем. Для LLM и агентов это особенно болезненно: они чаще ошибаются именно в низкоуровневых деталях, а получившийся хрупкий код сложно проверить и исправить.

Flint решает это через семантические типы данных: вместо того чтобы явно прописывать, как парсить поле с датой, как подписывать значения или какую цветовую шкалу выбрать для отрицательных и положительных чисел, агент просто указывает смысл поля (дата, цена, процент, страна, ранг и т.п.) и тип диаграммы, а компилятор Flint сам выводит парсинг, шкалы, оси, агрегации, форматирование, цветовые схемы и раскладку. Пример из статьи, тепловая карта (heatmap): вместо ручной настройки обработки поля периода, подписей по месяцам и годам, размера ячеек и цветовой шкалы для положительных/отрицательных значений newUsers, разработчик описывает только семантику данных, а остальное берёт на себя компилятор.

Важное отличие Flint от конкретных библиотек, независимость от рендер-бэкенда: одна и та же спецификация Flint может быть скомпилирована в Vega-Lite, Apache ECharts или Chart.js без переписывания графика заново, так что можно выбирать бэкенд под нужды проекта, сохраняя единый интент.

Microsoft провела исследование, сравнив Flint с базовым подходом DirectVL, где модель сразу генерирует полную спецификацию Vega-Lite, в пайплайне самооценки LLM-судьёй. На данных Tidy Tuesdays на трёх моделях Flint получил более высокие оценки: 16,27 против 15,91 у GPT-5.1, 16,16 против 15,60 у GPT-5-mini и 15,91 против 15,34 у GPT-4.1 (шкала оценки в источнике не раскрывается). Flint уже используется как движок в Data Formulator, другом проекте Microsoft Research для ИИ-ассистированного анализа и визуализации данных.

Проект открыт для использования: помимо самой библиотеки flint-chart, Microsoft выпустила flint-chart-mcp, сервер по протоколу Model Context Protocol (MCP), который позволяет агентам создавать, проверять и рендерить графики прямо в чате или в среде разработки; вызовы MCP могут передавать данные инлайном или читать локальные файлы, а сервер способен открыть интерактивный просмотр графика для проверки и доработки результата. Код и документация доступны на сайте проекта (microsoft.github.io/flint-chart) и в GitHub-репозитории microsoft/flint-chart.

Ключевые факты

  • Flint, открытый промежуточный язык для описания диаграмм, рассчитанный на генерацию ИИ-агентами и редактирование людьми
  • Вместо низкоуровневых параметров (шкалы, оси, цвета, форматирование) агент задаёт только семантические типы данных и тип диаграммы, остальное выводит компилятор
  • Одна спецификация Flint компилируется в Vega-Lite, Apache ECharts или Chart.js без переписывания
  • В сравнении с прямой генерацией Vega-Lite (DirectVL) Flint получил более высокие оценки LLM-судьи на трёх моделях: 16,27 vs 15,91 (GPT-5.1), 16,16 vs 15,60 (GPT-5-mini), 15,91 vs 15,34 (GPT-4.1)
  • Доступен MCP-сервер flint-chart-mcp для создания, валидации и рендеринга графиков агентами в чате или IDE; Flint уже используется в проекте Data Formulator

Почему это важно

Чем больше кода и конфигураций генерируют ИИ-агенты, тем острее встаёт проблема хрупких низкоуровневых спецификаций: агент либо выдаёт скучный график по умолчанию, либо путается в десятках параметров и производит нерабочий или вводящий в заблуждение результат. Flint переносит сложность из зоны, где агенты чаще ошибаются (детали рендеринга), в зону, где они сильны (распознавание смысла данных по названиям полей и значениям), и делает результат воспроизводимым сразу для нескольких библиотек визуализации.

Кому это важно

Разработчикам, которые встраивают генерацию графиков в чат-ботов, аналитические агенты и copilot-инструменты; командам данных, использующим Vega-Lite/ECharts/Chart.js и желающим давать агентам компактный, проверяемый людьми формат вместо громоздких JSON-спецификаций; исследователям и инженерам, работающим над MCP-инструментами для агентных рабочих процессов.

Как это применить

Flint выпущен как открытый проект: сама библиотека flint-chart, сайт с документацией (microsoft.github.io/flint-chart) и GitHub-репозиторий (github.com/microsoft/flint-chart). Отдельно доступен flint-chart-mcp, MCP-сервер, который можно подключить к чат- или кодинг-среде, чтобы агент создавал, валидировал и рендерил графики напрямую, передавая данные инлайном или читая локальные файлы; сервер поддерживает интерактивный просмотр для проверки результата.

Можно ли доверять

Материал, прямое сообщение исследовательского подразделения Microsoft о собственном открытом проекте, без признаков сатиры или преувеличения. Приведены конкретные числовые результаты сравнения с базовым подходом (DirectVL) на трёх разных моделях, но методика LLM-судьи и полная шкала оценки не раскрыты в самом посте, для независимой проверки нужно смотреть первоисточник исследования и код на GitHub.

Риски и подводные камни

Оценка эффективности основана на самооценке LLM-судьёй, а не на независимом бенчмарке или пользовательском тестировании, что может завышать разницу в пользу инструмента разработчика. Как и любой новый DSL, Flint добавляет ещё один слой абстракции и зависимость (MCP-сервер, компилятор) поверх уже существующих библиотек визуализации, а зрелость и стабильность проекта как open source ещё предстоит проверить сообществу на практике.