בואו נדבר
← לכל המדריכיםPROMPTS

פרומפטים שעובדים: מה משנה תשובה של ChatGPT או Claude

רוב הפרומפטים לא נכשלים בגלל ניסוח. הם נכשלים כי המידע שהיה צריך להיות בהם נשאר אצלכם בראש.

המדריך הזה מבוסס על תיעוד כתיבת הפרומפטים של Anthropic ו-OpenAI, ועל מה שראיתי עובד אצל אנשים שמשתמשים בכלים האלה כל יום. הוא מיועד למי שמקבל תשובות בינוניות ורוצה להבין למה, למי שכבר משתמש ורוצה לשלוט בתוצאה, ולמי שבונה על המודלים האלה מוצר.

להתחיל לקרוא ↓
01 · הבעיה

למה התשובה שקיבלתם בינונית

המודל לא יודע מה אתם יודעים. כשכותבים לו ׳תכתוב מייל ללקוח׳, הוא משלים לבד את כל מה שלא נאמר: מי הלקוח, איזה טון, מה המטרה. יוצא משהו סביר, ולא משהו שלכם.

זה הפער שרוב האנשים נתקלים בו בשבוע הראשון. הפרומפט נראה ברור, התשובה נראית מקצועית, ובכל זאת צריך לשכתב חצי. הבעיה כמעט אף פעם לא בניסוח. היא במידע שנשאר אצלכם בראש.

התיעוד של Anthropic פותח את פרק כתיבת הפרומפטים בכלל אחד: תהיו ברורים וישירים. ההמלצה שלהם היא לבדוק את הפרומפט על עמית שלא מכיר את המשימה. אם העמית לא יבין מה לעשות, גם המודל לא יבין.

למי שרק מתחיל

תחשבו על המודל כמו עובד חדש ומוכשר ביום הראשון שלו. הוא חכם, אבל הוא לא מכיר את העסק, את הלקוחות ואת מה שקרה בישיבה של אתמול. כל מה שלא סיפרתם לו, הוא מנחש.

למי שכבר משתמש

המודל מייצר את ההמשך הסביר ביותר לטקסט שקיבל. פרומפט דל משאיר לו מרחב ניחוש רחב, ולכן התשובה יוצאת גנרית. פרומפט עם הקשר מצמצם את המרחב הזה, והתשובה מתכנסת למה שרציתם.

לטכניים

למודל אין זיכרון על העסק שלכם מעבר לחלון ההקשר של השיחה הנוכחית. מה שלא נמצא בהקשר, לא קיים מבחינתו. גם Projects ו-Custom Instructions עובדים בדיוק כך: הם מזריקים טקסט להקשר לפני הבקשה שלכם.

מקור רשמי: Anthropic, Be clear and direct ↗
02 · העיקרון הראשון

הקשר לפני משימה

לפני הבקשה, שלושה משפטים: מי אתם, למי זה מיועד, ומה התוצאה צריכה לעשות. השלושה האלה משפרים את התשובה יותר מכל ניסוח מתוחכם.

השוו שני פרומפטים. הראשון: ׳תכתוב מייל תזכורת על תשלום׳. השני: ׳אני מנהל משרד רואי חשבון קטן. הלקוח הוא בעל עסק ותיק שבדרך כלל משלם בזמן, והפעם איחר בשבועיים. אני רוצה תזכורת ידידותית שלא תפגע בקשר, עם תאריך ברור לתשלום.׳ אותו מודל, אותה בקשה בבסיס, תוצאה אחרת לגמרי.

ההקשר לא חייב להיות ארוך. הוא חייב להיות רלוונטי. מה שמשנה את התשובה הוא מידע שהמודל לא היה יכול לנחש. תיאור כללי של החברה לא עוזר, ולפעמים מבלבל.

  • מי אתם ומה התפקיד שלכם בסיטואציה
  • למי התוצר מיועד ומה הוא כבר יודע
  • מה אמור לקרות אחרי שהתוצר נקרא
  • מה כבר ניסיתם ולמה זה לא עבד
  • אילוצים: אורך, טון, מילים שאסור להשתמש בהן
פרומפט עם הקשר, להעתקה

אני [השלם את המידע כאן: תפקיד ותחום]. אני צריך [השלם את המידע כאן: סוג התוצר] עבור [השלם את המידע כאן: מי הקהל ומה הוא כבר יודע]. המטרה של התוצר: [השלם את המידע כאן: מה אמור לקרות אחרי הקריאה]. הקשר שחשוב לדעת: [השלם את המידע כאן: רקע, מה קרה עד עכשיו, מה רגיש]. אילוצים: אורך של עד [השלם את המידע כאן] מילים, טון [השלם את המידע כאן], בלי [השלם את המידע כאן: מילים או נושאים להימנע מהם]. לפני שאתה כותב, שאל אותי עד שלוש שאלות אם חסר לך מידע קריטי.

03 · דוגמאות

דוגמה אחת שווה עשר הנחיות

אם יש לכם דוגמה למה שאתם רוצים, תדביקו אותה. המודל לומד מדוגמה טוב יותר מאשר מתיאור. Anthropic קוראים לזה multishot prompting ומדרגים אותו כאחת הטכניקות היעילות ביותר.

מייל שכתבתם בעבר וקיבל תגובה טובה. הצעת מחיר שסגרה עסקה. סיכום פגישה שכולם הבינו. כל אחד מהם הוא דוגמה שמלמדת את המודל את הטון, המבנה והאורך שאתם רוצים, בלי שתצטרכו לתאר אותם במילים.

שתיים או שלוש דוגמאות עובדות טוב יותר מאחת, כי המודל מזהה מה משותף ביניהן ומה משתנה. תסמנו אותן בבירור, למשל בתוך תגיות <example> ו-</example>, כדי שהמודל לא יתבלבל בין הדוגמה לבין המשימה.

למי שרק מתחיל

תפתחו את התיקייה של המיילים שנשלחו. תמצאו אחד שאתם גאים בו. תדביקו אותו לפני הבקשה ותכתבו: ׳תכתוב באותו סגנון׳.

למי שכבר משתמש

תבחרו דוגמאות שמכסות מקרים שונים: אחת רשמית, אחת קלילה. ככה המודל מבין את הטווח במקום להיתקע על סגנון אחד.

לטכניים

ההמלצה בתיעוד של Anthropic היא שלוש עד חמש דוגמאות, עטופות בתגיות, עם מגוון שמכסה מקרי קצה. דוגמאות לא עקביות פוגעות יותר משהן עוזרות, כי המודל מנסה להסביר לעצמו גם את ההבדלים שלא התכוונתם אליהם.

מקור רשמי: Anthropic, Multishot prompting ↗
04 · פורמט

תגידו מראש איך התשובה צריכה להיראות

טבלה או רשימה, כמה מילים, באיזו שפה, מה לכלול ומה להשמיט. כשלא מגדירים פורמט, המודל בוחר בשבילכם, ובדרך כלל בוחר יותר מדי.

רוב הזמן שמתבזבז על עריכת תשובות של AI הולך על מחיקה. המודל הוסיף פתיח, הוסיף סיכום, הוסיף שלוש נקודות שלא ביקשתם. כל זה נעלם כשאומרים לו מראש מה המבנה.

OpenAI מנסחים את זה בתיעוד שלהם כהנחיה לציין את הפורמט הרצוי במפורש, ואפילו להראות אותו. הטבלה הבאה מראה איך בקשה רגילה נראית אחרי שמוסיפים לה פורמט.

מה ביקשתםמה כדאי לבקש במקום
סכם את המסמךסכם את המסמך בחמש נקודות, כל נקודה עד 20 מילים, בלי פתיח ובלי סיכום
תכתוב פוסטתכתוב פוסט לפייסבוק של עד 120 מילים, פסקה אחת, בלי האשטגים, שמסתיים בשאלה
תשווה בין האפשרויותתשווה בטבלה עם העמודות: עלות חודשית, זמן הטמעה, למי מתאים, סיכון עיקרי
תסביר לי מה זהתסביר בשלוש רמות: משפט אחד לילד בן עשר, פסקה למנהל, ופסקה טכנית
מקור רשמי: OpenAI, Prompt engineering guide ↗
05 · הגדרת תפקיד

מתי הגדרת תפקיד עוזרת, ומתי היא קישוט

׳אתה מומחה שיווק׳ לבד לא עושה הרבה. הגדרת תפקיד עובדת כשמצרפים אליה הקשר, קהל ואילוצים. בלעדיהם זו סיסמה שהמודל מהנהן לה וממשיך.

יש סיבה שהטריק הזה התפשט. במקרים מסוימים הוא עובד, בעיקר כשהתפקיד מביא איתו אוצר מילים ושיקול דעת שהמודל אחרת לא היה מפעיל. ׳אתה עורך דין שקורא חוזה בשם השוכר׳ משנה את מה שהמודל מחפש. ׳אתה מומחה׳ סתם, פחות.

ב-Claude וב-ChatGPT יש מקום ייעודי להגדרות קבועות כאלה: system prompt, Projects או Custom Instructions. שם שמים מה שנכון לכל השיחות: מי אתם, איך אתם כותבים, מה אסור. בפרומפט עצמו שמים מה שנכון למשימה הזאת.

למי שרק מתחיל

אם אתם חוזרים על אותה הקדמה בכל שיחה, יש לזה פתרון: Custom Instructions ב-ChatGPT או Project ב-Claude. כותבים פעם אחת, וזה נטען אוטומטית.

למי שכבר משתמש

תפקיד טוב מגדיר גם מה אסור: ׳אל תמציא נתונים, אם אתה לא בטוח תגיד׳. זה משפיע על התשובה יותר מתואר מפוצץ.

לטכניים

system prompt הוא המקום להגדרות שצריכות לשרוד לאורך שיחה ארוכה. Anthropic ממליצים להשאיר שם תפקיד והנחיות קבועות, ולשים את המשימה והנתונים בהודעת המשתמש. הפרדה כזאת גם מקלה על בדיקות: משנים משתנה אחד בכל פעם.

מקור רשמי: Anthropic, System prompts ↗
06 · שיפור

הפרומפט הראשון הוא טיוטה

קיבלתם תשובה לא טובה? אל תפתחו שיחה חדשה ואל תנסחו הכל מהתחלה. תגידו למודל מה בדיוק לא עבד ומה לשנות. השיחה היא כלי העבודה, והפרומפט הבודד הוא רק הפתיחה שלה.

׳זה ארוך מדי, תקצר לחצי׳. ׳הטון רשמי מדי, תכתוב כמו שמדברים׳. ׳הנקודה השלישית לא נכונה, הלקוח כבר שילם על זה׳. כל תיקון כזה לוקח עשר שניות ומקדם אתכם. ניסוח מחדש מאפס לוקח חמש דקות ומחזיר אתכם להתחלה.

  1. קראו את התשובה ותסמנו לעצמכם מה בסדר ומה לא
  2. תגידו למודל רק מה לשנות, ותשאירו את מה שעבד
  3. אחרי שתיים או שלוש איטרציות, תעתיקו את הבקשה המדויקת שהביאה לתוצאה הטובה
  4. תשמרו אותה. זה הפרומפט שלכם למשימה הזאת מעכשיו
מקור רשמי: OpenAI Help, Best practices for prompt engineering ↗
07 · תבנית

התבנית שאני משתמש בה

חמישה חלקים, תמיד באותו סדר: הקשר, משימה, דוגמה, פורמט, מגבלות. לא צריך את כולם בכל פעם. צריך לדעת מה חסר.

זו רשימת בדיקה, לא נוסח קסם. כשתשובה יוצאת גרועה, אני עובר על החמישה ובודק איזה מהם דילגתי. כמעט תמיד זה ההקשר או הפורמט.

התבנית להעתקה

הקשר: [השלם את המידע כאן: מי אתם, מה המצב, למי זה מיועד] משימה: [השלם את המידע כאן: מה בדיוק לעשות, פועל אחד ברור] דוגמה: [השלם את המידע כאן: הדביקו דוגמה למה שאתם רוצים, או כתבו ׳אין׳] פורמט: [השלם את המידע כאן: מבנה, אורך, שפה, מה לכלול ומה להשמיט] מגבלות: [השלם את המידע כאן: מה אסור, מה לא לנחש, מתי לשאול אותי במקום להמציא]

עברית או אנגלית?שני הכלים המרכזיים מבינים עברית טוב. לניסוח ולסיכום, עברית עובדת. למשימות טכניות או לתחומים עם הרבה מונחים באנגלית, פרומפט באנגלית לפעמים נותן תשובה מדויקת יותר. תנסו את שניהם על אותה משימה פעם אחת, ותראו.
08 · מחר בבוקר

מה עושים עם זה מחר בבוקר

קחו פרומפט אחד שאתם משתמשים בו הרבה. תוסיפו לו רק הקשר, שלושה משפטים. תשוו את שתי התשובות זו לצד זו. ברוב המקרים זה ההבדל בין ׳נחמד׳ ל׳שמיש׳.

  • תמצאו את הבקשה הכי חוזרת שלכם, באיזה מודל שאתם עובדים איתו
  • תכתבו אותה מחדש לפי חמשת החלקים, גם אם חלק נשארים ריקים
  • תשמרו את הגרסה שעבדה במקום שתמצאו אותו: פתק, מסמך, או Project
למי שרק מתחיל

תרגיל אחד, עשר דקות. אותה בקשה פעמיים: פעם כמו שאתם רגילים, פעם עם שלושה משפטי הקשר לפניה. ההבדל יגיד לכם כל מה שצריך.

למי שכבר משתמש

תבנו לעצמכם שלושה או ארבעה פרומפטים קבועים למשימות שחוזרות: סיכום פגישה, מענה ללקוח, ניסוח הצעה. כל אחד עם הקשר ופורמט מוכנים. זה חוסך את חמש הדקות הראשונות של כל שיחה.

לטכניים

אם אתם בונים מוצר על המודל, תפרידו בין system prompt קבוע להודעות משתמש משתנות, ותשמרו סט קטן של מקרי בדיקה עם תשובות צפויות. כל שינוי בפרומפט מריצים על הסט לפני שמעלים. ככה שינוי שמשפר מקרה אחד לא שובר עשרה אחרים.

לפני שמדביקיםפרטים אישיים של לקוחות, מספרי זהות, נתונים רפואיים או פיננסיים: לא מדביקים בכלי ציבורי בלי לבדוק את תנאי השימוש ואת מדיניות הפרטיות של הארגון. הקשר טוב לא צריך שם מלא. ׳לקוח ותיק שאיחר בתשלום׳ מספיק.
שאלות שחוזרות

שאלות שאני שומע על זה

צריך לכתוב פרומפטים באנגלית?

לא. ChatGPT ו-Claude מבינים עברית טוב לרוב המשימות היומיומיות. בתחומים טכניים עם מונחים באנגלית לפעמים כדאי לנסות באנגלית ולהשוות.

פרומפט ארוך יותר תמיד עובד טוב יותר?

לא. פרומפט עם הקשר רלוונטי עובד טוב יותר. אורך לבד לא עוזר, ותיאורים כלליים של החברה לפעמים מבלבלים. תשאלו על כל משפט: המודל יכול לנחש את זה לבד?

מה ההבדל בין system prompt לפרומפט רגיל?

system prompt הוא הגדרה קבועה שנטענת לפני כל שיחה: מי אתם, איך לכתוב, מה אסור. הפרומפט הרגיל הוא המשימה הספציפית של עכשיו. ב-ChatGPT זה Custom Instructions, ב-Claude זה Project.

בהמשך לזה
NEXT STEP

רוצים לקחת את זה מהמדריך לתהליך אצלכם?

שיחה קצרה על מה שקורה אצלכם היום. בלי התחייבות, ויוצאים ממנה עם כיוון.

בואו נדבר