AI가 그래프를 생성하게 할 때, 데이터뿐만 아니라 축의 범위나 라벨·여백·색상 조합 등 세부적인 지정까지 생성하게 하면 사양이 길어집니다. 데이터가 「연월」「이익」「순위」 등 무엇을 의미하는지와 만들고 싶은 차트만 간결하게 지정하고, 세부적인 표시 설정은 컴파일러에 맡길 수 있는 시각화 중간 언어 「Flint」가 공개되어 있습니다.Flint: A Visualization Language for the AI Erahttps://microsoft.github.io/flint-chart/microsoft/flint-chart: Flint is a visualization language that lets AI agents reliably create expressive, good-looking charts from simple, human-editable chart specs.https://github.com/microsoft/flint-chart◆에디터https://microsoft.github.io/flint-chart/#/editor
◆Flint로 그래프를 만들어 보기Flint가 어떻게 그래프를 생성하는지 공식 사이트의 「Editor」에 접속해 실제로 시도해 봅니다. 이번에는 데모로 2026년 1월부터 6월까지의 가상의 매출을 막대그래프로 만듭니다. Flint에서는 「data」에 그래프화할 값, 「semantic_types」에 데이터의 의미, 「chart_spec」에 작성할 그래프와 세로축·가로축에 할당할 항목을 지정합니다. 다음 JSON을 왼쪽 사이드에 있는 FLINT SPEC에 입력하면…
PREVIEW에 선택하고 있는 라이브러리의 그래프가 표시되고, OUTPUT에 FLINT SPEC의 JSON에서 선택한 라이브러리용 데이터로 변환된 데이터가 표시됩니다.
Chart.js를 선택한 경우는 다음과 같이 되었습니다.
이처럼 Flint 형식의 데이터를 준비하여 Flint 컴파일러를 거치게 하면, Vega-Lite나 ECharts 등 다양한 그래프 생성 라이브러리용 설정 데이터로 간단히 변환할 수 있습니다.
◆ Flint의 특징
・ Semantic Types: 각종 데이터를 단순한 숫자나 문자열로 다루는 것이 아니라, '매출', '연월', '순위', '온도' 등 데이터의 의미를 지정함으로써 축, 표시 형식, 색상, 집계 방법 등을 Flint 측에서 판단할 수 있습니다.
・ 자동 레이아웃: 데이터 수나 표시 영역에 따라 라벨, 여백, 막대 폭, 범례 등을 조정.
・ 복수의 렌더링 대상: Vega-Lite, ECharts, Chart.js, Plotly, Excel로 변환 가능.
・ 50가지 종류의 차트: Bar Chart, Heatmap, Waterfall, Gantt, Sankey, Sunburst, Candlestick, Map 등 50가지 종류의 차트를 다룰 수 있습니다.
・ 테마: The Economist, Nature, McKinsey 등의 테마로 외관 변경이 가능.
◆ AI 에이전트에서 MCP로 이용
Flint는 사용자가 세부적인 그래프 설정을 처음부터 작성하기 위한 언어라기보다, AI 에이전트가 그래프를 생성할 때의 중간 언어로 설계되어 있습니다. AI 에이전트는 사용자의 지시로부터 간결한 Flint 형식의 데이터를 생성하고, Flint 컴파일러가 축, 스케일, 레이아웃 등의 세부 사항을 보완하여 Vega-Lite나 ECharts 등 다양한 그래프 생성 라이브러리용 설정으로 변환합니다. 이 메커니즘을 AI 에이전트에서 이용하기 위해 MCP 서버도 준비되어 있으며, 다음 명령어로 실행할 수 있습니다.
이번에는 예시로 Claude Code를 이용하여 다음 프롬프트를 실행.
결과로 다음 JSON 파일이 생성되었습니다.
그래프화하면 다음과 같은 출력 결과가 됩니다.
프롬프트에서 "Vega-Lite용 데이터로 변환해 주세요"를 실행하자 다음 데이터가 출력되었습니다.
이처럼 Flint는 AI 에이전트가 사람의 지시로부터 간결한 시각화 명세 데이터를 작성하고, 그 내용을 Vega-Lite나 ECharts 등 다양한 그래프 생성 라이브러리용 데이터로 변환함으로써 안정적인 그래프 생성을 지원합니다.
◆ Flint의 평가
소셜 뉴스 사이트인 Hacker News에서는 Flint에 대해 다양한 논의가 이루어지고 있으며, "Semantic Types는 서식 설정 요소로서 매우 편리합니다"라는 사양에 대한 평가나 "솔직히 이 이야기의 의도를 잘 모르겠습니다. 저는 데이터 시각화에 LLM을 광범위하게 사용해 왔지만, 문제에 부딪힌 적이 없습니다."라며 애초에 중간 처리를 할 필요가 있는지에 대한 의문 등이 제기되고 있었습니다.
원문 보기 | 출처: Gigazine