פיתוח תכונות של AI גנרטיבי באפליקציה בדרך כלל כולל שימוש במודלים שונים, בממשקי API ובארכיטקטורות שונות:
- מיקום ההפעלה: איפה המודל פועל? במכשיר, בענן או בשניהם?
- מורכבות: עד כמה ההגדרה מורכבת? האם אתם מבצעים קריאה אחת להסקת מסקנות או שאתם צריכים תהליך יותר מבוסס-סוכן?
- באפליקציה או במערכת Android: האם התכונה צריכה להיות מובנית באפליקציית Android או שהיא מתאימה יותר לשילוב במערכת Android?
בסדרת הפוסטים הזו בבלוג נסביר על האפשרויות האלה. במהלך המדריך נצא למסע שמתחיל באפליקציה בסיסית לנייד והופך אותה לחוויה מותאמת אישית, חכמה ומבוססת-סוכן.
Jetpacker: אפליקציית הדגמה לנסיעות
Jetpacker היא אפליקציה טכנית לדוגמה שהצוות שלנו בנה מאפס לכנס Google I/O השנה (האפליקציה נבנתה באמצעות Antigravity). המהות של Jetpacker היא לעזור למשתמשים לתכנן את ההרפתקה הגדולה הבאה שלהם, לחקור אותה וליהנות ממנה. מוצגות בו סקירה כללית של הנסיעות, מסלול הנסיעה של כל נסיעה ופרטים של כל אירוע בנסיעה. כמובן, תוך הקפדה על כל השיטות המומלצות לפיתוח ל-Android, כולל עיצוב ממשק משתמש יפהפה וייחודי של Material.
והכי חשוב? הוא קוד פתוח לחלוטין!
היום אנחנו מפרסמים סדרה של פוסטים טכניים בבלוג שמתעמקים בכל אחת מהתכונות האלה. נציג שלבי הטמעה מפורטים, קטעי קוד ותובנות לגבי ארכיטקטורה שיעזרו לכם ליצור אפליקציות חכמות משלכם ל-Android.
בינה מובנית במכשיר
השימוש במודל שמובנה במכשיר לא כרוך בעלויות נוספות של הסקת מסקנות בענן, לא מחייב חיבור לאינטרנט ומאפשר למשתמשים להיות בטוחים שהמידע הפרטי שלהם יעבור עיבוד באופן מקומי במכשיר, בלי שהנתונים שלהם יישלחו לענן.
ב-Jetpacker, בחרנו בהסקת מסקנות במכשיר לשלוש מהתכונות שלנו:
- התכונה סקירת הנסיעה הופכת מסלול נסיעה מבולגן של כמה ימים לסיכום תמציתי ושימושי. הוא משתמש ב-Gemini Nano דרך ממשקי ה-API של ML Kit GenAI כדי לעבד נתונים באופן מקומי במכשיר. אנחנו רואים בתכונה הזו תוספת נחמדה, אבל לא רוצים לשלם עלויות נוספות בענן, ולכן הסקת מסקנות במכשיר היא הבחירה הנכונה.
- הכלי למעקב אחרי הוצאות מחלץ באופן אוטומטי נתונים מובנים מתמונות של קבלות, כדי לעזור למשתמשים לעקוב אחרי ההוצאות שלהם בנסיעות. הוא משתמש ביכולות המולטי-מודאליות של Gemini Nano 4 באמצעות ממשקי ה-API של ML Kit GenAI. בחרנו בפתרון במכשיר כדי שמידע רגיש מבחינת פרטיות שמופיע בתמונות הקבלות לא ייצא מהמכשיר של המשתמש.
- יומן האודיו מקליט, מתמלל ומסווג את ההערות הקוליות לפעילויות רלוונטיות בטיול. הוא מבוסס על זיהוי הדיבור של ML Kit ועל ממשקי ה-API של הנחיות ל-AI גנרטיבי. בחרנו בפתרון שפועל במכשיר מטעמי פרטיות וקישוריות.
הסקת מסקנות בענן ובסביבה היברידית
לפעמים תרצו להשתמש במודלים של AI עם ידע רחב יותר על העולם או עם חלון הקשר גדול יותר, ועם יכולת טובה יותר לטפל במשימות מורכבות. במקרה כזה, אפשר לעבור מהרצת מודל במכשיר לשימוש במודל בענן.
לחלופין, אם אתם רוצים ליהנות מהיתרונות של שתי האפשרויות, אתם יכולים להשתמש בהסקת מסקנות היברידית כדי לבחור באופן דינמי בין מודל בענן לבין מודל במכשיר בזמן הריצה. כך אנחנו יכולים להפחית את העלויות על ידי העברת ההסקה למכשיר כשהיא זמינה, אבל באותו הזמן לתמוך בכל מכשירי Android שבהם האפליקציה פועלת.
ב-Jetpacker, הטמענו כמה תכונות באמצעות הסקה בענן או הסקה היברידית:
- התכונה שאלות ותשובות על מקומות עונה על שאלות של משתמשים לגבי מיקומים ספציפיים על ידי ביסוס התשובות על נתונים מהעולם האמיתי. הוא משתמש ב-Firebase AI Logic שמשולב עם מפות Google ועם הקשר האינטרנטי. כדי להשתמש במודל ענן, צריך ידע רחב יותר על העולם.
- התכונה טיוטה של ביקורת עוזרת למשתמשים לכתוב ביקורות מפורטות על מקומות שהם ביקרו בהם. הוא משתמש במודלים במכשיר ובמודלים בענן באמצעות Hybrid inference API החדש של Firebase AI Logic. רצינו להפוך את התכונה הזו לזמינה לכל משתמשי האפליקציה, ולכן אנחנו משתמשים במודל ענן כגיבוי כשמודל במכשיר לא זמין.
- התרגום האוטומטי של הצ'אט מתרגם את הודעות הצ'אט בזמן אמת באופן דינמי כדי לאפשר תקשורת חלקה, ומדגים לוגיקה מותאמת אישית של הסקת מסקנות היברידית. שוב, אנחנו רוצים שהתכונה הזו תהיה זמינה לכל משתמשי האפליקציה, אבל יחד עם זאת יש כמה שיקולים ספציפיים לגבי מתי כדאי לבחור באפשרות של המכשיר לעומת הענן.
System integration
השילוב עם מערכת Android לא מוצג באפליקציה עצמה, אבל הוא מאפשר למערכת ההפעלה של Android לגשת ישירות ליכולות הליבה של האפליקציה. הוא משתמש ב-AppFunctions API כדי להשתלב עם יכולות ה-AI ברמת המערכת.
תהליכי עבודה מבוססי-סוכן בתוך האפליקציה (בקרוב!)
התכונה Agenticness מוסיפה רמה גבוהה יותר של אוטונומיה, ומאפשרת למודלים לפעול כסוכנים. במקום לבצע קריאה יחידה להסקת מסקנות, הסוכן פועל להשגת יעד ספציפי באמצעות לולאת תזמור שמאפשרת לו להסיק מסקנות, להשתמש בכלים ולהתאים את הנתיב שלו. בהתאם לדרישות שלכם, סוכנים חכמים יכולים לפעול בענן, ישירות במכשיר או בהגדרה משולבת.
ל-Jetpacker הוספנו עוזר הזמנות שמבצע אוטומציה של תהליכי עבודה של הזמנות מקצה לקצה ישירות באפליקציה, כדי לייעל את ההזמנות. הוא מבוסס על A2UI ו-ADK שפועלים בענן. אפליקציית Android פועלת כחלק הקדמי של המערכת מרובת הסוכנים שפועלת בענן.
מידע נוסף
כדאי לקרוא גם את החלקים האחרים בסדרת הפוסטים הזו בבלוג:
חלק 1 (הפוסט הזה): הצגת האפליקציה וסקירה כללית.
חלק 2: בינה מובנית במכשיר. הסבר מפורט על ממשקי ה-API של GenAI ב-ML Kit ועל Gemini Nano, כדי ליצור תכונות שמתמקדות בשמירה על הפרטיות, כמו סיכום מסלול נסיעה, ניתוח קבלות ועיבוד אודיו מקומי.
חלק 3: היגיון היברידי והיגיון בענן.
חלק 4: שילוב מערכות. שילוב עם מערכת ה-AI של Android באמצעות AppFunctions.
חלק 5 (בקרוב): תהליכי עבודה של סוכנים בתוך האפליקציה. הרחבת האפליקציה באמצעות עוזר הזמנות מקצה לקצה שמבוסס על A2UI ו-ADK.
רוצים לקבל מידע נוסף על פיתוח ל-Android? אפשר לעקוב אחרי Android Developers ב-YouTube או ב-LinkedIn.
-
מדריכיםברוכים השבים לסדרת הפוסטים בבלוג בנושא "פיתוח אפליקציות חכמות ל-Android". בסדרה הזו אנחנו לוקחים אפליקציה בסיסית ל-Android והופכים אותה לחוויה מותאמת אישית, חכמה ודינמית.
Thomas Ezan, Jolanda Verhoef, Caren Chang • משך הקריאה: 8 דקות -
מדריכיםברוכים השבים לסדרת הפוסטים בבלוג בנושא "פיתוח אפליקציות חכמות ל-Android". בסדרה הזו אנחנו לוקחים אפליקציה בסיסית ל-Android והופכים אותה לחוויה מותאמת אישית, חכמה ודינמית. בפוסט הקודם הצגנו את Jetpacker, אפליקציית ההדגמה שבה נשתמש לאורך הסדרה הזו.
Caren Chang • משך הקריאה: 6 דקות -
מדריכיםברוכים השבים לסדרת הפוסטים בבלוג בנושא "פיתוח אפליקציות חכמות ל-Android". בסדרה הזו אנחנו לוקחים אפליקציה בסיסית ל-Android והופכים אותה לחוויה מותאמת אישית, חכמה ודינמית. בפוסט הקודם הסברנו איך להשתמש ב-Firebase AI Logic כדי ליצור תכונות AI שמתארחות בענן ותכונות AI היברידיות.
Ben Weiss • משך הקריאה: 6 דקות
רוצים לקבל טיפים עדכניים לפיתוח Android ישירות לאימייל כל שבוע?