עדכנתם את הפרומפט כדי לתמוך בפורמט תגובה חדש, ושבוע לאחר מכן המודל התחיל להזות על שאילתות פשוטות — הדיוק ירד ב-30%. כל שינוי בפרומפט יכול לשבור בשקט תרחישים שעבדו במשך שנים. בפרויקט אחד, שינוי של מילה אחת בפרומפט הפחית את הדיוק ב-30% ודרש שבוע של בדיקות ידניות כדי לתפוס את הרגרסיה. אנו משתמשים ב-Promptfoo כדי לבנות בדיקות רגרסיה אוטומטיות תוך כמה ימים ולשכוח מהפתעות כאלה לנצח. Promptfoo מאפשר לכם להריץ בדיקות פי 5 מהר יותר מאשר בדיקות ידניות ומספק מדדים אובייקטיביים כמו LLM-rubric, ROUGE-N ו-contains-any במקום הערכה סובייקטיבית. זהו יישום CLI בקוד פתוח עם עשרות סוגי אסרטיות שמשתלב בכל צינור CI/CD.
המהנדסים שלנו ביצעו 40+ פרויקטי אינטגרציה של LLM, ובכל המקרים Promptfoo צמצם את זמן זיהוי הרגרסיה משבוע לכמה דקות. אנו מגדירים בדיקות לתרחישים הספציפיים שלכם: בדיקת ביטויים נדרשים, היעדר מילים אסורות, השוואת תגובות מודל ומדידת דמיון לייחוס באמצעות embeddings. כתוצאה מכך, אתם מקבלים תהליך שקוף שבו כל PR נבדק אוטומטית, ואיכות הפרומפט נשלטת על ידי מדדים.
אילו בעיות אנו פותרים
- רגרסיות לאחר שינויי פרומפט: תנאי חדש יכול לשבור מקרים אחרים. Promptfoo מריץ מאות בדיקות בשניות.
- חוסר יציבות של מודל: הספק עדכן את המודל, והוא התחיל להפיק פורמט שונה. בדיקות תופסות זאת לפני הפריסה.
- הערכה סובייקטיבית: במקום "נראה שעונה טוב" — מדדים אובייקטיביים (contains, LLM-rubric, ROUGE).
- חוסר CI/CD לפרומפטים: פיתוח ללא בקרת איכות — כמו commit ללא בדיקות יחידה.
- תרחישי RAG: אימות נכונות של שליפה ורלוונטיות של תשובות המבוססות על חיפוש וקטורי.
- QA ל-AI: הבטחה שהמודל לא מייצר תגובות שגויות או לא בטוחות בסביבת ייצור.
למה בדיקות רגרסיה לפרומפט חשובות
מערכות LLM הן מערכות הסתברותיות. מילה אחת בפרומפט יכולה לשנות את כל הסמנטיקה של התגובה. ללא בדיקות אוטומטיות, אתם משחררים שינויים בעיוורון. Promptfoo מספק ערובה שתרחישים ישנים עדיין עובדים וחדשים לא שוברים לוגיקה קיימת. זה חשוב במיוחד במערכות ייצור עם אלפי בקשות ביום. לפי התיעוד הרשמי, Promptfoo הוא כלי בקוד פתוח להערכה ובדיקה של פרומפטים של LLM, המשמש בפרויקטים המטפלים בעד 10,000 בקשות יומיות.
איך אנו מגדירים את Promptfoo
אנו מתחילים בביקורת של הפרומפטים הנוכחיים: אוספים את כל התבניות בשימוש, מדגישים תרחישים מרכזיים וכותבים מקרי בדיקה עם אסרטיות. תצורה טיפוסית:
---
providers:
- openai:gpt-4o
- openai:gpt-4o-mini
- anthropic:claude-3-5-sonnet-20241022
prompts:
- "Summarize the following text in 3 sentences: {{text}}"
- "Create a concise 3-sentence summary of: {{text}}"
tests:
- vars:
text: "Long article about machine learning..."
assert:
- type: contains
value: "machine learning"
- type: llm-rubric
value: "The summary is accurate and covers the main points"
- type: javascript
value: "output.split('.').length >= 3"
- vars:
text: "Another test document..."
assert:
- type: not-contains
value: "I cannot"
- type: rouge-n
value: reference_summary
threshold: 0.5
---
אנו לא משתמשים בכל האסרטיות ללא הבחנה, רק באלה שבאמת נחוצות. אנו מוסיפים בדיקות מותאמות אישית באמצעות JavaScript: לדוגמה, שהתגובה מכילה בדיוק 3 נקודות ב-markdown. זה מספק ביטחון של 100% בפורמט הפלט.
שילוב Promptfoo ב-CI/CD
הוסיפו פקודה אחת ל-workflow שלכם:
promptfoo eval --ci דוגמה ל-GitHub Actions:
- name: Run prompt tests run: npx promptfoo eval --ci אם בדיקה נכשלת, CI יוצא עם שגיאה — PR לא מתמזג. אנו מגדירים צפייה אוטומטית בדוחות דרך providers: - openai:gpt-4o - openai:gpt-4o-mini - anthropic:claude-3-5-sonnet-20241022 prompts: - "Summarize the following text in 3 sentences: {{text}}" - "Create a concise 3-sentence summary of: {{text}}" tests: - vars: text: "Long article about machine learning..." assert: - type: contains value: "machine learning" - type: llm-rubric value: "The summary is accurate and covers the main points" - type: javascript value: "output.split('.').length >= 3" - vars: text: "Another test document..." assert: - type: not-contains value: "I cannot" - type: rouge-n value: reference_summary threshold: 0.5 כך שהצוות יכול לראות הבדלים בין גרסאות פרומפט.
מה כלול בשירות שלנו
- ביקורת של פרומפטים נוכחיים וזיהוי תרחישים קריטיים.
- כתיבת 10–50 מקרי בדיקה עם אסרטיות המותאמות למדדים שלכם.
- תצורת Promptfoo והגדרת ספקים.
- אינטגרציית CI/CD (GitHub Actions, GitLab CI) עם התראות.
- תיעוד מלא והדרכת צוות על הוספת בדיקות חדשות ופרשנות תוצאות.
- גישה לדשבורד הפרטי שלנו עם היסטוריית בדיקות ושיעורי מעבר.
- תמיכה למשך 30 יום לאחר הפריסה, כולל פתרון בעיות פרומפט.
תהליך
- ניתוח פרומפטים — איסוף תבניות נוכחיות, זיהוי מקרים קריטיים (עד שעתיים).
- עיצוב בדיקות — כתיבת 10–50 מקרי בדיקה עם אסרטיות למדדים שלכם.
- יישום — יצירת תצורת Promptfoo, הגדרת ספקים ומשתנים.
- בדיקות — הרצת eval, תיקון בדיקות נכשלות, הבהרת דרישות.
- פריסה ל-CI/CD — הוספת שלב לצינור, הגדרת התראות.
לוח זמנים ועלות
העבודה אורכת בין 3 ל-7 ימים תלוי במספר הפרומפטים ובמורכבות האסרטיות. הגדרה בסיסית מתחילה ב-$500; פרויקטים מורכבים עשויים להגיע ל-$3,000. העלות מחושבת באופן אישי לאחר הביקורת. קבלו ייעוץ — נעריך את הפרויקט שלכם ביום אחד. חיסכון טיפוסי: אוטומציה של בדיקות רגרסיה מפחיתה עלויות QA ידניות ב-80% ומקצרת את זמן הפריסה ב-75%.
רשימת בדיקה: מה לבדוק בבדיקות פרומפט
| סוג בדיקה | מה היא תופסת | דוגמת assert |
|---|---|---|
| contains | נוכחות של ביטוי נדרש | promptfoo eval --ci |
| not-contains | מילים אסורות (סירובים, ניבולי פה) | - name: Run prompt tests run: npx promptfoo eval --ci |
| llm-rubric | איכות תשובה (הערכת LLM סובייקטיבית) | promptfoo view |
| javascript | בדיקות שרירותיות (אורך, פורמט, JSON) | contains: "Hello" |
| rouge-n | דמיון לייחוס (סיכום) | not-contains: "I cannot" |
| contains-any | לפחות אחת מהאפשרויות | llm-rubric: "Informative" |
Promptfoo לעומת בדיקות ידניות
| קריטריון | בדיקות ידניות | אוטומציה עם Promptfoo |
|---|---|---|
| זמן לכל ריצה | 1–2 שעות ל-10 מקרים | 2–5 דקות ל-100 מקרים |
| דיוק | הערכה סובייקטיבית | מדדים ואסרטיות אובייקטיביים |
| מדרגיות | מוגבל על ידי משאבי אנוש | הרצת מאות בדיקות ב-CI |
| אינטגרציית CI/CD | דורש הפעלה ידנית | אוטומטי בכל commit |
| עלות לחודש (1000 ריצות) | $5,000 (שעות מהנדס QA) | $20 (מחשוב ותחזוקה) |
דוגמת סקריפט Python לבדיקה מותאמת אישית
import promptfoo
results = promptfoo.evaluate({
"prompts": ["Classify sentiment: {{text}}"],
"providers": ["openai:gpt-4o-mini"],
"tests": [
{
"vars": {"text": "Great product!"},
"assert": [{"type": "contains", "value": "positive"}]
}
]
})
print(f"Pass rate: {results.stats.successes}/{results.stats.total}")המהנדסים שלנו עם ניסיון של 5+ שנים ב-AI/ML ביצעו למעלה מ-40 פרויקטי אינטגרציה של LLM. אנו מבטיחים שכיסוי הבדיקות יישמר ויורחב. Promptfoo הוא הכלי הגמיש ביותר לבדיקות רגרסיה של פרומפטים. בקשו ייעוץ — נראה כיצד Promptfoo משתלב ב-workflow שלכם ונעריך את ההיקף ביום אחד. גישה כוללת: ממקרי בדיקה ועד CI/CD, עם תיעוד והדרכה. קבלו ביקורת פרומפט — צרו קשר!







