1. מבוא
סקירה כללית
בשיעור ה-Codelab הזה תלמדו איך להשתמש במסגרת הקוד הפתוח Inspect כדי לבצע הערכות מול קבוצה של מיומנויות סוכנים. תריצו את ההערכה הזו במחשב שלכם באמצעות קונטיינרים של Docker. Gemini CLI ישמש כסוכן הנדסת התוכנה לביצוע ההערכה, באמצעות Inspect SWE
הפעולות שתבצעו:
להריץ הערכה על קבוצה של כישורי סוכן באמצעות הערכות של הנחיות בהתאמה אישית.
מה לומדים
- איך מריצים הערכה של מיומנויות באמצעות מסגרות קוד פתוח.
- איך לכתוב הנחיות לשימוש כשאלות להערכה בכלי למתן ציונים על שאלות ותשובות.
2. לפני שמתחילים
הגדרת Gemini API
כדי להשתמש ב-Gemini API, צריך ליצור מפתח API ב-Google AI Studio.
אופציונלי: בדיקת המפתח
אם יש לכם גישה לשורת פקודה עם curl, מוסיפים את המפתח לשורה הראשונה של הבלוק הבא ומפעילים פתרונות חכמים במסוף כדי לבדוק את מפתח ה-API.
export GEMINI_API_KEY=Paste_your_API_key_here
curl "https://generativelanguage.googleapis.com/v1beta/models?key=${GEMINI_API_KEY}"
צריכה להופיע רשימה של מודלים בפורמט JSON, כמו models/gemini-3.1-pro-preview. המשמעות היא שהפעולה הצליחה.
התקנת יחסי תלות במערכת
כדי להשלים את המדריך הזה, תצטרכו להתקין את התוכנה הבאה במחשב:
- Docker
- הפוליגון הזה ישמש להרצת ההערכה בסביבת ארגז חול
- Python
- זו שפת התכנות שבה נכתב הכלי Inspect
- Node.js ו-NPM
- זו שפת התכנות שבה נכתב Gemini CLI.
- git
- הכתובת הזו תשמש לקבלת עותק של מאגר המיומנויות שנבדק
3. זיהוי המיומנויות להערכה
מיומנויות של סוכנים הן דרך סטנדרטית להעניק לסוכני AI יכולות ומומחיות חדשות.
בשיעור Codelab הזה נשתמש במאגר Google Agent Skills (https://github.com/google/skills) כדוגמה, אבל אפשר לשנות את זה לכל מאגר GitHub שמכיל מיומנויות של סוכן.
על סמך התוכן של המאגר, נשתמש בסדרה של שאלות ותשובות להנחיות שאנחנו יודעים שהן כלולות במערך הכישורים. השאלות והתשובות האלה ישמשו את סוכן הנדסת התוכנה כדי לבדוק אם הכישורים שסופקו יכולים לענות על השאלה שניתנה.
מאגר המיומנויות של הסוכן של Google כולל מיומנות שספציפית ל-Cloud Run, ולכן אפשר לשאול את השאלה הבאה:
"How do you deploy a service to Cloud Run, given code on my local machine?"
התשובה לשאלה הזו היא "gcloud run deploy". אנחנו נספק את השאלה והתשובה האלה, וגם את מאגר המיומנויות ב-GitHub, למעריך, והוא יאשר אם הסוכן יכול לענות על השאלה באמצעות המיומנויות שסופקו.
4. הרצת ההערכה
בשלב הזה, תפעילו דוגמה להערכה.
התקנת יחסי תלות של Python
במחשב המקומי, מריצים את הפקודה הבאה כדי להתקין את יחסי התלות של Python.
pip install inspect-ai inspect-swe google-genai
יצירת עותק של מאגר המיומנויות
יוצרים עותק מקומי של מאגר המידע של Google Agent Skills בתיקייה בשם google-skills.
git clone https://github.com/google/skills.git --depth 1 google-skills
בדיקת אפליקציית Python
ההערכה שתפעילו היא:
from pathlib import Path
import os
from inspect_ai import Task, task
from inspect_ai.dataset import Sample
from inspect_ai.scorer import model_graded_qa
from inspect_swe import gemini_cli
if "GEMINI_API_KEY" not in os.environ:
raise ValueError("Missing GEMINI_API_KEY. Please set GEMINI_API_KEY environment variable.")
@task
def skills_eval(agent_skills_folder, model="google/gemini-3.1-pro-preview"):
# For the provided folder, find all folders containing skills
skill_files = (Path.cwd() / agent_skills_folder).rglob("SKILL.md")
all_skills = [str(s.parent) for s in skill_files]
# Example question and answers
questions = [
Sample(
input="How do I deploy a Cloud Run service?",
target="gcloud run deploy"
),
Sample(
input="How can I connect to a Cloud SQL instance",
target="cloud sql proxy"
),
Sample(
input="How can I list the roles available in IAM?",
target="fortune | cowsay",
),
]
return Task(
dataset=questions,
solver=gemini_cli(skills=all_skills),
scorer=model_graded_qa(),
sandbox="docker",
model=model,
)
שומרים את הקובץ בפורמט skills-eval.py.
הקוד הזה מכיל פונקציה מעוטרת skills_eval, שמשתמשת בלוגיקה הבאה:
- קחו את הספרייה שצוינה וצרו רשימה של כל קובצי המיומנויות במאגר הזה.
- שימוש במערך של שאלות ותשובות סטטיות כמערך הנתונים
- הערה: אחת מהשאלות מכילה תשובה שגויה בכוונה.
- מריצים את ההערכה באמצעות:
- Gemini CLI כפתרון
- המודל Model Grader QA ככלי למתן ציונים
- Docker כארגז חול
- Gemini Pro 3.1 בתור המודל.
בשלב הבא, תשתמשו בכלי הבדיקה כדי להריץ את ההערכה הזו.
הרצת ההערכה
כדי להריץ את ההערכה, משתמשים בפקודה הבאה:
inspect eval skills-eval.py -T agent_skills_folder=google-skills
בפעם הראשונה שההערכה הזו תפעל, היא תוריד קובצי Docker, תתקין תלות של Node.JS ו-Python, והתהליך ייקח זמן, בהתאם לחיבור לרשת. אם תריצו את ההערכה שוב, ההגדרה הזו תישמר במטמון.
אחרי ההורדה, הכלי Inspect יבצע את ההערכה. ממשק אינטראקטיבי יופיע בטרמינל, ויאפשר לכם ליצור אינטראקציה בזמן שההערכה מתבצעת.

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

בשלב הבא תבדקו את התוצאות.
5. צפייה בתוצאות ופירוש שלהן
אחרי שההערכה מסתיימת, אפשר לראות את התוצאות שלה.
הצגת התוצאות
ההערכה כתבה קובץ .eval לתיקייה logs/. זהו קובץ בינארי, ואי אפשר לצפות בו ישירות.
כדי לראות את תוצאות ההערכה, משתמשים בכלי לבדיקת רכיבים:
inspect view
ייווצר שרת אינטרנט בכתובת http://127.0.0.1:7575. פותחים את כתובת ה-URL הזו כדי לראות את התוצאות.

פירוש התוצאות
ההערכה הזו נעשתה באמצעות כלי להערכת מודלים, שבו ניתנים הציונים הבאים:
- C: השלמה
- התשובה הייתה נכונה לחלוטין
- "P": חלקי
- התשובה הייתה נכונה ברובה
- "I": לא הושלם
- התשובה לא הייתה נכונה.
ב-Codelab הזה יש תשובה אחת שגויה בכוונה, שמופיעה כ-I (לא מלאה), והיא מורידה את רמת הדיוק הכללית ל-0.667 (שתי תשובות נכונות מתוך שלוש).
כדי לראות מידע נוסף על השיטה שנבחרה, על האסימונים שנעשה בהם שימוש ועל פרטים נוספים לגבי ההערכה, אפשר ללחוץ על אחת מהכרטיסיות.
6. הארכת תקופת הבדיקה
יש כמה שינויים שאפשר לבצע בהערכה הזו כדי להרחיב את ההיקף שלה.
הוספת שאלות
אם יש לכם מאגרי מידע עם כמה מיומנויות, כדאי להוסיף עוד שאלות ותשובות על סמך התוכן של מאגר המיומנויות. ב-Inspect אפשר להשתמש בקבצים כקבוצות נתונים, כולל קוראי קבוצות נתונים מובנים לפורמטים CSV, JSON ו-JSON Line.
עדכון המיומנויות של הסוכן שנבדקות
כשמאגרי Agent Skills מתעדכנים, אתם יכולים לעדכן את העותק המקומי של הקוד ולהריץ מחדש את ההערכה על סמך המידע החדש. כך תוכלו לעקוב אחרי הביצועים של הכישורים לאורך זמן. אם מיומנות של נציג מתעדכנת, מריצים את הפקודה git pull בעותק המקומי כדי לעדכן את הקוד, ואז מריצים מחדש את ההערכה כדי לראות את השינויים.
שימוש בשיטות שונות למתן ניקוד
בשיעור Codelab הזה השתמשנו בשיטת הניקוד Model Graded. ב-Inspect יש כמה כלי ניקוד מובנים, ויש גם אפשרות ליצור כלי ניקוד מותאם אישית.
שימוש במודלים שונים של פותרים
בשיעור Codelab הזה השתמשנו ב-Gemini 3.1 Pro כמודל לפתרון בעיות. אפשר לשנות את זה על ידי ציון שם הדגם כפרמטר בשורת הפקודה, בלי לשנות את הקוד. אפשר להריץ מחדש את ההערכה עם מודל Gemini אחר באמצעות הפקודה הבאה:
inspect eval skills-eval -T agent_skills_folder=google-skills \
-T model=google/gemini-3.1-flash-live-preview
הארגומנט של המשימה יופיע בכלי לבדיקת תצוגה, כך שתוכלו לעקוב אחרי הארגומנטים ששימשו להרצת ההערכה.
הערכת מיומנויות שונות
בשיעור Codelab הזה השתמשנו במאגר Google Agent Skills בתור המיומנויות שנבדקות.
אפשר להעריך מאגרי מיומנויות שונים, אבל צריך גם לעדכן את השאלות והתשובות כך שיתאימו. לדוגמה, Flutter Agent Skills לא יספק תשובות לשאלות ספציפיות לגבי Cloud Run.
7. מזל טוב
למדתם איך להריץ הערכה של מיומנויות באמצעות מסגרות קוד פתוח, ואיך לכתוב הנחיות לשימוש כשאלות להערכה בכלי להערכת שאלות ותשובות.