פיתוח ופריסה של סוכנים ב-Agent Runtime באמצעות הערכה לפיתוח סוכנים (ADK)
ב-Agent Runtime אתם יכולים לארח סוכנים שפותחו באמצעות הערכה לפיתוח סוכנים (ADK). במאמר הזה מוסבר איך ליצור, לפרוס ולבדוק נציג באמצעות ADK.
במדריך למתחילים הזה נסביר איך:
- הגדרת הפרויקט ב- Google Cloud .
- מתקינים את Agent Platform SDK ל-Python ואת ADK.
- לפתח נציג להמרת מטבעות.
- פורסים את הסוכן ב-Agent Runtime.
- בודקים את הסוכן הפעיל.
אתם יכולים גם להשתמש במדריכי ההתחלה המהירה החלופיים הבאים ל-ADK:
- המדריך למתחילים של ADK: המדריך למתחילים של ADK פועל כולו במחשב שלכם, ומניח שאתם משתמשים ב-IDE מקומי ובגישה למסוף.
- המדריך למתחילים ביצירת סוכנים: אוסף של תבניות מוכנות לייצור של סוכני AI גנרטיבי, שנוצרו בשביל Agent Platform.
במדריך למתחילים בנושא שימוש במסגרות נתמכות אחרות, חוץ מ-ADK, מוסבר איך מפתחים ופורסים סוכנים ב-Agent Runtime.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אנחנו ממליצים למשתמשים חדשים ב- Google Cloud ליצור חשבון כדי שיוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform and Cloud Storage APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform and Cloud Storage APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
כדי לקבל את ההרשאות שדרושות לשימוש ב-Agent Runtime, בקשו מהאדמין להקצות לכם את התפקידים הבאים ב-IAM בפרויקט:
- Agent Platform User (
roles/aiplatform.user) - אדמין באחסון (
roles/storage.admin)
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
התקנה והפעלה של Agent Platform SDK ל-Python
מריצים את הפקודה הבאה כדי להתקין את Agent Platform SDK for Python וחבילות נדרשות אחרות:
pip install --upgrade --quiet google-cloud-aiplatform[agent_engines,adk]>=1.112אימות כמשתמש
מעטפת מקומית
מריצים את הפקודה הבאה:
gcloud auth application-default loginColab
מריצים את הקוד הבא:
from google.colab import auth auth.authenticate_user(project_id="PROJECT_ID")Cloud Shell
לא נדרשת כל פעולה.
מריצים את הקוד הבא כדי לייבא את Agent Platform ולהפעיל את ה-SDK:
פרויקט Google Cloud
import vertexai client = vertexai.Client( project="PROJECT_ID", # Your project ID. location="LOCATION", # Your cloud region. )כאשר:
PROJECT_IDהוא מזהה הפרויקט ב- Google Cloud שבו אתם מפתחים ופורסים נציגים.LOCATIONהוא אחד מהאזורים הנתמכים.
פיתוח סוכן
מפתחים כלי להמרת מטבעות בשביל הסוכן:
def get_exchange_rate( currency_from: str = "USD", currency_to: str = "EUR", currency_date: str = "latest", ): """Retrieves the exchange rate between two currencies on a specified date.""" import requests response = requests.get( f"https://api.frankfurter.app/{currency_date}", params={"from": currency_from, "to": currency_to}, ) return response.json()יוצרים מופע של סוכן:
from google.adk.agents import Agent from vertexai import agent_engines agent = Agent( model="gemini-3.5-flash", name='currency_exchange_agent', tools=[get_exchange_rate], ) app = agent_engines.AdkApp(agent=agent)בודקים את הנציג באופן מקומי:
async for event in app.async_stream_query( user_id="USER_ID", message="What is the exchange rate from US dollars to SEK today?", ): print(event)כאשר USER_ID הוא מזהה שמוגדר על ידי המשתמש, עם מגבלת תווים של 128.
פריסת סוכן
פורסים את הנציג על ידי יצירת משאב reasoningEngine ב-Agent Platform:
from vertexai import types
remote_agent = client.agent_engines.create(
agent=app,
config={
"requirements": ["google-cloud-aiplatform[agent_engines,adk]"],
"staging_bucket": "STAGING_BUCKET",
"identity_type": types.IdentityType.AGENT_IDENTITY,
}
)
כאשר STAGING_BUCKET היא קטגוריה של Cloud Storage עם הקידומת gs://.
שימוש בסוכן
כדי לבדוק את הנציג שפרסתם, שלחו שאילתה:
async for event in remote_agent.async_stream_query(
user_id="USER_ID",
message="What is the exchange rate from US dollars to SEK today?",
):
print(event)
הסרת המשאבים
כדי לא לצבור חיובים בחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה, מבצעים את הפעולות הבאות.
remote_agent.delete(force=True)