בארכיטקטורת ההפניה הזו תלמדו על תרחישי השימוש, חלופות העיצוב ושיקולי העיצוב כשפורסים צינור (pipeline) של Dataflow לעיבוד קובצי תמונות באמצעות Cloud Vision ולאחסון התוצאות המעובדות ב-BigQuery. אפשר להשתמש בתוצאות המאוחסנות האלה לניתוח נתונים בקנה מידה גדול ולאימון מודלים של BigQuery ML.
מסמך הארכיטקטורה הזה מיועד למהנדסי נתונים ולמדעני נתונים.
ארכיטקטורה
הדיאגרמה הבאה ממחישה את תהליך המערכת עבור ארכיטקטורת ההפניה הזו.
כפי שמוצג בתרשים שלמעלה, המידע זורם באופן הבא:
הזנה והפעלה: זה השלב הראשון בתהליך המערכת, שבו התמונות נכנסות למערכת. בשלב הזה מתרחשות הפעולות הבאות:
- לקוחות מעלים קובצי תמונות לקטגוריה של Cloud Storage.
- בכל העלאת קובץ, מערכת Cloud Storage שולחת באופן אוטומטי התראת קלט על ידי פרסום הודעה ב-Pub/Sub.
תהליך: השלב הזה מתרחש מיד אחרי שלב ההטמעה וההפעלה. לכל התראה חדשה על קלט, מתבצעות הפעולות הבאות:
- צינור הנתונים של Dataflow מאזין להודעות האלה על קלט קובץ, מחלץ מטא-נתונים של קובץ מהודעת Pub/Sub ושולח את הפניה לקובץ אל Vision API לעיבוד.
- Vision API קורא את התמונה ויוצר הערות.
- צינור הנתונים של Dataflow שומר את ההערות שנוצרו על ידי Vision API בטבלאות של BigQuery.
אחסון וניתוח: זה השלב האחרון בתהליך. בשלב הזה, אפשר לבצע את הפעולות הבאות עם התוצאות שנשמרו:
- שליחת שאילתות לטבלאות BigQuery וניתוח ההערות המאוחסנות.
- משתמשים ב-BigQuery ML או ב-Gemini Enterprise Agent Platform כדי ליצור מודלים ולבצע חיזויים על סמך ההערות המאוחסנות.
- מבצעים ניתוח נוסף בצינור Dataflow (לא מוצג בתרשים הזה).
המוצרים שהשתמשו בהם
הארכיטקטורה הזו כוללת את המוצרים הבאים: Google Cloud
תרחישים לדוגמה
Vision API תומך בתכונות עיבוד רבות, כולל הוספת תוויות לתמונות, זיהוי של פנים וציוני דרך, זיהוי תווים אופטי (OCR), תיוג של תוכן בוטה ועוד. כל אחת מהתכונות האלה מאפשרת כמה תרחישי שימוש שרלוונטיים לתעשיות שונות. המסמך הזה כולל כמה דוגמאות פשוטות לשימושים אפשריים ב-Vision API, אבל מגוון היישומים האפשריים הוא רחב מאוד.
בנוסף, Vision API מציע מודלים חזקים של למידת מכונה מאומנת מראש באמצעות ממשקי API של REST ו-RPC. אתם יכולים להקצות תוויות לתמונות ולסווג אותן למיליוני קטגוריות מוגדרות מראש. היא עוזרת לכם לזהות אובייקטים, לקרוא טקסט מודפס וכתב יד, וליצור מטא-נתונים חשובים בקטלוג התמונות שלכם.
הארכיטקטורה הזו לא דורשת אימון של מודל לפני שמשתמשים בה. אם אתם צריכים מודל מותאם אישית שאומן על הנתונים הספציפיים שלכם, Agent Platform מאפשר לכם לאמן מודל AutoML או מודל מותאם אישית למטרות של ראייה ממוחשבת, כמו סיווג תמונות וזיהוי אובייקטים. אפשר גם להשתמש ב-Gemini Enterprise Agent Platform Vision כדי ליצור סביבת פיתוח אפליקציות מקצה לקצה שמאפשרת לכם לבנות, לפרוס ולנהל אפליקציות של ראייה ממוחשבת.
חלופות עיצוב
במקום לאחסן תמונות בקטגוריה ב-Google Cloud Storage, התהליך שיוצר את התמונות יכול לפרסם אותן ישירות במערכת העברת הודעות – למשל Pub/Sub – וצינור הנתונים של Dataflow יכול לשלוח את התמונות ישירות אל Vision API.
החלופה הזו יכולה להיות פתרון טוב לתרחישי שימוש שבהם יש רגישות לזמן האחזור, וצריך לנתח תמונות בגדלים קטנים יחסית. ב-Pub/Sub, הגודל המקסימלי של ההודעה מוגבל ל-10MB.
אם אתם צריכים לעבד מספר גדול של תמונות בפעולות מקובצות, אתם יכולים להשתמש ב-API asyncBatchAnnotate שנועד במיוחד לכך.
שיקולים בתכנון
בקטע הזה מתוארים שיקולי התכנון של ארכיטקטורת ההפניה הזו:
אבטחה, פרטיות ותאימות
תמונות שמתקבלות ממקורות לא מהימנים עלולות להכיל תוכנות זדוניות. מכיוון ש-Vision API לא מבצע שום פעולה על סמך התמונות שהוא מנתח, תוכנות זדוניות שמבוססות על תמונות לא ישפיעו על ה-API. אם אתם צריכים לסרוק תמונות, אתם צריכים לשנות את צינור הנתונים של Dataflow כדי להוסיף שלב סריקה. כדי להשיג את אותה התוצאה, אפשר גם להשתמש במינוי נפרד לנושא Pub/Sub ולסרוק תמונות בתהליך נפרד.
מידע נוסף זמין במאמר בנושא אוטומציה של סריקת תוכנות זדוניות בקבצים שמועלים ל-Cloud Storage.
Vision API משתמש בניהול זהויות והרשאות גישה (IAM) לאימות. כדי לגשת ל-Vision API, לגורם המרכזי לאבטחה צריך להיות גישה מסוג Cloud Storage > Storage object viewer (roles/storage.objectViewer) לקטגוריה שמכילה את הקבצים שרוצים לנתח.
עקרונות והמלצות אבטחה שספציפיים לעומסי עבודה של AI ו-ML מפורטים במאמר AI and ML perspective: Security (נקודת מבט על AI ו-ML: אבטחה) ב-Well-Architected Framework.
הוזלת עלויות
בהשוואה לאפשרויות האחרות שצוינו, כמו עיבוד עם זמן אחזור קצר ועיבוד אסינכרוני של קבוצות, בארכיטקטורת ההפניה הזו נעשה שימוש בדרך חסכונית לעיבוד התמונות בצינורות הנתונים של הסטרימינג, על ידי קיבוץ הבקשות ל-API. הסטרימינג הישיר של תמונות עם זמן אחזור נמוך יותר שמוזכר בקטע חלופות עיצוב יכול להיות יקר יותר בגלל העלויות הנוספות של Pub/Sub ו-Dataflow. כדי לעבד תמונות שלא צריך לעבד תוך שניות או דקות, אפשר להריץ את צינור עיבוד הנתונים של Dataflow במצב אצווה. הפעלת צינור הנתונים במצב אצווה יכולה לחסוך לכם כסף בהשוואה לעלות של הפעלת צינור הנתונים של הסטרימינג.
Vision API תומך באצווה אסינכרונית של הערות לתמונות במצב אופליין לכל התכונות. הבקשה האסינכרונית תומכת בעד 2,000 תמונות בכל אצווה. בתגובה, Vision API מחזיר קובצי JSON שמאוחסנים בקטגוריה של Cloud Storage.
Vision API מספק גם קבוצה של תכונות לניתוח תמונות. המחיר הוא לכל תמונה ולכל תכונה. כדי לצמצם את העלויות, כדאי לבקש רק את התכונות הספציפיות שאתם צריכים לפתרון.
כדי ליצור הערכת עלויות על סמך השימוש החזוי, אתם יכולים להשתמש במחשבון התמחור.
עקרונות והמלצות לאופטימיזציה של עלויות שספציפיים לעומסי עבודה של AI ו-ML מפורטים במאמר AI and ML perspective: Cost optimization ב-Well-Architected Framework.
אופטימיזציה של הביצועים
Vision API הוא API שדורש הרבה משאבים. לכן, כדי לעבד תמונות בהיקף גדול, צריך לתזמן בקפידה את הקריאות ל-API. צינור הנתונים של Dataflow מטפל באוסף של בקשות API, בטיפול חלק בחריגים שקשורים להגעה למכסות וביצירת מדדים מותאמים אישית של השימוש ב-API. המדדים האלה יכולים לעזור לכם להחליט אם יש הצדקה להגדלת מכסת ה-API, או אם צריך לשנות את הפרמטרים של צינור הנתונים של Dataflow כדי להקטין את תדירות הבקשות. מידע נוסף על בקשות להגדלת המכסות ב-Vision API זמין במאמר מכסות ומגבלות.
לצינור Dataflow יש כמה פרמטרים שיכולים להשפיע על זמני האחזור של העיבוד. מידע נוסף על הפרמטרים האלה זמין במאמר פריסת פתרון לניתוח נתונים של ראייה ממוחשבת באמצעות Dataflow ו-Vision API.
עקרונות והמלצות לאופטימיזציה של ביצועים שספציפיים לעומסי עבודה של AI ולמידת מכונה מפורטים במאמר AI and ML perspective: Performance optimization ב-Well-Architected Framework.
פריסה
כדי לפרוס את הארכיטקטורה הזו, אפשר לעיין במאמר פריסת פתרון לניתוח נתונים של ראייה ממוחשבת באמצעות Dataflow ו-Vision API.
המאמרים הבאים
- מידע נוסף על Dataflow
- מידע נוסף על BigQuery ML
- מידע נוסף על מהימנות BigQuery זמין במדריך הסבר על מהימנות BigQuery.
- מעיינים ברשימת התכונות של Vision API.
- איך פורסים פתרון לניתוח תמונות באמצעות ML עם Dataflow ו-Vision API
- סקירה כללית של עקרונות והמלצות בנושא ארכיטקטורה שספציפיים לעומסי עבודה של AI ו-ML ב- Google Cloudמופיעה בפרספקטיבה של AI ו-ML ב-Well-Architected Framework.
- לדוגמאות נוספות של ארכיטקטורות, תרשימים ושיטות מומלצות, עיינו במאמר Cloud Architecture Center.
שותפים ביצירת התוכן
מחברים:
- מסוד חסן (Masud Hasan) | מנהל Site Reliability Engineering
- Sergei Lilichenko | Solutions Architect
- Lakshmanan Sethu | מנהל חשבונות טכני
תורמי תוכן אחרים:
- ג'יון קאנג (Jiyeon Kang) | Customer Engineer
- Sunil Kumar Jang Bahadur | Customer Engineer