שימוש בכלים ובסוכנים עם Gemini API

הכלים והסוכנים מרחיבים את היכולות של מודלי Gemini, ומאפשרים להם לפעול בעולם, לגשת למידע בזמן אמת ולבצע משימות חישוביות מורכבות. מודלים יכולים להשתמש בכלים גם באינטראקציות רגילות של בקשה ותגובה וגם בסשנים של סטרימינג בזמן אמת באמצעות Live API.

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

‫Gemini API מספק חבילה של כלים וסוכנים מובנים ומנוהלים במלואם, שעברו אופטימיזציה למודלים של Gemini. אפשר גם להגדיר כלים בהתאמה אישית באמצעות הפעלת פונקציות.

כלים מובנים זמינים

כלי תיאור תרחישים לדוגמה
חיפוש Google התשובות מבוססות על אירועים עכשוויים ועובדות מהאינטרנט כדי להפחית את ההזיות. – מענה לשאלות על אירועים מהזמן האחרון
– אימות עובדות בעזרת מקורות מגוונים
מפות Google פיתוח עוזרים דיגיטליים שמודעים למיקום, שיכולים למצוא מקומות, לקבל מסלולים ולספק הקשר מקומי עשיר. – תכנון מסלולי נסיעה עם כמה עצירות
– חיפוש עסקים מקומיים על סמך קריטריונים של המשתמש
הרצת קוד לאפשר למודל לכתוב ולהריץ קוד Python כדי לפתור בעיות מתמטיות או לעבד נתונים בצורה מדויקת. – פתרון משוואות מתמטיות מורכבות
– עיבוד וניתוח של נתוני טקסט בצורה מדויקת
הקשר של כתובת ה-URL הנחיית המודל לקרוא ולנתח תוכן מדפי אינטרנט או ממסמכים ספציפיים. – מענה לשאלות על סמך כתובות URL או מסמכים ספציפיים
– אחזור מידע מדפי אינטרנט שונים
שימוש במחשב (תצוגה מקדימה) הפעלת Gemini כדי להציג מסך וליצור פעולות לאינטראקציה עם ממשקי משתמש של דפדפן אינטרנט (ביצוע בצד הלקוח). – אוטומציה של תהליכי עבודה שחוזרים על עצמם באינטרנט
– בדיקה של ממשקי משתמש של אפליקציות אינטרנט
חיפוש קבצים יצירת אינדקס וחיפוש במסמכים שלכם כדי להפעיל יצירה משולבת-אחזור (RAG). – חיפוש במדריכים טכניים
– מענה לשאלות על נתונים קנייניים

פרטים על העלויות שמשויכות לכלים ספציפיים מופיעים בדף התמחור.

נציגי תמיכה זמינים

סוכן תיאור תרחישים לדוגמה
Deep Research מתכנן, מבצע ומסכם באופן אוטונומי משימות מחקר בכמה שלבים. – ניתוח שוק
– בדיקת נאותות
– סקירות ספרות

איך מתבצעת הרצת כלים

הכלים מאפשרים למודל לבקש פעולות במהלך שיחה. התהליך שונה בהתאם לסוג הכלי: כלי מובנה (בניהול Google) או כלי בהתאמה אישית (בניהול שלכם).

תהליך מובנה בכלי

בכלים המובנים (חיפוש Google, מפות Google, הקשר של כתובת URL, חיפוש קבצים, הרצת קוד), התהליך כולו מתבצע בקריאה אחת ל-API:

  1. אתם שולחים הנחיה: "What is the square root of the latest stock price of GOOG?"
  2. Gemini מחליט שהוא צריך כלים ומפעיל אותם בשרתים של Google (לדוגמה, הוא מחפש את מחיר המניה ואז מריץ קוד Python כדי לחשב את השורש הריבועי).
  3. Gemini מחזיר את התשובה הסופית שמבוססת על תוצאות הכלי.

תהליך מותאם אישית של שימוש בכלי (בקשה להפעלת פונקציה)

בכלים מותאמים אישית ובשימוש במחשב, האפליקציה מטפלת בהרצה:

  1. אתם שולחים הנחיה עם הצהרות על פונקציות (כלים).
  2. Gemini עשוי להחזיר JSON מובנה כדי לקרוא לפונקציה ספציפית (לדוגמה, {"name": "get_order_status", "args": {"order_id": "123"}}), תמיד עם id ייחודי.
  3. אתם מריצים את הפונקציה באפליקציה או בסביבה שלכם.
  4. אתם שולחים את תוצאות הפונקציה, עם אותו id כמו בקשה להפעלת פונקציה, בחזרה אל Gemini.
  5. Gemini משתמש בתוצאות כדי ליצור תשובה סופית או קריאה נוספת לכלי.

מידע נוסף מפורט במדריך להפעלת פונקציות.

שילוב של כלים מובנים וכלים בהתאמה אישית

בבקשות שמשלבות בין כלים מובנים לבין כלים מותאמים אישית (קריאות לפונקציות), המודל משתמש בהעברת הקשר של הכלים כדי לתאם את הביצוע בסביבות שונות:

  1. אתם שולחים הנחיה ומצהירים על הכלים המובנים ועל הפונקציות בהתאמה אישית שאתם רוצים להפעיל, ומגדירים דגל כדי להפעיל תמיכה בשילוב.
  2. Gemini מפעיל כלים מובנים ומתעדף את המשתמש אם נוצרות קריאות לפונקציות בצד הלקוח (הסדר שבו הן מופעלות תלוי בהנחיה ובהחלטה של המודל). הוא מחזיר תשובה עם:
    • אישור של הפעלת הכלי
    • תוצאות התגובה של הכלי (יכול להיות שהן יופיעו אחרי ה-JSON אם המודל יצר שתי קריאות מקבילות לפונקציות)
    • ‫JSON מובנה לקריאה לפונקציה
    • חתימות מוצפנות של מחשבות כדי לשמור על ההקשר
  3. אתם מריצים את הפונקציה באפליקציה או בסביבה שלכם.
  4. אתם מחזירים את כל החלקים של התשובה של Gemini, בנוסף לתוצאות של בקשה להפעלת פונקציה.
  5. Gemini יוצר את התשובה הסופית על סמך כל ההקשר המשולב.

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

פלט מובנה לעומת בקשה להפעלת פונקציה

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

פלט מובנה עם כלים

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

דוגמאות קוד מופיעות במאמר בנושא פלט מובנה עם כלים.

יצירת סוכנים

סוכנים הם מערכות שמשתמשות במודלים ובכלים כדי להשלים משימות מרובות שלבים. ‫Gemini מספק את יכולות ההסקה (ה'מוח') ואת הכלים החיוניים (ה'ידיים'), אבל לרוב צריך מסגרת תזמור כדי לנהל את הזיכרון של הסוכן, את לולאות התכנון ואת שרשור הכלים המורכב.

כדי למקסם את המהימנות בתהליכי עבודה מרובי-שלבים, כדאי ליצור הוראות ששולטות באופן מפורש בדרך שבה המודל מסיק מסקנות ומתכנן. למרות ש-Gemini מספק חשיבה רציונלית כללית חזקה, סוכנים מורכבים נהנים מהנחיות שמכתיבות התנהגויות ספציפיות כמו התמדה כשנתקלים בבעיות, הערכת סיכונים ותכנון פרואקטיבי.

במאמר תהליכי עבודה מבוססי-סוכן מוסבר איך לנסח את ההנחיות האלה. לדוגמה, הוראה למערכת ששיפרה את הביצועים בכמה מדדים של סוכנים בכ-5%:

מסגרות של סוכנים

‫Gemini משולב עם מסגרות סוכנים מובילות בקוד פתוח, כמו:

  • LangChain / LangGraph: בניית זרימות מורכבות של אפליקציות עם שמירת מצב ומערכות מרובות סוכנים באמצעות מבני גרפים.
  • LlamaIndex: חיבור סוכני Gemini לנתונים פרטיים כדי לשפר את תהליכי העבודה באמצעות RAG.
  • CrewAI: ארגון של סוכני AI אוטונומיים שמשתפים פעולה ומגלמים תפקידים.
  • Vercel AI SDK: פיתוח ממשקי משתמש וסוכנים מבוססי-AI ב-JavaScript/TypeScript.
  • Google ADK: מסגרת קוד פתוח ליצירה ולתיאום של סוכני AI שניתן להפעיל אותם יחד.