במאמר הראשון בסדרה צללנו לעומק המושג 'הנדסת הנחיות' והצגנו מספר דוגמאות שממחישות בצורה הטובה ביותר את הרעיון העומד מאחוריו. במאמר הנוכחי נתקדם צעד קדימה ונציג גישות שונות לכתיבת הנחיות בצירוף דוגמאות ממשיות שיסייעו לכם לעשות זאת לגמרי בעצמכם!
לאחר שנים שתחום הבינה המלאכותית היה נחלתם הבלעדית של מדעני נתונים ושל מהנדסי מכונות לומדות ולמידה עמוקה, שתפקידם היה לאמן מודלים ספציפיים למשימות כמו זיהוי תמונות, תרגומי טקסטים, וסווג וניתוח של סוגי נתונים שונים - הבשורה האמיתית של OpenAI, גוגל, פייסבוק ואחרים הייתה הדמוקרטיזציה של הבינה המלאכותית. עכשיו כולנו יכולים לבקש מהבינה המלאכותית לבצע משימות ולענות על שאלות בצורה פשוטה יחסית.
במרחב שבין אלו שמאמנים ויוצרים את מודלי הבינה המלאכותית לכל השאר שעושים בה שימוש, נוצר תחום שלם של מחקרים שנועד לסייע לנו למקסם את הערך מהכלים הנ"ל ולכתוב את השאלות שלנו בתצורה אופטימלית. תחום זה אומנם מוגדר על ידי כולם כהנדסת הנחיות, אך למעשה מדובר ביכולת לדייק ולנסח את השאלות שלנו בצורה לוגית נכונה.
להלן מספר דוגמאות מוכרות ונוספות לכתיבת הנחיות, אך קיימות רבות אחרות אותן תוכלו למצוא לדוגמא באתר promptingguide.ai:
הנחיה פשוטה או Zero-Shot Prompting:
הנחיה בודדת (Zero Shot) היא הנחיה פשוטה הכוללת בקשה או משימה מוגדרת ללא הסברים או דוגמאות. במקרה זה המודל מסתמך אך ורק על הידע הקיים וההבנה הכללית שלו, כמו גם על יכולתו לנמק ולהסיק מידע מההנחיה שניתנה לו.
זוהי ההנחיה הנפוצה ביותר שרובנו עושים בה שימוש, אך גם זו בעלת הפוטנציאל הגדול ביותר להזיות ואי דיוקים.
לדוגמא:
נא צור סלוגן חדש ומושך למותג נעלי ספורט שמתמקד בנוחות, עיצוב מודרני וטכנולוגיה מתקדמת.
הסלוגן צריך להיות קצר וקולע (לא יותר מ-7 מילים).
יש לשלב בו מילים המדגישות את יתרונות המותג.
הסלוגן צריך להיות ברור וקל לזכירה.
הנחיה בודדת בשילוב דוגמאות - One / Few Shot Prompting:
כתיבת הנחיה בשילוב דוגמאות (One / Few Shot) היא שיטה בה אנו מספקים מספר מצומצם של דוגמאות כחלק מההנחיה, וזאת בכדי "למקד" ולדייק את התשובה שנקבל. שילוב הדוגמאות בהנחיה היא שיטה "להסביר" למודל מה התוצאה שאנו רוצים לקבל מבלי לאמן אותו על מידע חדש.
לדוגמא:
בהתבסס על הדוגמאות הבאות, נא ליצור סלוגן חדש ומושך למותג נעלי ספורט שמתמקד בנוחות, עיצוב מודרני וטכנולוגיה מתקדמת.
להלן מספר דוגמאות:
דוגמה 1: 'נעליים שמתקדמות איתך.'
דוגמה 2: 'קפיצה לעתיד של נוחות.'
דוגמה 3: 'הליכה בצעדי ענק של סטייל וטכנולוגיה.'
הנחיות נוספות:
הסלוגן צריך להיות קצר וקולע (לא יותר מ-7 מילים).
יש לשלב בו מילים המדגישות את יתרונות המותג.
הסלוגן צריך להיות ברור וקל לזכירה.
שרשור חשיבה - :Chain-of-Thought Prompting
שיטה זו היא גישה אשר עושה שימוש בתהליך "חשיבת ביניים" כדי לפתור משימות מורכבות. במקום לספק תשובה ישירה, אנו מבקשים מהמודל לייצר לנו שרשרת של צעדי חשיבה שמובילים לתשובה הסופית. זה מאפשר למודל לפתור בעיות באופן יותר שיטתי ולהבין את התהליך שהוביל לתשובה.
שיטה זו נדרשת במיוחד כאשר מתמודדים עם בעיות שדורשות חשיבה רב-שלבית או כאשר יש צורך להסביר את התהליך שהוביל לתשובה. היא מסייעת לנו להבין את הדרך בה המודל "חשב" על המענה' ולבחון את ההיגיון שמאחורי התשובות שהוא מספק, מה שמגביר את האמינות והשקיפות של התשובה שקיבלנו.
לדוגמא:
נא עקוב אחר ההנחיות הבאות כדי ליצור סלוגן חדש ומושך למותג נעלי ספורט שמתמקד בנוחות, עיצוב מודרני וטכנולוגיה מתקדמת.
1. המותג מתמקד בנוחות - נשתמש במילים כמו 'נוחות', 'רכות' או 'אידיאליות'.
2. המותג מעוצב בצורה מודרנית - נוסיף מילים כמו 'מודרני', 'סטייל' או 'עיצוב'.
3. המותג משלב טכנולוגיה מתקדמת - נכלול מילים כמו 'טכנולוגיה', 'חדשנות' או 'מתקדם'.
4. נשלב את המילים הנבחרות לסלוגן קצר וקולע.
הנחיות נוספות:
הסלוגן צריך להיות קצר וקולע (לא יותר מ-7 מילים).
יש לשלב בו מילים המדגישות את יתרונות המותג.
הסלוגן צריך להיות ברור וקל לזכירה.
אנא צור מספר סלוגנים צעד אחר צעד, בכל סלוגן שאתה יוצר הוסף מרכיב נוסף מאלו המתוארים בהנחיה שלי עד שנגיע לסלוגן הרצוי.
שרשור הנחיות - Prompt Chaining:
שרשור הנחיות הוא טכניקה בה הבקשה מהמודל מורכבת וגדולה. במקרים כאלו המודל עלול "להתבלבל" עקב ריבוי המלל והבקשות שלנו בהנחיה. במקרה זה אנו יכולים לייעל את ההנחיה באמצעות פירוק הבקשה שלנו לתתי משימות קטנות ומוגדרות היטב. במקום לתת למודל בקשה ארוכה ומפורטת, אנו מפרקים את הבקשות/משימות שלנו לשאלות קצרות/קטנות ומשתמשים בפלט של שלב אחד כקלט לשלב הבא. כך אנו יוצרים שרשרת של בקשות שמנחות את המודל לעבר התוצאה הרצויה.
לדוגמא:
עבור יצירה של סלוגן למותג נעלי ספורט אנא מצא את מילות המפתח שמתארות את התכונות הבאות של מותג נעלי הספורט שלנו: נוחות, עיצוב מודרני, טכנולוגיה מתקדמת.
תוצאה אפשרית (לדוגמא):
"נוחות: רכות, אווריריות, מפנקות
עיצוב מודרני: סטייליש, חדשני, אלגנטי
טכנולוגיה מתקדמת: חכמות, מתקדמות, חדשניות"
בהתבסס על התוצאות שיצרת והמילים הנוספות הבאות: רכות, אווריריות, מפנקות, סטייליש, חדשני, אלגנטי, חכמות, מתקדמות, חדשניות - נא צור סלוגן משופר ומושך יותר למותג הנעליים.
תוצאה (דוגמא):
"צעדים רכים בעיצוב חדשני וטכנולוגיה חכמה."
כעת כשיש לנו סלוגן מוסכם, אנא שפר את הסלוגן לפרסום באינסטגרם כך שיגרום לעליה של 50% בהקלקות על המודעה.
ארבע הדוגמאות הללו הן כמה מהגישות הנפוצות והשימושיות ביותר, אך קיימות גישות מורכבות יותר כגון:
Self-consistency - שיטת העקביות העצמית, היא שיטה בה המודל מייצר מספר תשובות אפשריות ולאחר מכן משווה ביניהם ובוחר את התשובה המתאימה ביותר.
Generate Knowledge Prompting – בגישה זו אנו מבקשים מהמודל לייצר עבור עצמו תוכן בנושא הרלוונטי מנתוני האימון שלו לפני קבלת המענה לשאלה שלנו, רק לאחר יצירת התוכן אנו מבקשים ממנו על בסיס הידע שהוא יצר לקבל תשובה.
Tree of Thoughts – בגישה מורכבת זו אנו בונים יחד עם המודל עץ של תשובות ("מחשבות") ביניים כאשר כל תשובה מייצגת שלב במסלול שונה לפתרון הבעיה. המודל בוחן כל מסלול ומציג מספר אפשרויות, מתוכם נבחר את המתאימה / הנכונה ביותר.
Automatic Prompt Engineer – בגישה זו או נבקש מהמודל לאחר מספר הנחיות ותשובות שקיבלנו שישפר בצורה עצמאית את ההנחיה הראשונית שלנו, וזאת על מנת לקבל תשובות מדוייקות יותר לצורך שלנו.
Active Prompt – גישה זו אשר נעשה שימוש במשימות מורכבות, משלבת את גישת שרשור החשיבה (COT). החידוש המרכזי הוא בחירת השאלות החשובות והמועילות ביותר שיסייעו למודל במתן המענה לשאלה.
Directional Stimulus Prompting – בגישה זו אנו מספקים למודל "כיוון" באמצעות הצגת הקשר ספציפי, דוגמאות, הגבלות או תנאים ספציפיים שיסייעו למודל להבין באופן טוב יותר את המטרה המבוקשת ולייצר תגובות שהן יותר רלוונטיות ומדויקות.
גישות אלו מתארות טכניקות שונות שנחקרו והוכחו ככאלו שמשפרות את המענה של מודלי הבינה המלאכותית השונים הלכה למעשה. אך כמו בכל מתכון טוב, המפתח להצלחה הוא בחירת הרכיבים הנכונים.
על הרכיבים השונים שיבטיחו כתיבת הנחיה שתניב את התוצאה הטובה ביותר נדבר במאמר הבא והאחרון בסדרת המאמרים 'הנדסת הנחיות – לא מה שחשבתם'.