ניהול סוכנים שנפרסו

‫Agent Runtime מאפשר לנהל סוכנים שנפרסו בפלטפורמה. אפשר להציג, לקבל, לעדכן ולמחוק נציגים שנפרסו באמצעות המסוף, ה-SDK או ה-API בארכיטקטורת REST.

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

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

הצגת רשימה של כל הנציגים שנפרסו בפרויקט ובמיקום מסוימים:

המסוף

  1. במסוף Google Cloud , נכנסים לדף Deployments ב-Agent Platform.

    מעבר אל Deployments

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

Agent Platform SDK

import agentplatform

client = agentplatform.Client(  # For service interactions via client.runtimes
    project="PROJECT_ID",
    location="LOCATION",
)

for agent in client.runtimes.list():
    print(agent)

כדי לסנן את הרשימה לפי display_name:

for agent in client.runtimes.list(
    config={
        "filter": 'display_name="DISPLAY_NAME"',
    },
):
    print(agent)

REST

מפעילים את ה-method‏ reasoningEngines.list.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב-GCP
  • ‫LOCATION: אזור נתמך

ה-method של ה-HTTP וכתובת ה-URL:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.

אחזור של סוכן פעיל

לכל סוכן שנפרס יש מזהה RESOURCE_ID ייחודי. מידע נוסף זמין במאמר פריסת סוכן.

המסוף

  1. במסוף Google Cloud , נכנסים לדף Deployments ב-Agent Platform.

    מעבר אל Deployments

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

  2. לוחצים על השם של הנציג הרלוונטי. נפתח הדף Metrics של הנציג.

  3. אופציונלי: כדי לראות את פרטי הפריסה של הנציג, לוחצים על Deployment details. החלונית Deployment details נפתחת. כדי לסגור את החלונית, לוחצים על סיום.

  4. אופציונלי: כדי לראות את כתובות ה-URL של query ו-streamQuery של הנציג, לוחצים על כתובות URL של API. החלונית כתובות URL של API נפתחת. כדי לסגור את החלונית, לוחצים על סיום.

Agent Platform SDK

הקוד הבא מאפשר לכם לקבל נציג ספציפי שנפרס:

import agentplatform

client = agentplatform.Client(  # For service interactions via client.runtimes
    project="PROJECT_ID",
    location="LOCATION",
)

remote_agent = client.runtimes.get(
    name="projects/PROJECT_ID_OR_NUMBER/locations/LOCATION/reasoningEngines/RESOURCE_ID"
)

REST

מפעילים את ה-method‏ reasoningEngines.get.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב-GCP
  • ‫LOCATION: אזור נתמך
  • ‫RESOURCE_ID: מזהה המשאב של הנציג שנפרס

ה-method של ה-HTTP וכתובת ה-URL:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.

עדכון של הסוכן הפעיל

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

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

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

המסוף

  1. במסוף Google Cloud , נכנסים לדף Deployments ב-Agent Platform.

    מעבר אל Deployments

  2. לוחצים על תפריט הפעולות הנוספות () של הנציג הרלוונטי.

  3. לוחצים על Edit. החלונית Edit של הנציג נפתחת.

  4. עורכים את השם המוצג או את התיאור של הנציג.

  5. לוחצים על Save.

Agent Platform SDK

כדי לעדכן סוכן פעיל (שמתאים ל-RESOURCE_NAME) לסוכן מעודכן (שמתאים ל-UPDATED_AGENT):

import agentplatform

client = agentplatform.Client(  # For service interactions via client.runtimes
    project="PROJECT_ID",
    location="LOCATION",
)

client.runtimes.update(
    name=RESOURCE_NAME,                    # Required.
    agent=UPDATED_AGENT,                   # Optional.
    config={                                                # Optional.
        "requirements": REQUIREMENTS,      # Optional.
        "display_name": "DISPLAY_NAME",    # Optional.
        "description": "DESCRIPTION",      # Optional.
        "extra_packages": EXTRA_PACKAGES,  # Optional.
    },
)

הארגומנטים זהים לאלה שמשמשים לפריסת סוכן.

REST

מפעילים את ה-method‏ reasoningEngines.patch ומציינים update_mask כדי להגדיר אילו שדות לעדכן.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב-GCP
  • ‫LOCATION: אזור נתמך
  • ‫RESOURCE_ID: מזהה המשאב של הנציג שנפרס
  • ‫update_mask: רשימה של שדות מופרדים בפסיקים שצריך לעדכן

ה-method של ה-HTTP וכתובת ה-URL:

PATCH https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID?update_mask="display_name,description"

תוכן בקשת JSON:

{
"displayName": "DISPLAY_NAME",
"description": "DESCRIPTION"
}

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.

הגדרת טלמטריה לסוכן שנפרס

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

הגדרת הטלמטריה לסוכנים שנפרסו עם טלמטריה מופעלת:

  1. במסוף Google Cloud , נכנסים לדף Deployments ב-Agent Platform.

    מעבר אל Deployments

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

  2. מוצאים את השורה של המכונה של Agent Platform. בעמודה Telemetry configuration, לוחצים על Configure. החלונית הגדרת שירות נפתחת.

  3. אפשר לקבוע את ההגדרות הבאות:

    • ניראות: אתם יכולים להגדיר את האפשרויות הבאות:

      • ‫Enable instrumentation of OpenTelemetry traces and logs: כדי לאכלס את לוח הבקרה של יכולת התבוננות לעומק בסוכנים ואת דפי המעקב, לוחצים על המתג כדי להפעיל את האפשרות.

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

      אם איסוף נתוני הטלמטריה מושבת בסוכן, צריך לפרוס מחדש את הסוכן ולעדכן את גרסת Vertex AI SDK ל->= 1.126.1 כדי לראות את אפשרויות ההגדרה של Observability.

    • מאגרי תגים: קובעים את הגדרות מאגר התגים של הנציג שנפרס:

      • Scaling: מזינים את מספר המכונות המינימלי ואת מספר המכונות המקסימלי.

      • משאבים: בוחרים מגבלות לזיכרון ולמעבד (CPU) לכל מאגר.

      • בו-זמניות של קונטיינרים: מזינים מספר מינימלי של מכונות כדי להגדיר את הבו-זמניות לכל קונטיינר ושרת סוכן. הערך המומלץ הוא (2 * CPU + 1), וערך ברירת המחדל הוא 9.

    • ‫Access and Permissions: לוחצים על Manage Permissions in IAM כדי לנהל את ההרשאות של הסוכן בחשבון השירות המשויך.

    • פרטי פריסה: הצגת פרטי הפריסה של הנציג, כולל שם המשאב והשם המוצג.

    • ‫Agent Platform Memory Bank: הצגת פרטי Memory Bank של הסוכן, כולל Memory Generation ו-Memory Search.

  4. לוחצים על עדכון או על סגירה.

הצגת המדדים של הנציג שנפרס

בנציגים שנפרסו, אתם יכולים להשתמש במסוף כדי לראות את המדדים של הנציג:

  1. במסוף Google Cloud , נכנסים לדף Deployments ב-Agent Platform.

    מעבר אל Deployments

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

  2. לוחצים על שם הנציג. מרכז הבקרה של הנציג שבחרתם מוצג.

  3. בוחרים אחת מהכרטיסיות הבאות במרכז הבקרה:

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

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

    • ‫Tools: לוח בקרה עם מדדים של הכלים של הסוכן, כולל מספר קריאות ה-API לכלי, שיעור השגיאות של הכלים וזמן האחזור של הכלים.

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

    • יומנים: הצגת היומנים של הנציג, אם הפעלתם את Cloud Logging בשביל הנציג.

לוח הבקרה של Gemini Enterprise Agent Platform

מחיקת נציג פעיל

מחיקת סוכן שנפרס מסביבת זמן הריצה המנוהלת של Agent Runtime. מחיקת ה-Agent Runtime מבטלת את ה-Agent Identity שלו. כל מדיניות גישה מאוחדת (UAP) ב-IAM שמעניקה הרשאות לחשבון המשתמש הזה, שומרת את חשבון המשתמש שהושבת בכללים שלה. בנוסף, קישור המדיניות נשאר פעיל. כדי להסיר חשבון משתמש לא פעיל, מעדכנים את ה-UAP ומסירים את החשבון מהכללים שלו. אם המדיניות לא מכילה יותר חשבונות משתמשים פעילים, מוחקים את קישור המדיניות.

המסוף

  1. במסוף Google Cloud , נכנסים לדף Deployments ב-Agent Platform.

    מעבר אל Deployments

  2. לוחצים על תפריט הפעולות הנוספות () של הנציג הרלוונטי.

  3. לוחצים על Delete.

  4. לוחצים על מחיקת הנציג.

Agent Platform SDK

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

remote_agent.delete(
    force=True, # Optional, if the agent has resources (e.g. sessions, memory)
)

אפשר גם להפעיל את runtimes.delete() כדי למחוק את הנציג שנפרס שתואם ל-RESOURCE_NAME, באופן הבא:

import agentplatform

client = agentplatform.Client(  # For service interactions via client.runtimes
    project="PROJECT_ID",
    location="LOCATION",
)

client.runtimes.delete(
    name=RESOURCE_NAME,
    force=True, # Optional, if the agent has resources (e.g. sessions, memory)
)

REST

מפעילים את ה-method‏ reasoningEngines.delete.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב-GCP
  • ‫LOCATION: אזור נתמך
  • ‫RESOURCE_ID: מזהה המשאב של הנציג שנפרס

ה-method של ה-HTTP וכתובת ה-URL:

DELETE https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/reasoningEngines/RESOURCE_ID

כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:

אמורים לקבל קוד סטטוס של הצלחה (2xx) ותגובה ריקה.

המאמרים הבאים

מדריך

שימוש בסוכן עם Agent Platform Runtime.