יצירת מוצרי נתונים באמצעות כישורי סוכנים
סקירה כללית
במדריך הזה נסביר איך להשתמש במיומנויות סוכנים מיוחדות של Cortex Framework – שזמינות ישירות ב-Cortex Framework במאגר GitHub – עם עוזר תכנות מבוסס-AI (כמו Gemini בשילוב עם Antigravity, מסגרת לפיתוח סוכנים) כדי ליצור מוצרי נתונים בהתאמה אישית לפי שיטות מומלצות של Cortex Framework.
Cortex Framework מספק כישורי סוכן מיוחדים כדי להרחיב את היכולות שלו, וכך עוזר לכם בתהליך של בניית מוצרי נתונים בהתאם לשיטות המומלצות של Cortex Framework. היכולות האלה מאפשרות לכם להשתמש בשפה טבעית כדי לבקש מוצר נתונים חדש על סמך דרישות עסקיות ספציפיות. לדוגמה, אפשר לבקש מוצר נתונים של צריכה של חשבונות לתשלום כדי לקבל תובנות לגבי הסכום הכולל לתשלום, סכומים שהמועד שלהם חלף ושיעור התחלופה. התוצאה היא מוצר נתונים משולב לחלוטין של Cortex Framework – שנבנה על סמך הדרישות והנתונים הספציפיים של הלקוח – ומוכן להפעלה.
המיומנויות של הסוכן
מיומנויות סוכן הן פורמט קל משקל ופתוח להרחבת היכולות של סוכני AI באמצעות ידע ותהליכי עבודה מיוחדים. בבסיס, מיומנות היא תיקייה שמכילה קובץ SKILL.md (שכולל מטא-נתונים והוראות) וגם סקריפטים, הפניות ונכסים אופציונליים שמנחים את הסוכן איך לבצע משימה ספציפית. חבילת מיומנויות מכילה ידע פרוצדורלי והקשר בתיקיות ניידות שהסוכנים טוענים לפי דרישה, ומספקת מומחיות בתחום ותהליכי עבודה שניתנים לשחזור. הכישורים של Cortex Framework מאוחסנים בספרייה .agent.
היכולות של סוכני Cortex Framework
הכלי ליצירת מוצרי נתונים מבוסס-סוכן מבצע אוטומציה של מחזור החיים של פיתוח מוצרי נתונים במסגרת Cortex. אם תתנו לעוזר ה-AI הוראות להפעיל תהליכי עבודה מובנים לפיתוח, לא תצטרכו ליצור באופן ידני מבני קבצים, לנווט בסכימות מורכבות של SAP, להגדיר שכבות בסיס, לנהל מרחבי שמות מותאמים אישית ולכתוב קוד Dataform SQLX סטנדרטי.
העוזר הדיגיטלי מבוסס ה-AI מבצע את המשימות העיקריות הבאות:
- תכנון ומיפוי דרישות: תרגום של דרישות עסקיות קונקרטיות לתוכנית פיתוח ולמודל נתונים שניתן לפעול לפיהם.
- חיפוש סכימה בזמן אמת: הרצת סקריפטים שמבצעים שאילתות בטבלאות משוכפלות של מילון הנתונים של SAP (DDIC) כדי לספק מידע הקשרי ספציפי ללקוח, כמו שדות Z מותאמים אישית.
- פיגומים של קוד boilerplate: יוצר באופן אוטומטי את כל קובצי ההגדרה, המטא-נתונים וארטיפקטים של קוד SQLX או JavaScript הנדרשים.
- שערי איכות נתונים: מאמתים מוצרי נתונים על ידי הפעלת בנייה מקומית, קומפילציה של קוד SQL, ביצוע בדיקות יחידה ובדיקות שילוב ואימות התאימות לתקני מתן שמות.
- יצירת תיעוד: יצירה אוטומטית של נכסי תיעוד, כולל הדמיה של דיאגרמות של קשרים בין ישויות (ER) ומפתחות ראשיים של מודול מוצר הנתונים.
פיתוח מוצרי נתונים באמצעות יכולות כאלה של סוכנים הוא תהליך איטרטיבי. אתם יכולים להתחיל עם היעדים הראשוניים שלכם, לבדוק את תוכנית ההטמעה שהסוכן מציע, כולל דיאגרמות ER וסכימות, ולבקש מהעוזר הדיגיטלי מבוסס ה-AI לשפר את הלוגיקה בשיחה. תוך כדי שהסוכן מאיץ את הפיתוח, אתם שומרים על שליטה מלאה ויכולים לבדוק ולאשר את כל הקוד שנוצר לפני שאתם שומרים אותו במאגר. בנוסף, מכיוון שהסקריפטים האלה מבוססי-סוכן ופועלים באופן מקומי באמצעות פרטי הכניסה המאומתים שלכם, הם מכבדים באופן מובנה את מגבלות הגישה הקיימות שלכם ל-Google Cloud ול-BigQuery.
דרישות מוקדמות
לפני שמשתמשים במיומנויות מבוססות-סוכן, צריך לוודא שסביבת הפיתוח עומדת בדרישות הבאות כדי להפעיל שאילתות סכמה בזמן אמת, איסוף נתונים ואימות אוטומטי:
Google Cloud SDK (
gcloud): מתקינים את CLI (gcloud) ומאמתים אותו באמצעות חשבון המשתמש. מידע נוסף זמין במאמרי העזרה בנושא פריסהApplication Default Credentials (ADC): מגדירים את ה-ADC המקומי ואת יעדי הפרויקט כך שכלי קומפילציה מקומיים וחבילות pytest יוכלו לתקשר עם BigQuery. מידע נוסף מופיע במאמר הכנת פרויקט ברירת המחדל Google Cloud
טבלאות מילון נתונים (DDIC) משוכפלות של SAP: כדי לאפשר לסוכן לבצע בדיקות סכמה לא תלויות רישיות ולאמת במדויק את אורכי השדות, צריך לשכפל את טבלאות המטא-נתונים הבאות של SAP במערך הנתונים הגולמי של היעד ב-BigQuery:
DD03L(שדות טבלה)DD04T(טקסטים של רכיבי נתונים)DD08L(קשרים בין טבלאות)-
DD01L(Domains) -
DD07L(ערכי דומיין – אופציונלי) DD07T(טקסטים של ערכי דומיין – אופציונלי)
סביבת Python מקומית: כדי לוודא שספריות האימות ובדיקות היחידות פועלות בצורה תקינה, צריך להתקין תלויות מקומיות ולהפעיל את כלי הסנכרון באמצעות
uv. מידע נוסף זמין במאמרי העזרה.
הגדרה והגדרת IDE
לפני שמתחילים, כדאי לעיין במסמכי התיעוד של העוזר המועדף שלכם מבוסס-AI לכתיבת קוד, כדי לקבל הוראות להתקנה ולהגדרה (לדוגמה, Antigravity).
אוספים את פריטי ההתקנה הנדרשים ומשכפלים את המאגר. מידע נוסף מופיע במאמר בנושא פריטי התקנה.
פותחים את טביעת הרגל של קוד המקור של Google Cloud Cortex Framework המשובט בכלי העזר המיועד שלכם לקידוד באמצעות AI.
Google Cloud Cortex Framework חושף את היכולות האג'נטיות שלו באמצעות קבוצה של מיומנויות מיוחדות שנמצאות בספרייה .agents/skills/ של המאגר. אפשר להשתמש במיומנויות האלה בכמה סביבות פיתוח:
Antigravity framework: Antigravity מגלה, מאנדקס ומפעיל באופן אוטומטי את כל הכישורים של Workspace בזמן ההפעלה. אין צורך לקבוע הגדרות נוספות לשם כך. כדי לבצע את האימות, אומרים לאסיסטנט:
אילו מיומנויות זמינות לך?
VSCode עם Gemini Code Assist:
- מתקינים את התוסף Gemini Code Assist מ-VS Code Marketplace.
- פותחים את התיקייה
cortex-framework-coreכסביבת עבודה. העוזר הדיגיטלי סורק ומטעין את המיומנויות באופן אוטומטי מהספרייה.agents/skills/.
כלי AI אחרים ל-CLI: אפשר להפנות לספריית המיומנויות באופן מובנה בהנחיות. לדוגמה:
Read the create-data-product skill inside the .agents/skills/ directory and scaffold...
יצירת מוצר נתונים בהתאמה אישית
בשלבים הבאים מתואר תהליך העבודה המובנה למפתחים לשימוש ביכולות של סוכנים כדי ליצור מוצר נתונים בהתאמה אישית.
שלב 1: מספקים דרישות והקשר
בממשק הצ'אט של עוזר ה-AI לתכנות, מזינים הנחיה שמתארת את דרישות הנתונים הספציפיות. לדוגמה:
יצירת מוצר נתונים של Cortex Framework ל-Accounts Payable Insights שמיועד ל-SAP S/4HANA ול-ECC. משתמשים במרחב השמות: custom_finance. הדרישה העסקית העיקרית היא לעקוב אחרי הסכומים הכוללים לתשלום והסכומים שהמועד שלהם חלף אצל הספקים שלנו, ולחשב את שיעור התחלופה של חשבונות התשלום שלנו לפי קוד חברה.
שימו לב שאפשר גם להפנות ישירות בהנחיה לדרישות קיימות או למסמכי מפרט. המסמכים האלה (שיכולים להיות בפורמט Markdown או בפורמטים מובנים אחרים) מספקים לסוכן הקשר חיוני, כמו:
- הקשר העסקי והדומיין: יעדים מפורטים, תרחישי שימוש וצרכני היעד.
- מפרטים של נתוני הקלט: רשימה של טבלאות מקור (למשל,
LFA1,BSIK,BSEG,Z...), פרטי ניהול גרסאות (ECC לעומת S/4HANA), כללי החרגה, שדות בהתאמה אישית ועוד. - לוגיקת טרנספורמציה וכללים עסקיים: אילוצי מיפוי מרכזיים, סינון לקוחות (
mandt), מחיקות רכות (loekz), מיפויי טיפול במחוון חסימת תשלומים (zlspr) וכללי התאמה (לדוגמה, החרגת טרנזקציות של ספקים בין חברות כדי למנוע שיעורי מחזור מוטים). - תקינות הנתונים וטענות הבדיקה: תרחישי אימות (לדוגמה, אימות של ייחודיות הגרעין והבטחה שסכום הסכומים של החשבוניות הפתוחות בפלט הסופי זהה בדיוק לטבלאות המקוריות הגולמיות).
שלב 2: בדיקת תוכנית ההטמעה
אחרי שתגדירו את הדרישות, הסוכן ישתמש בכמה כישורים – כמו כישור query-sap-ddic – כדי לשלוח שאילתות לטבלאות המטא-נתונים הגולמיות של DDIC ב-BigQuery. כך הסוכן יכול לזהות ולאמת את טבלאות המקור הנדרשות, ולוודא שסוגי השדות והקשרים מדויקים. הסוכן יכול גם להפעיל מיומנויות אחרות כדי לוודא שהדרישות שלכם תואמות באופן מושלם לשיטות המומלצות של Cortex Framework.
לפני שמתחילים את ההטמעה, הסוכן מספק תוכנית הטמעה קצרה לבדיקה. התוכנית הזו כוללת את טבלאות המקור, המיפויים ומבנה הארכיטקטורה המוצע של מוצר הנתונים. לפני האישור, כדאי לבדוק את התוכנית ולבקש שינויים אם צריך.
שלב 3: יצירת מוצר הנתונים
אחרי שמאשרים את תוכנית ההטמעה, הנציג משתמש במיומנות create-data-product כדי ליצור את מבנה הספרייה. כך מבודדים את הפיתוחים המותאמים אישית החדשים מעדכוני ליבת הפלטפורמה במרחב השמות המותאם אישית שמוגדר:
src/data_modules/<custom_namespace>/products/<dataproductname>/
├── manifest.yaml
├── table_settings.default.yaml
├── README.md
├── definitions/
│ └── [ecc|s4]/
│ └── <product_name>.js
└── annotations/
└── [ecc|s4]/
└── <product_name>.yaml
מידע נוסף על מבנה התיקיות ועל הקבצים השונים זמין במסמכי מדריך ההרחבות.
במהלך השלב הזה, אפשר גם לבקש מהסוכן ליצור באופן אוטומטי תרשים של היחסים באמצעות המיומנות generate-er-diagram, או ליצור הצהרות באמצעות המיומנות create-python-tests.
שלב 4: מריצים בדיקות איכות ומאמתים את הנתונים
בהתאם להרשאות שניתנו לסוכן, הוא יבצע באופן אוטומטי את שלבי האימות הבאים או יבקש מכם להריץ אותם. במהלך התהליך הזה, הסוכן יוצר דוחות סטטוס מפורטים כדי שתוכלו לבדוק את התוצאות:
- אימות בנייה: מריץ את
uv run cortex-build --config config/config.yamlכדי לוודא שכל מודלי ה-SQL שנוצרו עוברים קומפילציה בהצלחה, ומפיק סיכום של הבנייה. - הפעלת Pytest: מריץ את כל חבילת בדיקות היחידות של Python, ומפיק דוח על הפעלת הבדיקה שמאמת את הלוגיקה העסקית והטענות העיקריות.
- Linter וביקורות: משתמשים במיומנות
validate-data-productכדי לבצע בדיקות קפדניות של שוויון שדות ולוודא שהשמות עומדים בדרישות של כללי מתן השמות, ובסיום מפיקים דוח מוכנות מפורט.
שלב 5: פריסה והפעלה
אחרי שבודקים את דוחות האימות ומאשרים את הקוד שנוצר, אפשר לפרוס את נכסי המוצר של הנתונים.
- פריסת נכסים: מריצים את סקריפט הפריסה באופן מקומי (לדוגמה, uv run cortex-deploy --config config/config.yaml) כדי להעביר את ההגדרות המהודרות של מוצר הנתונים אל סביבת העבודה המוגדרת ב-Dataform.
- הפיכת נתונים למוחשיים: משלימים את תהליך העבודה הסופי אחרי הפריסה כדי להפעיל את צינורות הנתונים שנוצרו ב-Dataform, וכך הופכים את הטבלאות והתצוגות החדשות למוחשיות ישירות ב-BigQuery.
- מספק תובנות: אחרי שהמוצר מוגדר, הוא מוכן לחיבור לאפליקציות ניתוח במורד הזרם, כמו Gemini Enterprise, כדי לספק תשובות חכמות ופרקטיות לשאלות העסקיות המקוריות.
עדכון של מוצר נתונים קיים
אחרי שיוצרים מוצר נתונים מותאם אישית, לא צריך להתחיל מאפס כדי לבצע שינויים. אתם יכולים להשתמש במיומנות update-data-product כדי להוסיף שדות חדשים באופן איטרטיבי, לשנות את הלוגיקה העסקית או לשלב טבלאות מקור חדשות לגמרי. לדוגמה:
עדכון של מוצר הנתונים custom_finance AP. מוסיפים את השדה של תנאי התשלום (ZTERM) מטבלת המקור LFA1, ומוודאים שהוא ממופה בצורה נכונה לתצוגת הפלט הסופית. בסיום, מריצים את אימות הבנייה.
הסוכן יאתר את ההגדרה, יריץ שאילתה ב-BigQuery DDIC כדי למצוא את הדרישות המדויקות לגבי השדה, יערוך את קוד Dataform ויבצע את בדיקות הבנייה הנדרשות כדי לוודא שהשינוי בוצע.
שיטות מומלצות ומגבלות
- כשלים בשאילתת סכימה: אם הסוכן לא מצליח לאחזר סכימות של מטא-נתונים של SAP, צריך לוודא שפרטי הכניסה המוגדרים כברירת מחדל באפליקציה (ADC) פעילים ושהם כוללים את תפקיד IAM של BigQuery Data Viewer למערך הנתונים הגולמי של היעד.
- מגבלות הקשר: אם אתם יוצרים מוצר נתונים גדול במיוחד שכולל עשרות טבלאות, יכול להיות שהסוכן יאבד את ההקשר. כדי להגדיל את שיעור ההצלחה, כדאי לספק הוראות קטנות יותר וספציפיות (לדוגמה, להנחות את הסוכן ליצור קודם את המאפיינים ברמת הכותרת ואז להוסיף עובדות ברמת הפריט בהנחיה נפרדת).