פתרון בגרות ובדיקות יחידה למתחילים


תרגול agentic: פתרון שאלה, Main, ו-unit tests

My ConAgneticExample git

שלבי העבודה שלנו:

הכנות

  1. כל אחד ייצור פרוייקט Console
  2. נוסיף אותו לגיטהאב
  3. נוריד את בגרות קובץ הבגרות 2022.6.381 ממשרד החינוך או מהקישור.

מטרות ראשונות בעבודה עם האייג’נט

  1. המטרה שלי היא להנחות את האייג’נט לפתור את אחת השאלות
  2. להוסיף תשתית בדיקות לפרוייטק
  3. לבקש שיכתוב בדיקות ויריץ אותן
  4. לרשום לי קובץ הנחיות כיצד מריצים בדיקות בפרוייקט

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

  1. האם יש לי גיט? אפשר גם בלי - אבל זו ההמלצה שלי והדרך שלכם לעקוב בצורה מדוייקת אחרי מה שקורה.
  2. לחצו על ה-Copilot (דובי בצד ימין למעלה) העבירו את השליטה למצב אייג’נטי מלא

    • Agent
    • Autopilot
    • MAI-Code-1-Flash בחירת מודל
  3. המלצה - פרומפטים באנגלית. אם אין ברירה (אינכם שולטים בשפה / אין לכם כח וזו בקשה פשוטה) כתבו בשפה שלכם.

הערות לפרומפט ראשון

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

פרומפט ראשון

Solve question 2 in fullB2022.6.381.pdf Before you solve, write here a short summary in Hebrew so we know you read the right question After solving, call the function from Main to to see it displays expected results

תוצאות אצלי:

  • האייג’נט התקשה לקרוא את המסמך בתחילה, אבל לבסוף הצליח.
  • האייג’נט החליט לפתור את שאלת Beaver Antelope בעמוד בעמוד 15. במקום את שאלה 2 בעמוד 3, וגם לא שאל אותי לפני שפתר.
  • זו בעיה - ומצד שני יכול ללמד חשיבה ביקורתית. אסור לסמוך על אייג’נט בעיניים עצומות.

פרומפט המשך - באותו צ’אט

דווקא לא. שאלה 2 היא בעמוד 3 של המסמך. אני שוב מבקש שתציג לי תמצית של השאלה לפני שאתה סתם פותר.

הערות: גם כאן האייג’נט התקשה מאד לקרוא את המסמך. (משמעות התקשה = בערך 2 דק’ עבודה. במונחים אייג’נטיים זה הרבה)

התוצאה: הפעם הציג לי את תוכן השאלה ושאל אותי אם זה בסדר להמשיך לפתרון.

המשך

כן. פתור. תודה

התוצאה: פתר, כתב קריאות לבדיקה מה-Main

פרומפט שני - בצאט חדש

הערות לפני

  • כרגע נמצא ב-12% מהצריכה החודשית. ניתן לראות זאת בלחיצה על הדובי ובחירה ב-Copilot Usage
  • עשיתי קומיט ו-push. זה מאפשר לי לראות מה השתנה. במצב רגיל הייתי מוסיף את הפרוייקט ואת ה-Nuget בעצמי. אבל בעצם “מצב רגיל” הוא עניין מאד פלואידי כיום.
  • הערה: אני מניח שאין ידע קודם בנושא (לכותב הפרומפט)- ולכן הניסוח יחסית מעורפל, בלי דרישה ספציפית לגבי חבילה מסויימות
  • מחליף את המודל ל-Auto

פרומפט

Add unit tests (and whatever is needed to make it work). Report the test results.

הגיט של רוני - על המורה לשקול באיזה שלב להכניס

גיט ציבורי של רוני לתרגול