איך יוצרים יכולות של סוכנים ל-Gemini CLI

1. מבוא

בשיעור ה-Lab הזה תלמדו איך ליצור כישורי סוכן כדי לספק למודלים של שפה גדולה (LLM) גישה לידע ולתהליכי עבודה בהתאמה אישית. תצרו אותו ככלי מקומי שאפשר לגשת אליו מ-Gemini CLI.

הפעולות שתבצעו:

  • אתם יכולים ליצור כישורי סוכן משלכם לדברים שאתם אוהבים.
  • איך משתמשים ב-Gemini CLI כדי לשאול שאילתות לגבי מיומנות
  • מתקינים את Agent Skills for Firebase הרשמי ומשתמשים בו כדי ליצור ולפרוס אפליקציה.

מה תלמדו

  • איך לבנות מיומנות.
  • איך כותבים קובץ SKILL.md.
  • איך משתמשים ביכולות מקומיות עם Gemini CLI.

2. הגדרת הפרויקט

  1. אם עדיין אין לכם חשבון Google, אתם צריכים ליצור חשבון Google.
    • משתמשים בחשבון לשימוש אישי במקום בחשבון לצורכי עבודה או בחשבון בית ספרי. יכול להיות שבחשבונות לצורכי עבודה או בחשבונות בית ספריים יש הגבלות שלא מאפשרות להפעיל את ממשקי ה-API שנדרשים למעבדה הזו.
  2. נכנסים למסוף Google Cloud.
  3. מפעילים את החיוב במסוף Cloud.
    • העלות של השלמת ה-Lab הזה במשאבי Cloud צריכה להיות פחות מ-1$.
    • כדי למחוק משאבים ולמנוע חיובים נוספים, אפשר לבצע את השלבים בסוף ה-Lab הזה.
    • משתמשים חדשים זכאים לתקופת ניסיון בחינם בשווי 300$.
  4. יוצרים פרויקט חדש או בוחרים להשתמש בפרויקט קיים.
    • אם מופיעה שגיאה לגבי מכסת הפרויקט, צריך לעשות שימוש חוזר בפרויקט קיים או למחוק פרויקט קיים כדי ליצור פרויקט חדש.

3. פתיחת Cloud Shell Editor

  1. כדי לעבור ישירות אל Cloud Shell Editor, לוחצים על הקישור הזה.
  2. אם תתבקשו לאשר בשלב כלשהו היום, תצטרכו ללחוץ על אישור כדי להמשיך. לוחצים כדי לתת הרשאה ל-Cloud Shell
  3. אם הטרמינל לא מופיע בתחתית המסך, פותחים אותו:
    • לוחצים על הצגה.
    • לוחצים על Terminal (מסוף)פתיחת טרמינל חדש ב-Cloud Shell Editor.
  4. בטרמינל, מגדירים את הפרויקט באמצעות הפקודה הבאה:
    • פורמט:
      gcloud config set project [PROJECT_ID]
      
    • דוגמה:
      gcloud config set project lab-project-id-example
      
    • אם אתם לא זוכרים את מזהה הפרויקט:
      • כדי לראות את כל מזהי הפרויקטים, מריצים את הפקודה:
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      הגדרת מזהה הפרויקט בטרמינל של Cloud Shell Editor
  5. תוצג ההודעה הבאה:
    Updated property [core/project].
    
    אם מופיע WARNING ומוצגת השאלה Do you want to continue (Y/n)?, סביר להניח שהזנתם את מזהה הפרויקט בצורה שגויה. לוחצים על n, לוחצים על Enter ומנסים להריץ שוב את הפקודה gcloud config set project.

4. יצירת מיומנות של "דברים מועדפים"

מיומנויות של סוכנים הן ספריות שמכילות לפחות קובץ SKILL.md שמספק הוראות וידע לסוכן AI. בקטע הזה תיצרו מיומנות שמלמדת את Gemini CLI על הדברים האהובים עליכם.

  1. יוצרים ספרייה לאחסון המיומנות:
    mkdir -p ~/.gemini/skills/my-favorite-things
    
  2. יוצרים ופותחים קובץ חדש SKILL.md למיומנות:
    cloudshell edit ~/.gemini/skills/my-favorite-things/SKILL.md
    
    הפקודה cloudshell edit תפתח את הקובץ SKILL.md בעורך שמעל הטרמינל.
  3. מוסיפים את התוכן הבא לקובץ SKILL.md:
    ---
    name: my-favorite-things
    description: Information about my favorite things. Use this skill to answer questions about my favorite color, food, or programming language.
    ---
    
    My favorite color is blue.
    My favorite food is pizza.
    My favorite programming language is Python.
    
    If asked about one of my favorite things, please respond with the information provided above.
    

יצרתם את המיומנות הראשונה שלכם רק באמצעות קובץ SKILL.md. הגיע הזמן להשתמש במיומנות הזו ב-Gemini CLI.

5. שימוש במיומנות מ-Gemini CLI

אחרי שיצרתם מיומנות, אתם יכולים להשתמש בה באמצעות Gemini CLI. ‫Gemini CLI מזהה באופן אוטומטי את הכישורים שמוצבים ב-~/.gemini/skills.

  1. הפעלת Gemini CLI ב-Cloud Shell
    gemini
    
    יכול להיות שתצטרכו ללחוץ על Enter כדי לאשר חלק מהגדרות ברירת המחדל.
  2. מבקשים מ-Gemini לפרט את המיומנויות שזמינות לו בהקשר הנוכחי
    /skills
    
    my-favorite-things אמור להופיע ברשימת המיומנויות הזמינות.
  3. שואלים את Gemini מה הצבע האהוב עליו:
    What is my favorite color?
    
    ‫Gemini CLI צריך להשתמש במיומנות my-favorite-things כדי לענות על השאלה שלך. אם תתבקשו, תצטרכו לאשר ל-Gemini CLI להשתמש במיומנות.

הפלט צריך להראות ש-Gemini CLI השתמש במיומנות שלכם וענה 'כחול'.

הצלחתם! יצרתם בהצלחה מיומנות ובדקתם אותה באמצעות Gemini CLI.

כשמוכנים לסיים את הסשן, מקלידים /quit ולוחצים על Enter כדי לצאת מ-Gemini CLI.

6. התקנת Agent Skills for Firebase

בנוסף ליצירת מיומנויות משלכם, אתם יכולים להתקין מיומנויות שנוצרו על ידי אחרים. ‫Agent Skills for Firebase (GitHub) הם מודולים ניידים ועצמאיים של ידע, הוראות ותהליכי עבודה ספציפיים ל-Firebase. ההנחיות האלה נועדו לעזור לממשקי AI להבין את השיטות המומלצות לשימוש ב-Firebase ולבצע משימות מורכבות ברמת דיוק גבוהה יותר ובעלות נמוכה יותר של טוקנים.

אפשר להתקין את כל כישורי הסוכן ל-Firebase באמצעות skills CLI בטרמינל:

npx skills add firebase/agent-skills

הפקודה הזו תוריד ותתקין מיומנויות, כולל firebase-basics, ‏ firebase-auth-basics, ‏ firebase-firestore-basics ו-firebase-app-hosting-basics, כך שתוכלו להשתמש בהן ב-Gemini CLI לצד המיומנות my-favorite-things.

מידע נוסף על כישורי נציגים ב-Firebase זמין במאמר כישורים זמינים.

7. היכולות של סוכן המכירות הווירטואלי ל-Firebase

התוספים של סוכן ל-Firebase מותקנים ומוכנים לשימוש ב-Gemini CLI. כדי לראות אותן, מריצים את Gemini CLI ומקלידים /skills firebase:

gemini

לאחר מכן ב-Gemini CLI:

/skills firebase

תוצג רשימה של מיומנויות Firebase שהותקנו, כמו firebase-basics,‏ firebase-auth-basics,‏ firebase-firestore-basics ו-firebase-app-hosting-basics.

8. (אופציונלי) שימוש ב-Agent Skills for Firebase כדי ליצור ולפרוס אפליקציה

עכשיו אפשר להשתמש ב-Agent Skills for Firebase שהותקן כדי ליצור אפליקציית אינטרנט של רשימת מטלות, עם אימות משתמש ומסד נתונים, ולפרוס אותה ב-Firebase App Hosting.

  1. אם אתם עדיין ב-Gemini CLI, מקלידים /quit כדי לצאת.
  2. יוצרים ספרייה חדשה לפרויקט ועוברים אליה:
    mkdir todo-app && cd todo-app
    
  3. מתחברים ל-Firebase באמצעות חשבון Google. אם אתם נמצאים ב-Cloud Shell או בסביבה אחרת ללא דפדפן, משתמשים בדגל --no-localhost.
    firebase login --no-localhost
    
    פועלים לפי ההוראות כדי לתת הרשאה ל-Firebase CLI.
  4. מפעילים את Gemini CLI:
    gemini
    
  5. עכשיו, מבקשים מ-Gemini ליצור את קוד האפליקציה:
    Generate HTML, CSS, and Javascript for a single page  application. It should use Google Sign-in with Firebase Authentication, and save tasks in Cloud Firestore for the signed-in user. A user should be able to add new tasks and see a list of their tasks.
    
    יכול להיות ש-Gemini יבקש ליצור קבצים כמו index.html, style.css ו-script.js. מאשרים את הפעולה.
  6. לבסוף, פורסים את האפליקציה ב-Firebase App Hosting:
    /firebase-app-hosting-basics deploy my web app to Firebase App Hosting.
    
    פועלים לפי ההנחיות כדי להגדיר את אירוח האפליקציות ולהשלים את הפריסה. אחרי הפריסה, תקבלו כתובת URL לאפליקציה שלכם בשידור חי.

9. סיכום

מעולה! יצרתם בהצלחה מיומנות ולמדתם איך להתקין מיומנויות נוספות ל-Gemini CLI.

(אופציונלי) ניקוי

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

אם רוצים, מוחקים את הפרויקט:

gcloud projects delete $GOOGLE_CLOUD_PROJECT

מומלץ גם למחוק משאבים מיותרים מהדיסק של Cloud Shell. אתם יכולים:

  1. מחיקת ספריית הכישורים:
    rm -rf ~/.gemini/skills/my-favorite-things
    
  2. אזהרה! אי אפשר לבטל את הפעולה הבאה! אם אתם רוצים למחוק את כל מה שיש ב-Cloud Shell כדי לפנות מקום, אתם יכולים למחוק את כל ספריית הבית. חשוב לוודא שכל מה שרוצים לשמור נשמר במקום אחר.
    sudo rm -rf $HOME