במאגר הסוכנים, מיומנות מייצגת יכולת עצמאית שניתנת להפעלה, שיכולה להיות לסוכן. הוא מכיל הוראות בקובץ SKILL.md, סקריפטים של קוד ונכסים שמרחיבים את יכולת החשיבה הרציונלית של הסוכן. כשרושמים מיומנויות עצמאיות במרשם הסוכנים, אפשר לנהל, ליצור גרסאות ולשתף יכולות בצורה מרכזית בין סוכני ה-AI בארגון.
אחרי שמגדירים את Agent Registry, אפשר לראות מיד את המיומנויות שנוצרו על ידי Google. במאמר הזה מוסבר איך לרשום באופן ידני מיומנויות עצמאיות משלכם במאגר המיומנויות של הסוכן.
לפני שמתחילים
לפני שמתחילים, צריך להגדיר את Agent Registry. כדי לבצע את המשימות האלה, צריך מזהה פרויקט.
כדי להשתמש בפקודות של ה-CLI של gcloud שמופיעות במסמך הזה, צריך לוודא שהגדרתם את סביבת ה-CLI של gcloud.
התפקידים הנדרשים
כדי לקבל את ההרשאות שנדרשות לרישום מיומנויות ב-Agent Registry, צריך לבקש מהאדמין להקצות לכם ב-IAM את התפקיד משתמש ב-Agent Registry (roles/agentregistry.user) בפרויקט.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
מגבלות על מטען הנתונים של ההטמעה
כדי לרשום מיומנות, צריך לארוז את קובצי המקור של היכולת בארכיון ZIP. הארכיון חייב לכלול קובץ הוראות SKILL.md ברמה הבסיסית (root).
במהלך שלב ההטמעה בתהליך רישום היכולת, Agent Registry בודק שהמטען הייעודי (payload) עומד במגבלות הבאות:
- גודל ארכיון ZIP: הגודל המקסימלי של ארכיון דחוס הוא 500 KB.
- הגודל הכולל של המטען הייעודי (payload) ללא דחיסה: הגודל המקסימלי ללא דחיסה הוא 10MB.
- גודל של כל קובץ: הגודל המקסימלי של כל קובץ ללא דחיסה הוא 1MB.
- קינון עמוק: עומק הקינון המקסימלי של מדריכים הוא 8 רמות.
- תאימות למפרט: קובץ
SKILL.mdצריך להכיל קטע תקף של YAML front matter שמגדיר את השם, התיאור והמטא-נתונים כפי שמוגדרים במפרט המיומנויות של הסוכן.
רישום של סקיל
אחרי שמגדירים את Agent Registry, אפשר לראות מיד את המיומנויות שנוצרו על ידי Google. עם זאת, אתם יכולים גם לרשום מיומנויות משלכם באופן ידני. לכל מיומנות יש גרסת ברירת מחדל, והיא יכולה להכיל כמה גרסאות של מיומנויות.
כדי לרשום מיומנויות משלכם, אתם יוצרים מאגר לוגי של מיומנויות ומעלים את מטען הנתונים של הגרסה הראשונית בפעולה אחת. בהמשך תוכלו לנהל את הכישורים הרשומים ואת גרסאות הסקיל הבאות.
הכישורים שאתם או משתמשים אחרים יוצרים מוקצים באופן אוטומטי לprivateהמוציא לאור שמוגדר כברירת מחדל כדי למנוע התנגשויות בשמות עם כישורים שנוצרו על ידי Google.
לכן, המזהה שמתפרסם של מיומנות מסוימת הוא private-SKILL_ID. אי אפשר לציין מפרסם מותאם אישית במהלך יצירת מיומנות.
לדוגמה, אם יוצרים מיומנות עם המזהה workspace-tools, שם המשאב נוצר בתור projects/PROJECT_ID/locations/LOCATION/skills/private-workspace-tools.
שם המשאב האחיד (URN) הלוגי מוקצה כ-urn:skill:projects-PROJECT_NUMBER:locations:LOCATION:private-workspace-tools.
חובה להשתמש במזהה שפורסם (private-workspace-tools) בכל הפעולות הבאות של המיומנות.
כדי לרשום סקיל, בצע את השלבים הבאים:
המסוף
נכנסים לדף Agent Registry במסוף Google Cloud :
מתוך כלי לבחירת פרויקטים, בוחרים את הפרויקט Google Cloud שלכם.
לוחצים על הכרטיסייה כישורים.
בכרטיסייה מיומנויות, הלחצן הוספת מיומנות מציג שתי אפשרויות. אפשר לבחור באחת מהאפשרויות הבאות:
- הוספת סקיל: יצירת מאגר חדש של סקילים במרשם. אפשר להעלות חבילת מיומנויות כדי ליצור את הגרסה הראשונה.
- ייבוא סקיל: כדי להוסיף חבילת סקילים חדשה בהתאמה אישית, מעלים חבילת ZIP שמכילה את הקוד או את הוראות ההנחיה (קובץ
SKILL.md).
בחלונית Create skill או Import skill, מציינים את הפרטים הבאים:
- שם תצוגה: מזינים שם ידידותי למשתמש למיומנות.
- תיאור: מזינים סיכום קצר שמסביר את היכולות של המיומנות.
- מיקום: בוחרים את האזור הגיאוגרפי, לדוגמה,
global,usאוeu.
בקטע מקור מטען ייעודי, בוחרים אחת מהאפשרויות הבאות:
- קובץ: גוררים את קובץ ה-ZIP של מיומנות ארוזה או מחפשים בספרייה המקומית.
Bucket: מזינים את הנתיב לארכיון ה-ZIP שמאוחסן בקטגוריה של Cloud Storage, בפורמט
gs://BUCKET_NAME/SKILL_PACKAGE.zip.
לוחצים על יצירה.
המיומנות נוצרת. בכל הפעולות הבאות שקשורות לסקיל, צריך להתייחס לסקיל כאל private-SKILL_ID, כפי שמוצג במסוףGoogle Cloud .
gcloud
כדי לרשום מיומנות ולהעלות את מטען הנתונים הראשוני שלה, אפשר להעלות קובץ ZIP מקומי או לייבא חבילה שמאוחסנת ב-Cloud Storage.
מחליפים את מה שכתוב בשדות הבאים:
-
SKILL_ID: מזהה המשאב של המיומנות, לדוגמה,workspace-docs-skill. אחרי היצירה, המערכת מוסיפה אוטומטית את הקידומתprivate-לרישום. צריך להשתמש במזהה עם הקידומת בכל הפקודות הבאות של המיומנות, לדוגמהprivate-workspace-docs-skill. -
PROJECT_ID: מזהה הפרויקט. -
LOCATION: האזור הגיאוגרפי, למשלglobal,usאוeu. -
DISPLAY_NAME: שם ידידותי למשתמש של המיומנות.
DESCRIPTION: סיכום קצר שמסביר את היכולות של המיומנות.העלאת קובץ ZIP מקומי: כדי לרשום סקיל באמצעות מטען ייעודי מקומי של קובץ ZIP:
gcloud alpha agent-registry skills create SKILL_ID \ --project=PROJECT_ID \ --location=LOCATION \ --display-name="DISPLAY_NAME" \ --description="DESCRIPTION" \ --payload="LOCAL_ZIP_PATH"מחליפים את
LOCAL_ZIP_PATHבנתיב לארכיון של חבילת המיומנות במחשב המקומי, לדוגמה,./workspace-docs-skill.zip.ייבוא מקטגוריה של Cloud Storage: כדי לרשום מיומנות באמצעות ארכיון ZIP שמתארח בקטגוריה של Cloud Storage:
gcloud alpha agent-registry skills create SKILL_ID \ --project=PROJECT_ID \ --location=LOCATION \ --display-name="DISPLAY_NAME" \ --description="DESCRIPTION" \ --gcs-source-uri="gs://BUCKET_NAME/SKILL_PACKAGE.zip"מחליפים את מה שכתוב בשדות הבאים:
-
BUCKET_NAME: שם הקטגוריה של Cloud Storage שמכילה את חבילת ה-ZIP. -
SKILL_PACKAGE: השם של חבילת המיומנויות שמכילה את מטען הייעודי (payload) של המיומנות.
-
REST
כדי ליצור סקיל עם גרסה ראשונית מוטבעת:
שיטת ה-HTTP וכתובת ה-URL
POST https://agentregistry.googleapis.com/v1alpha/projects/{project}/locations/{location}/skills?skillId={skillId}
תוכן בקשת JSON (העלאת קובץ מקומי)
כדי ליצור מיומנות על ידי העלאה ישירה של בייטים של ארכיון ZIP מקומי, משתמשים במטען הייעודי (payload) הבא:archiveUploadSource
{
"displayName": "DISPLAY_NAME",
"description": "DESCRIPTION",
"type": "SIMPLE",
"targetState": "TARGET_STATE_ACTIVE",
"initialRevision": {
"archiveUploadSource": {
"archiveContent": "BASE64_ZIP_BYTES"
}
}
}
מחליפים את BASE64_ZIP_BYTES בייצוג המחרוזת המקומית של ארכיון ה-ZIP בקידוד base64.
תוכן בקשת JSON (ייבוא מ-Cloud Storage)
לחלופין, כדי ליצור מיומנות באמצעות ארכיון שמאוחסן בקטגוריה של Cloud Storage, משתמשים בפקודה gcsSource:
{
"displayName": "DISPLAY_NAME",
"description": "DESCRIPTION",
"type": "SIMPLE",
"targetState": "TARGET_STATE_ACTIVE",
"initialRevision": {
"gcsSource": {
"uri": "gs://BUCKET_NAME/SKILL_PACKAGE.zip"
}
}
}
מחליפים את מה שכתוב בשדות הבאים:
-
BUCKET_NAME: שם קטגוריה של Cloud Storage שמכילה את חבילת ה-ZIP. -
SKILL_PACKAGE: השם של חבילת המיומנויות שמכילה את מטען הייעודי (payload) של המיומנות.
פקודת curl (העלאת קובץ מקומי)
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"displayName": "DISPLAY_NAME",
"description": "DESCRIPTION",
"type": "SIMPLE",
"targetState": "TARGET_STATE_ACTIVE",
"initialRevision": {
"archiveUploadSource": {
"archiveContent": "$(base64 -w0 local_skill.zip)"
}
}
}' \
"https://agentregistry.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/skills?skillId=SKILL_ID"
כדי להעלות קובץ לקטגוריה של Cloud Storage, מחליפים את תוכן בקשת ה-JSON בשדות ובערכים המתאימים.
המאמרים הבאים
- איך מנהלים את הכישורים הרשומים
- איך מוסיפים ועורכים גרסאות של מיומנויות
- בודקים את פרטי המוציא לאור המאומת.