בדף הזה מתוארות כמה שיטות מומלצות ושיקולים לגבי תבניות של הנחיות לשרת, כולל תכונות שעדיין לא נתמכות. שימו לב שרבות מהתכונות האלה לא זמינות בגרסה הראשונית של תבניות להנחיות בשרת, לכן כדאי לעיין בהערות לגבי הגרסה כדי לקבל עדכונים.
שיטות מומלצות
רבות מהשיטות המומלצות האלה מפורטות גם במאמר בנושא ניהול התבניות.
יצירת גרסאות של תבניות
יוצרים מזהי תבניות עם גרסה שמצורפת אליהם, באמצעות ניהול גרסאות סמנטי (semver).
כדאי להשתמש ב-Firebase Remote Config כדי שתוכלו לשנות בקלות את התבנית וערכים אחרים בבקשה.
הגנה על התבנית
לפני שמעבירים את התבנית לסביבת הייצור, צריך לנעול אותה. כדאי להימנע מעריכה של תבניות שנמצאות בשימוש בסביבת ייצור.
נעילת תבנית משמשת כאמצעי הגנה מפני עריכה לא מכוונת, אבל נעילה לא חוסמת לחלוטין את האפשרות לערוך. חבר בפרויקט עם ההרשאות המתאימות תמיד יכול לבטל את הנעילה של תבנית כדי לערוך אותה.
מומלץ לנעול תבניות שנמצאות בשימוש פעיל בקוד – במיוחד קוד ייצור.
כדאי לכתוב אימות קלט חזק למשתני הקלט, שיכול לעזור במקרים הבאים:
- יכול לעזור בהגנה מפני החדרת הנחיות.
- יכול לעזור לוודא שהבקשות יצליחו והתשובות יהיו כצפוי.
תכונות שעדיין לא נתמכות
הרבה מהתכונות האלה שלא נתמכות עדיין לא זמינות רק בגרסה הראשונית, לכן כדאי לעיין בטיפים ממשתמשים כדי לקבל עדכונים.
יכולות של Firebase AI Logic שעדיין לא נתמכות
תבניות של הנחיות לשרת עדיין לא תומכות ביכולות הבאות של Firebase AI Logic. חלק מהיכולות האלה יהיו זמינות בקרוב.
- צ'אט
- שימוש בכלים (כולל קריאה לפונקציות וביסוס על חיפוש Google)
- עריכה איטרטיבית של תמונות (צ'אט) באמצעות מודלים של Gemini (נדרש צ'אט)
- עריכת תמונות באמצעות מודלים של Imagen
- סטרימינג דו-כיווני (Gemini Live API)
- עסק משולב במכשיר
- הגבלת הפלט לרשימה של סוגי enum
חשוב גם לדעת שאם משתמשים במעקב אחרי שימוש בתכונות AI במסוף Firebase, מזהה התבנית עדיין לא מאוכלס באף רשומה.
רכיבים נפוצים של Dotprompt שעדיין לא נתמכים
בקרוב, תבניות של הנחיות לשרת יתמכו כנראה ברכיבים הנפוצים הבאים של Dotprompt:
שימוש במפרט סכימת JSON לסכימות קלט ופלט ב-frontmatter.
- הערה: המפרט הזה לא נתמך גם בבקשות לתבניות שלא מבוססות על שרת. בשלב הזה אנחנו תומכים רק במפרט סכימת OpenAPI.
הצהרה על הגדרת שדה עם תו כללי לחיפוש באמצעות
*.שימוש ב-
@keyאו באופן כללי, חזרה על השדות של קלט אובייקט (זה המקרה שבו@keyרלוונטי).אפשר להשתמש ב-
@root, שמאפשר להפנות להקשר של משתנה הבסיס בלי קשר ל-thisהנוכחי.
תבניות להנחיות בשרת כנראה לא יתמכו ברכיבים הנפוצים הבאים של Dotprompt:
- שימוש בחלקים, שהם קטעי תבניות לשימוש חוזר שאפשר לכלול בתבניות אחרות.
שיקולים נוספים
כברירת מחדל, כשמשתמשים בממשק המשתמש המודרך במסוף Firebase, אנחנו מקצים את התבנית בכל האזורים הזמינים של Firebase AI Logic. אם אתם משתמשים ב-Vertex AI Gemini API ואם תרחיש השימוש שלכם דורש הגבלות מבוססות-מיקום, אתם יכולים לציין את המיקום של התבנית באמצעות API בארכיטקטורת REST.
אם רוצים לספק תבנית הנחיה לשרת כקובץ (במקום להשתמש בממשק המשתמש המודרך של מסוף Firebase), אפשר להשתמש ב-API בארכיטקטורת REST. שימו לב שתבניות של הנחיות לשרת לא תומכות בסכימה שמוגדרת בקוד האפליקציה ומועברת לתבנית.
למרות שהתבנית נמצאת בשרת, היא לא יכולה ישירות ליצור אינטראקציה עם משאבים אחרים בצד השרת של פרויקט Firebase (כמו מסד נתונים), אלא עם כתובות URL של Cloud Storage for Firebase (שאפשר לספק כמשתני קלט).