Flint-interactive, 에이전트가 만든 차트를 클릭·필터·줌으로 탐색하게 하는 인터랙티브 시각화 언어
Flint-interactive: A language for creating interactive data visualizations
Microsoft Research가 공개한 Flint-interactive는 AI 에이전트가 생성한 데이터 시각화를 사용자가 클릭, 필터링, 줌, 하이라이트, 차트 간 상호작용으로 직접 탐색할 수 있게 하는 언어다. 저수준 시각화 코드 없이 고수준 의미 이벤트와 업데이트 연산자로 상호작용을 정의할 수 있다는 점이 핵심이다. Flint-interactive는 Flint 위에서 동작하는 인터랙티브 데이터 시각화 언어다. Flint 컴파일러가 사용자 선택을 그 의미를 담은 시맨틱 이벤트로 변환하고, 고수준 연산자가 이 이벤트에 맞춰 시각화를 갱신한다. 상호작용과 시각 요소 사이의 의존성 처리를 컴파일러가 맡아, 사용자나 에이전트는 고수준 명세만으로 복잡한 상호작용을 기술할 수 있다. 채팅 환경에서는 Flint-MCP와 MCP Apps를 통해 사용하며, 릴리스 기준으로 에이전트가 Flint 차트 명세와 함께 interaction_spec을 생성해 대화창에 인터랙티브 차트를 렌더링한다. 앱 개발자는 Flint Interactive Canvas에서 이벤트 핸들러로 시맨틱 이벤트를 받아 테이블 필터링이나 다른 차트 갱신, 애플리케이션 상태 변경을 처리할 수 있다. Flint의 프리셋을 넘어서는 상호작용은 트리거와 사용자 정의 핸들러 함수로 작성하며, 예시로 클릭한 국가를 강조하고 이름을 라벨로 표시하는 동작이 제시되었다. 기사는 기존 방식의 한계로 높은 생성 비용과 신뢰성 문제를 든다. 에이전트는 한 번의 턴으로 만족스러운 인터랙티브 시각화를 거의 만들지 못하고, 추론·코딩·디버깅을 여러 차례 반복하며 토큰과 시간을 소모한다. 또한 복잡한 인터랙티브 차트는 레이아웃이나 상호작용이 쉽게 깨지며, 이를 고치는 과정에서 새 문제가 생길 수 있다고 설명한다. 일부 시각화 라이브러리의 내장 상호작용은 맞춤형 차트를 만들기에 충분히 표현적이지 않다는 점도 함께 언급되었다.
Flint-interactive의 linked-brush 프리셋과 interaction_spec, Flint Canvas의 시맨틱 이벤트 핸들러를 사용하면 AI 에이전트가 만든 차트를 채팅이나 대시보드에서 바로 탐색 가능한 형태로 제공할 수 있다.
원문 출처
Microsoft Research Blog