فلینت، زبان مصورسازی مایکروسافت برای ایجنتها
خلاصهٔ کاملتر
مایکروسافت ریسرچ با همکاری آزمایشگاه IDEAS دانشگاه رنمین چین پروژهٔ فلینت رو منتشر کرده: یه زبان میانی برای مصورسازی داده. ایدهای که تو معرفی پروژه اومده اینه که نه ایجنت و نه توسعهدهنده نباید درگیر جزئیات پرگوی کانفیگ نمودار (مقیاس، محور، فاصله، برچسب، چیدمان) بشن؛ کامپایلر فلینت اینها رو از روی داده، نوع معنایی فیلدها، نوع نمودار و encodingها درمیاره.
مخزن دو بستهٔ اصلی داره: flint-chart که یه کتابخانهٔ جاوااسکریپت/تایپاسکریپته و همون ورودی واحد رو به Vega-Lite، ECharts، Chart.js، Plotly یا نمودار بومی اکسل (از طریق Office.js) کامپایل میکنه، و flint-chart-mcp که یه سرور MCP هست تا ایجنت بتونه توی همون گفتگو نمودار بسازه، اعتبارسنجی کنه و نمای تعاملی باز کنه.
هر بکاند همون ChartAssemblyInput رو میگیره و اسپک بومی همون کتابخونه رو برمیگردونه:
const spec = assembleVegaLite({
data: { values: myData },
semantic_types: { weight: 'Quantity', mpg: 'Quantity', origin: 'Country' },
chart_spec: {
chartType: 'Scatter Plot',
encodings: { x: { field: 'weight' }, y: { field: 'mpg' }, color: { field: 'origin' } },
},
});برای عوض کردن بکاند هم شکل ورودی دست نمیخوره و فقط تابع assemble عوض میشه:
const echartsOption = assembleECharts(input);
const chartjsConfig = assembleChartjs(input);
const plotlyFigure = assemblePlotly(input);از قابلیتهای شاخصش میشه به بیش از ۷۰ نوع معنایی مثل Rank، Temperature، Price و Country اشاره کرد که مشخص میکنن هر فیلد اصلاً یعنی چی، و به چیدمان خودکار که اندازه، فاصله، برچسب، مارک و لجند رو با تعداد داده و محدودیت بوم تطبیق میده. طبق فهرست تغییرات، نسخهٔ ۰.۴.۰ در ۲۴ ژوئیهٔ ۲۰۲۶ ۳۸ نوع نمودار Plotly و ۱۸ قالب نمودار بومی و قابلویرایش اکسل اضافه کرده و نسخهٔ ۰.۳.۰ ویجتهای نمودار پویا آورده.
پروژه با لایسنس MIT منتشر شده و برای اجراش Node 18 به بالا لازمه. نسخهٔ پایتونش فعلاً فقط یه پیشنمایش سورسمحور داخل همون مخزنه و هنوز بهصورت پکیج بیرون نیومده؛ مقالهٔ پژوهشی پروژه هم به گفتهٔ تیم در راهه.
نکات کلیدی:
- فلینت یه زبان میانی نموداره که کامپایلرش تنظیمات بهینه رو از داده و نوع معنایی فیلدها درمیاره
- یک ورودی مشترک، خروجی بومی برای Vega-Lite، ECharts، Chart.js، Plotly و اکسل
- بیش از ۷۰ نوع معنایی مثل Rank، Price و Country برای معنیدار کردن فیلدها
- بستهٔ flint-chart-mcp یه سرور MCP برای نمودارسازی مستقیم توسط ایجنتهاست
- لایسنس MIT، ساختهٔ مایکروسافت ریسرچ و IDEAS Lab؛ نسخهٔ پایتون هنوز منتشر نشده




