프로젝트 소개
Flint는 AI 에이전트가 간단하고 사람이 편집 가능한 차트 명세를 표현력 있고 세련된 시각화로 변환할 수 있도록 설계된 시각화 중간 언어입니다. 에이전트가 스케일, 축, 간격, 라벨, 레이아웃에 대한 장황한 파라미터를 하드코딩하도록 요구하는 대신, Flint는 고수준의 의미론적 명세, 데이터, 그리고 선택적 시각 테마(예: New York Times, Economist, Swiss, McKinsey)로부터 이러한 결정을 도출합니다. 간결한 명세는 네이티브 Vega-Lite, ECharts, Chart.js, Plotly 명세 또는 편집 가능한 Excel 차트로 컴파일됩니다.
저장소에는 두 가지 주요 구성 요소가 포함되어 있습니다:
- flint-chart: 동일한 Flint 입력을 Vega-Lite, ECharts, Chart.js, Plotly 또는 Excel 네이티브 출력으로 컴파일하는 JavaScript/TypeScript 라이브러리입니다.
- flint-chart-mcp: 에이전트가 채팅 또는 코딩 환경에서 직접 차트를 생성, 검증, 렌더링할 수 있게 해주는 MCP 서버입니다.
주요 기능은 다음과 같습니다:
- 의미론적 차트 명세: Rank, Temperature, Price, Country 등 70개 이상의 의미론적 타입을 사용하여 각 필드의 의미를 포착합니다.
- 자동 레이아웃: 데이터 카디널리티, 차트 디자인, 캔버스 제약 조건에 맞게 크기, 간격, 라벨, 마크, 범례를 조정합니다.
- 정형화된 시각 테마: 레이아웃 동작, 의미론적 프레젠테이션, 시각적 아이덴티티를 한 번 정의한 후 프리셋, 커스텀 ThemeSpec 또는 상속된 테마를 통해 차트 라이브러리 전체에 적용합니다.
- 다중 백엔드: 하나의 입력을 Vega-Lite, ECharts, Chart.js, Plotly 및 네이티브 Excel 차트에 걸쳐 백엔드 네이티브 출력으로 컴파일합니다.
- 에이전트 친화적 차트 작성: MCP 서버는 에이전트에게 Flint 도구와 차트 가이드를 제공하여 템플릿을 선택하고 검증한 후 MCP 지원 클라이언트에서 인터랙티브 차트 뷰를 열 수 있게 합니다.
최신 업데이트로는 Plotly 백엔드로 시각 테마를 확장하고 Vega-Lite Calendar Heatmap을 추가한 버전 0.5.1, 정형화된 테마 명세를 도입한 버전 0.5.0, 38개의 Plotly 차트 타입과 18개의 네이티브 Excel 차트 템플릿을 추가한 버전 0.4.0, 동적 차트 위젯을 추가한 버전 0.3.0이 있습니다.
설치는 npm을 통해 이루어집니다: 라이브러리는 `npm install flint-chart`, MCP 서버는 `npx -y flint-chart-mcp`를 사용합니다. 호스팅된 MCP 서버는 `https://flint.data-formulator.ai/mcp`에서 제공되며, VS Code의 GitHub Copilot 및 Claude와 같은 클라이언트에서 원격으로 사용할 수 있습니다.
이 프로젝트는 Microsoft Research가 중국 인민대학 IDEAS Lab과 협력하여 구축했으며, MIT 라이선스로 배포되고 기여를 환영합니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.