מתי תזדקק לזה
רישום מזון ידני הוא המקום שבו הרגלי תזונה טובים הולכים למות. כדי לרשום צלחת של קארי עוף בדרך הישנה, משתמש מחפש "קארי עוף", גולל רשימה, מנחש גודל מנה, וחוזר על הפעולה עבור כל פריט בצלחת. זה מדויק בתיאוריה וננטש בפועל – החיכוך עולה על המוטיבציה.
המצלמה מקצרת את כל התהליך. כוון טלפון לארוחה, ושניות לאחר מכן מתכונים תואמים עם ערכים תזונתיים מלאים מוכנים לרישום. תבנית זו מרוויחה את מקומה כאשר לכידת נתונים היא החסם בין המשתמשים לבין ערך המוצר שלך – כאשר "פשוט צלם תמונה" יכול להחליף הזנה ידנית רב-שלבית. זה סוג הבעיה שיושב בדיוק במרחב שבו שירותי פיתוח AI של MicrocosmWorks פועלים: הפיכת מודל בעל יכולות טכניות לצינור נתונים המפחית חיכוך אמיתי.
סקירת התבנית
תמונה הופכת לארוחה מתועדת וכמותית בארבעה שלבים:
- לכידה – צילום או בחירת תמונה; אופטימיזציה שלה במכשיר לפני העלאה.
- ראייה – מודל ראייה מזהה את המנה, המבוטא כביטויי חיפוש מדורגים ולא כתגיות גולמיות.
- התאמה – ביטויים אלו מניעים חיפוש מתכונים שדירוגו יורש את ביטחון המודל.
- תיעוד – המשתמש בוחר מתכון, רואה מרכיבים וערכים תזונתיים, בוחר כמות, ושומר.
הרעיון המרכזי: ראייה וחיפוש אינן מערכות נפרדות המחוברות בכוח. מודל הראייה מונחה לייצר בדיוק את מה שמנוע החיפוש רוצה, ומנוע החיפוש סומך על הסדר שהמודל מייצר. ההבחנה בין "מה שאנו מציגים" לבין "מה שיש בתמונה" נעלמת.
ארכיטקטורת ייחוס
לכידה, ממוטבת במכשיר. תמונות משתנות לגודל של כ-512px רוחב ונדחסות לאיכות JPEG של כ-40% לפני העלאה – ל-vision APIs יש מגבלות גודל קשיחות, ותמונה גולמית מהטלפון חורגת מהן. השרת אוכף מגבלת 2MB כגיבוי.
ראייה: המודל כותב את החיפוש. התמונה נשלחת ל-GPT-4o. הפרומפט מבקש חמישה שמות מתכונים ניתנים לחיפוש, המסודרים מהביטחון הגבוה ביותר ועד לגיבוי הרחב ביותר – מתן שם למנה כולה, לא לתוספות שלה – במקום "איזה אוכל זה?" המבורגר יוחזר כך:
["cheeseburger", "beef burger", "cheese burger", "hamburger", "burger"]התאמה: ביטחון הופך לרלוונטיות. חמשת השמות מופעלים כחיפוש "match-any" כנגד אינדקס מתכונים ב-Elasticsearch, כאשר כל אחד נושא חיזוק משוקלל לפי מיקום (מ-50× ועד 5×). מתכון בשם צ'יזבורגר מדורג גבוה יותר מ-בורגר גנרי לא מסטטיסטיקות טקסט, אלא מכיוון שהמודל היה בטוח יותר. חמישה ביטויים בהתאמת OR פירושם שהמשתמש כמעט תמיד רואה משהו; החיזוקים דוחפים את הניחוש הטוב ביותר לראש הרשימה.
תיעוד: מכרטיס מתכון לארוחה כמותית. מרכיבים – המאוחסנים כטקסט רגיל, הפניות מנוהלות והפניות חיצוניות ל-FatSecret – מנורמלים לרשימה נקייה אחת. המשתמש בוחר יחידה וכמות; קלוריות ומאקרו-נוטריינטים מחושבים תוך כדי תנועה והארוחה נשמרת ליומן שלו.
מסלול שני למרכיבים גולמיים. כאשר אין מנה לחיפוש, API ייעודי לזיהוי מזון מחזיר נתונים תזונתיים ישירות – זול ויעיל יותר ממודל ראייה כללי. האפליקציה מנתבת לפי כוונה.
החלטות תכנון & פשרות
הנחיית המודל לפורמט הקלט של המערכת הבאה. שמות מדורגים, ניתנים לחיפוש – לא תגיות חופשיות – הופכים את ההעברה נקייה. הפרומפט הוא חלק מהחוזה; אנו מתייחסים אליו כקוד, לא כטקסט.
רשת רחבה עדיפה על ניחוש יחיד הטוב ביותר. חמישה ביטויים בהתאמת OR מפחיתים באופן דרמטי את המופעים של "לא נמצאו תוצאות", במחיר של תוצאות לא קשורות מדי פעם בהמשך הרשימה.
אופטימיזציה לתמונה היכן שהיא נוצרה. דחיסה במכשיר חוסכת זמן העלאה ומונעת חריגה ממגבלות API, במחיר של תלות קטנה בצד הלקוח – שווה את זה לאמינות ניידת בעולם האמיתי.
המודל הנכון, למשימה הנכונה. מודל ראייה כללי מצטיין ב"איזו מנה זו?" והוא מיותר עבור "כמה קלוריות יש בתפוח הזה." שני מסלולים שולטים בעלויות ומשפרים את התוצאות.
טיפול בכשלים בכנות. אין זיהוי, אין התאמה – האפליקציה אומרת זאת במפורש ומציעה חיפוש ידני במקום להעמיד פנים או לשבור את הרצף.
אמצעי הגנה כמו הגבלת קצב, מגבלות העלאה וכשל חסד (graceful failure) עומדים איתן רק כאשר התשתית מתחת בנויה לכך – סוג התשתית ששירותי תשתית הענן של MicrocosmWorks נועדו לספק.
מתי להשתמש בו – ומתי להימנע ממנו
השתמש בתבנית זו כאשר לכידה ידנית היא החסם האמיתי, תמונה יכולה להחליף הזנה רב-שלבית, יש לך קטלוג להתאים אליו, ו"טוב מספיק, באופן מיידי" עדיף על "מושלם, בסופו של דבר." הימנע מכך כאשר התחום דורש דיוק ברמת מעבדה, אין קטלוג להתאים אליו, עלויות ה-vision API עולות על המעורבות שנצברה, או שהקלטות מעורפלות מדי מבחינה ויזואלית מכדי לזהות אותן באופן מהימן.
הגישה שלנו
האינסטינקט ב-Computer Vision הוא לרדוף אחרי מודל המזהה את המזון בצורה מושלמת. המנוף האמיתי נמצא במקום אחר: באופן שבו פלט הראייה מתחבר לכל מה שבהמשך הצינור. הנחה את המודל לדבר בשפת מנוע החיפוש, תן לביטחון שלו להפוך לדירוג, נרמל את הבלגן מאחורי הקלעים – וכל העניין מתמזג לכמה הקשות בודדות. הניצחון אינו מסווג חכם יותר; זהו צינור נתונים ללא תפרים.
בונים משהו דומה? חקור את פתרונות AI agent של MicrocosmWorks או צור קשר כדי לדון בארכיטקטורת צינור הנתונים שלך.
בלוגים נוספים
1. חיפוש מתכונים מותאם אישית: אחזור שיודע מה עליך לאכול הלאה
2. האצת פלטפורמת בריאות דיגיטלית באמצעות Microservices
3. סנכרון Apple Health ו-Health Connect

