פיתוח ופריסה של סוכנים ב-Agent Runtime באמצעות ערכה לפיתוח סוכנים (ADK)
Agent Runtime מאפשר לארח סוכנים שפותחו באמצעות הערכה לפיתוח סוכנים (ADK). במאמר הזה נסביר איך ליצור, לפרוס ולבדוק סוכן באמצעות ADK.
במדריך למתחילים הזה מוסבר איך לבצע את השלבים הבאים:
- מגדירים את הפרויקט ב- Google Cloud .
- מתקינים את Agent Platform SDK ל-Python ואת ADK.
- פיתוח סוכן להמרת מטבעות.
- פורסים את הסוכן ל-Agent Runtime.
- בודקים את הסוכן הפעיל.
אפשר גם להשתמש במדריכים הבאים להפעלה מהירה של ADK:
- מדריך למתחילים בנושא ADK: המדריך למתחילים בנושא ADK פועל כולו במחשב שלכם, והוא מניח שאתם משתמשים בסביבת פיתוח משולבת (IDE) מקומית ובגישה לטרמינל.
- Agent Starter Pack: אוסף של תבניות של סוכני 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 (
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)