מערכת BI ואנליטיקה מבוססת AI
דשבורד ניהולי חי לנתוני שיווק ומכירות, עם שכבת AI שמנתחת, מסבירה ומייצרת דוחות מתוך הנתונים בזמן אמת.

סקירה כללית
מערכת full-stack שמתחברת ל-Google Sheets כמקור נתונים חי, ומציגה דשבורד ניהולי מלא לנתוני שיווק ומכירות. המערכת משלבת שכבת AI שמנתחת ביצועים, עונה על שאלות בשפה חופשית, מפיקה דוחות אוטומטיים, ואף יוצרת תמונות מבוססות-נתונים - הכל מעודכן בזמן אמת מול מקור הנתונים החי.
הבנייה בוצעה בלוח זמנים קצר במיוחד (שבוע עבודה) למערכת מקצה לקצה: מקור נתונים חי, דשבורד, שכבת AI ופריסה לפרודקשן. הנתונים העסקיים היו 'מלוכלכים' בכוונה - ערכים חסרים וגרנולריות שבועית לא אחידה - מה שחייב טיפול זהיר כדי לא לעוות מדדים. בנוסף נדרש שילוב בזמן אמת של שלושה API-ים חיצוניים (Google Sheets, Claude, Gemini), כאשר הדרישה הקריטית ביותר הייתה שכל תשובה של ה-AI תתבסס אך ורק על נתונים אמיתיים - ללא שום מקום להזיות, מכיוון שהמערכת נותנת המלצות עסקיות בפועל. לצד זאת נדרש מודל הרשאות מבוסס-תפקיד (ניהול מול מכירות) שנאכף בפועל בצד השרת, ולא רק מוסתר בממשק.
פיתוח מערכת Next.js מלאה (TypeScript, App Router) פרוסה ב-Vercel עם CI/CD אוטומטי - כל push לריפו מייצר דיפלוי חדש:
- •שכבת נתונים חיה: סנכרון חד-כיווני מ-Google Sheets (Service Account, קריאה בלבד) למסד Postgres (Neon), עם עדכון מבוסס מזהה-שורה שמונע כפילויות ומטפל בשורות חדשות או משתנות בגיליון המקור.
- •דשבורד אינטראקטיבי: 10 מדדים מרכזיים ו-7 גרפים, סינון מלא, השוואה אוטומטית בין תקופות, והתראות סף מוגדרות-משתמש.
- •ארכיטקטורת AI מונעת-נתונים (Digest Pattern): כל קריאה ל-AI - ניתוח, שאלה חופשית, דוח או בניית פרומפט לתמונה - מקבלת אך ורק סיכום JSON קומפקטי שמחושב בשרת מתוך הנתונים המסוננים כרגע, ולעולם לא שורות גולמיות. וולידציה בצד שרת מסננת כל ישות שה-AI מזכיר ואינה קיימת בפועל בנתונים, כך שלא ניתן למודל 'להמציא' תוצאה.
- •פלט מובנה ויצירת תוכן: תשובות ה-AI מוחזרות דרך function calling עם JSON Schema קשיח ולא כפרוזה חופשית שדורשת פרסור שביר; צנרת דו-שלבית בונה פרומפט מבוסס-נתונים אמיתיים (למשל הקמפיין המוביל והמספרים שלו) ורק אז שולחת אותו למודל יצירת תמונה.
- •הרשאות מבוססות-תפקיד באכיפה מלאה: שני תפקידי משתמש (ניהול ומכירות), עם אכיפה בצד השרת על כל שאילתת נתונים - כולל הגנה מפני ניסיון עקיפה ידני של פרמטרים בבקשת API - לצד ייצוא PDF ו-CSV ורענון נתונים מתוזמן.