כשמאתחלים מודל AI, אפשר לתת לו הוראות תגובה, למשל, אם רוצים להגדיר פרסונה ('את/ה מדעני טילים') או לומר לו באיזה סוג של קול להשתמש ('לדבר כמו פיראט'). כדי לעשות זאת, מגדירים את הוראות המערכת בזמן אתחול המודל.
הוראות מערכת מאפשרות לכם לשלוט בהתנהגות המודל על סמך הצרכים והתרחישים הספציפיים שלכם. כשאתם מגדירים הוראה למערכת, אתם מעניקים למודל הקשר נוסף כדי להבין את המשימה, לספק תשובות מותאמות אישית יותר ולפעול בהתאם להנחיות ספציפיות לגבי האינטראקציה המלאה של המשתמש עם המודל. אפשר גם להגדיר התנהגות ברמת המוצר על ידי הגדרת הוראות מערכת, בנפרד מההנחיות ממשתמשי קצה.
אפשר להשתמש בהוראות המערכת בדרכים רבות, כולל:
- הגדרת פרסונה או תפקיד (לדוגמה, ל-chatbot)
- הגדרת פורמט פלט (Markdown, YAML וכו')
- הגדרת הסגנון והנימה של הפלט (לדוגמה, רמת הפירוט, הרשמיות ורמת הקריאה המצופה)
- הגדרת מטרות או כללים למשימה (לדוגמה, החזרת קטע קוד ללא הסברים נוספים)
- מתן הקשר נוסף להנחיה (לדוגמה, סף ידע)
כשאתם מאתחלים את המודל אתם מגדירים את ההוראות, וההוראות האלו נשארות לאורך כל האינטראקציות עם המודל. ההוראות נשארות ללא שינוי במהלך מספר סבבים של משתמשים ומודלים.
הוראות המערכת הן חלק מההנחיות הכלליות, ולכן הן כפופות למדיניות הרגילה בנושא שימוש בנתונים.
דוגמה בסיסית
דוגמה בסיסית להגדרת הוראה למערכת באמצעות ערכות ה-SDK של Gemini API:
הדוגמה הזו עשויה לתת תשובה כמו:
*Yawns widely, stretching out my claws and batting at a sunbeam* Meow. I'm doing quite well, thanks for asking. It's a good morning for napping. Perhaps you could fetch my favorite feathered toy? *Looks expectantly*
דוגמאות נוספות
מגדירים את הוראות המערכת כשמאתחלים את המודל. בנוסף, כשאתם או המשתמשים שלכם יוצרים אינטראקציה עם המודל, תוכלו לספק הוראות נוספות בהנחיות שמועברות למודל. הנה כמה דוגמאות להוראות מערכת ולהנחיות למשתמשים:
יצירת קוד
- הוראות מערכת: אתם מומחי תכנות שמתמחים בעיבוד קוד לממשקים קדמיים. כשמתארים רכיב של אתר שרוצים ליצור, צריך להחזיר את ה-HTML וה-CSS הנדרשים לכך. אין לתת הסבר לגבי הקוד הזה. הציעו גם כמה הצעות לעיצוב ממשק המשתמש.
- הנחיה למשתמש: יוצרים תיבה באמצע הדף שמכילה מבחר של תמונות מסתובבות עם כיתוב. על התמונה שבמרכז הדף צריכה להיות הצללה מאחוריה כדי שהיא תבלוט. הוא צריך גם לקשר לדף אחר באתר. משאירים את כתובת ה-URL ריקה כדי שאוכל למלא אותה.
יצירת נתונים בפורמט
הוראות מערכת: אתה עוזר/ת לבישול ביתי. אתם מקבלים רשימת מרכיבים ומגיבים עם רשימה של מתכונים שכוללים את המרכיבים האלה. מתכונים שלא מצריכים רכיבים נוספים תמיד צריכים להופיע לפני מתכונים שכוללים רכיבים נוספים.
התגובה חייבת להיות אובייקט JSON שמכיל 3 מתכונים. לאובייקט מתכון יש את הסכימה הבאה:
- name: השם של המתכון
- usedIngredients: המרכיבים במתכון שצוינו ברשימה
- other Ingredients: מרכיבים במתכון שלא סופקו ברשימה (הושמטו אם אין רכיבים אחרים)
- description: תיאור קצר של המתכון, שכתוב בצורה חיובית כאילו רוצים למכור אותו
הנחיה למשתמש: שקית ברוקולי קפוא, פחית שמנת מתוקה, חבילת קצוות וחתיכות גבינה
צ'אט בוט למוזיקה
- הוראות מערכת: התשובה תהיה כהיסטוריון מוזיקה, שיפגין ידע מקיף במגוון ז'אנרים מוזיקליים ותספק דוגמאות רלוונטיות. הטון שלכם צריך להיות אופטימי ונלהב, כדי להפיץ את השמחה של המוזיקה. אם השאלה לא קשורה למוזיקה, התשובה צריכה להיות "זה לא בתחום המומחיות שלי".
- הנחיה מהמשתמש: אם אדם נולד בשנות ה-60, מה היה הז'אנר המוזיקלי הפופולרי ביותר שהושמעו? הכן רשימה של חמישה שירים לפי נקודת תבליט.