Meta prompting הוא כתיבת פרומפטים על פרומפטים: במקום לבקש ממודל לבצע משימה, מבקשים ממנו לכתוב את הפרומפט למשימה, לשפר פרומפט שכבר יש לכם, או לפרק את המשימה לפרומפטים קטנים יותר שקריאות אחרות למודל יריצו. שני הראשונים הם טריקים יומיומיים שעובדים ב-ChatGPT, ב-Claude וב-Gemini. השלישי הוא טכניקה מהמחקר, שבה מופע אחד של המודל משמש מנצח עבור כמה מופעים אחרים.
שלושתם נשענים על אותה עובדה: מודלים עכשוויים ראו כמות עצומה של טקסט על מתן הוראות למודלים, ולכן הם טובים באיתור מה שחסר בפרומפט. הם טובים בדיוק באותה מידה במילוי הפערים האלה בניחושים, וזה הדבר העיקרי שצריך להיזהר ממנו.
לבקש מהמודל לכתוב את הפרומפט
הדרך החלשה ביותר ליצור פרומפט היא "כתוב לי פרומפט ל-X". המודל לא יודע כלום על ה-X שלכם, ולכן הוא כותב פרומפט כללי לגרסה הממוצעת של העבודה. הפתרון הוא לגרום לו לשאול קודם. שאלות מוציאות את ההקשר החסר אל האור, והתשובות שלכם הופכות לתוכן של הפרומפט.
- מי קורא את המייל: רק מי שהיה בפגישה, או גם מנהלים וצוותים אחרים?
- מה כל סיכום חייב להכיל? למשל החלטות שהתקבלו, משימות עם אחראי ותאריך יעד, ושאלות פתוחות.
- באיזה אורך הוא צריך להיות, והאם אתם מעדיפים נקודות או פסקאות קצרות?
- באיזה טון הצוות שלכם משתמש במיילים: רשמי, ניטרלי או קליל?
- האם יש משהו שאסור שיופיע, כמו שיחות צד, הערות אישיות או נתונים חסויים?
ענו על השאלות בהודעה אחת ותקבלו פרומפט שמכיל את ההחלטות שלכם ולא את ברירות המחדל של המודל. שמרו אותו: פרומפט עם placeholders הוא תבנית פרומפט שאפשר להשתמש בה כל שבוע.
לשפר פרומפט שכבר יש לכם
"שפר את הפרומפט הזה" הוא אחד ה-meta prompts הנפוצים ביותר, והכשל הטיפוסי שלו נראה בלשונית הראשונה למטה. המודל מאריך את הפרומפט והופך אותו לבטוח יותר בעצמו על ידי המצאת פרטים: קהל, מספר מילים, קריאה לפעולה. כל המצאה סבירה, וכל אחת היא החלטה שאתם לא קיבלתם. הלשונית השנייה נותנת למודל כללים לשכתוב.
הנה גרסה משופרת של הפרומפט שלך:
"אתה כותב ועורך תוכן מומחה עם שנים של ניסיון בפרסום דיגיטלי. סכם את המאמר הבא לניוזלטר שלי, שקוראים אותו אנשי מקצוע עסוקים מתעשיית הטכנולוגיה. כתוב סיכום מושך של 150 עד 200 מילים בטון ידידותי אך מקצועי. פתח במשפט שתופס את העין, הדגש את שלוש התובנות החשובות ביותר, וסיים בקריאה לפעולה שמעודדת את הקוראים לקרוא את המאמר המלא."
הגרסה הזו מוסיפה תפקיד, קהל, אורך, טון ומבנה ברור, מה שייתן לך סיכומים ממוקדים ושימושיים יותר.
התשובה הראשונה לא שגויה; היא יומרנית: אם הניוזלטר שלכם מיועד לגננים חובבים, "אנשי מקצוע עסוקים מתעשיית הטכנולוגיה" ינווט בשקט כל סיכום. התשובה השנייה עושה פחות ומשאירה אתכם אחראים להחלטות שחשובות. ה-placeholders גם מראים לכם איזה הקשר היה חסר בפרומפט המקורי, וזה שימושי גם אם תזרקו את השכתוב.
לבדוק פרומפט שנוצר לפני שסומכים עליו
פרומפט שמודל כתב נקרא היטב, וזה מקל לפספס את הבעיות שלו. חפשו את אלה לפני שאתם משתמשים בו:
- דרישות מומצאות. כל אורך, קהל, טון או כלל שלא ביקשתם. מחקו אותם או החליפו בתשובה האמיתית שלכם.
- תפקיד כללי. "אתה מומחה ברמה עולמית" מוסיף אורך ומעט מאוד מעבר לזה. תפקיד עוזר כשהוא מציין את הקהל ואת הסטנדרט; ראו role prompting.
- חזרות. פרומפטים שנוצרו אומרים לעיתים קרובות את אותה הוראה בשלוש דרכים. משפט ברור אחד עובד באותה מידה ומשאיר פחות מקום לסתירות.
- אין בדיקה. קריאה של פרומפט מלמדת מעט על התוצאות שלו. הריצו אותו על שלושה או ארבעה קלטים אמיתיים, כולל אחד מביך, והשוו את הפלטים למה שהפרומפט הישן שלכם הפיק. איטרציה על פרומפטים מתאר איך לעשות את זה בלי לרמות את עצמכם.
מודל יכול גם לעזור לאבחן פרומפט שנכשל. כשפרומפט נותן תוצאה גרועה, הדביקו את הפרומפט, את הקלט ואת הפלט הגרוע, ושאלו: "איזה חלק בפרומפט הזה הוא הגורם הסביר ביותר לפלט הזה? הצע את השינוי הקטן ביותר שיתקן את זה." אבחון ממוקד שימושי יותר משכתוב מלא, כי אתם לומדים איזו הוראה אשמה.
שיטת המנצח (Suzgun ו-Kalai, 2024)
במחקר, "meta-prompting" הוא גם שמה של שיטה מסוימת מהמאמר של Suzgun ו-Kalai מ-2024, "Meta-Prompting: Enhancing Language Models with Task-Agnostic Scaffolding". מופע אחד של המודל, המנצח, מקבל את המשימה יחד עם הוראות קבועות ברמה גבוהה שזהות לכל משימה. הוא מפרק את המשימה לחלקים, ולכל חלק כותב פרומפט עבור "מומחה": קריאה חדשה לאותו מודל, עם הוראות שהמנצח כתב לחלק הזה. המומחים רואים רק את מה שהמנצח שולח להם, לא את כל ההיסטוריה, ולכן הם בודקים את העבודה בעיניים רעננות. המנצח קורא את התשובות שלהם, מבקש אימות כשהוא מפקפק באחת מהן, ומרכיב את התשובה הסופית. בחלק מהניסויים אחד המומחים יכול היה להריץ קוד Python.
החוקרים בדקו את זה עם GPT-4 על תערובת של משימות, כולל חידת Game of 24, מציאת מט במסע אחד בשחמט, חידות תכנות ב-Python וכתיבת סונטות. בממוצע על פני המשימות, מערך המנצח עם מפרש Python ניצח את ה-prompting הרגיל ואת שאר מבני ה-prompting שהשוו אליהם.
זו תוכנה, לא הודעת צ'אט אחת: כל קריאה למומחה היא בקשה נפרדת שהקוד שלכם שולח, באותה דרך ש-prompt chaining מעביר פלטים בין שלבים. ההבדל הוא שבשרשרת אתם מתכננים את השלבים מראש, ואילו המנצח מחליט עליהם בזמן הריצה. הגמישות הזו עולה ביותר קריאות וקשה יותר לדבג אותה, ולכן למשימה שאתם כבר מכירים את השלבים שלה, שרשרת קבועה היא בדרך כלל הבחירה הטובה יותר.
שאלות נפוצות
מה זה meta prompting?
Meta prompting הוא שימוש במודל שפה כדי לעבוד על פרומפטים במקום על המשימה עצמה: לבקש ממנו לכתוב פרומפט, לשכתב פרומפט כדי שיניב תוצאות טובות יותר, או לפצל משימה לתת-פרומפטים עבור קריאות אחרות למודל. המשמעות האחרונה היא השיטה מהמאמר של Suzgun ו-Kalai מ-2024, "Meta-Prompting", שבה קריאה אחת למודל מתאמת קריאות חדשות לאותו מודל.
מה פרומפט טוב כדי לגרום ל-ChatGPT לכתוב פרומפטים?
תארו את העבודה שהפרומפט מיועד לה, ואז בקשו מהמודל לשאול אתכם שאלות לפני שהוא כותב משהו: "לפני שאתה כותב את הפרומפט, שאל אותי עד חמש שאלות על מה שאתה צריך לדעת." ענו עליהן, ובקשו את הפרומפט הסופי בבלוק קוד עם placeholders לחלקים שמשתנים בכל פעם. רוב הערך מגיע מהשאלות, כי הן חושפות הקשר ששכחתם לתת.
האם פרומפטים שנוצרו על ידי AI טובים יותר מפרומפטים שאני כותב בעצמי?
בדרך כלל הם מאורגנים יותר ומלאים יותר, ובדרך כלל ארוכים יותר ממה שצריך. מודל לא יכול להכיר את הקהל, הנתונים או הסטנדרטים שלכם, ולכן פרומפט שנוצר ממלא את הפערים האלה בניחושים סבירים. התייחסו אליו כטיוטה: הסירו כל מה שלא ביקשתם, ואז בדקו אותו על קלטים אמיתיים.
למה המודל מוסיף "אתה מומחה" לכל פרומפט שהוא משפר?
כנראה כי כל כך הרבה פרומפטים שפורסמו מתחילים כך, והמודל מתייחס לזה כחלק ממה שפרומפט משופר נראה כמוהו. תפקיד מומחה כללי משנה לעיתים רחוקות הרבה; תפקיד ספציפי שמציין את הקהל ואת הסטנדרט כן משנה. כשאתם מבקשים שיפור, אמרו אילו סוגי תוספות אתם רוצים, ובקשו ממנו לא להוסיף דרישות שלא ציינתם.