1. סקירה כללית
סוכן הוא תוכנה אוטונומית שמתקשרת עם מודל AI כדי לבצע פעולה שמבוססת על מטרה, באמצעות הכלים וההקשר שיש לה, והיא מסוגלת לקבל החלטות אוטונומיות שמבוססות על עובדות!
אם באפליקציה שלכם יש כמה סוכנים שפועלים יחד באופן אוטונומי, ופועלים יחד לפי הצורך כדי להשיג את המטרה הגדולה יותר של האפליקציה, כאשר כל אחד מהסוכנים הוא בעל ידע עצמאי ואחראי לתחום התמקדות ספציפי, אז האפליקציה שלכם הופכת למערכת מרובת סוכנים.
ערכת פיתוח סוכנים (ADK)
הערכה לפיתוח סוכנים (ADK) היא מסגרת גמישה ומודולרית לפיתוח ולפריסה של סוכני AI. ADK תומך בפיתוח אפליקציות מתוחכמות על ידי שילוב של כמה מופעים נפרדים של סוכנים במערכת מרובת סוכנים (MAS).
ב-ADK, מערכת מרובת סוכנים היא אפליקציה שבה סוכנים שונים, שלעתים קרובות יוצרים היררכיה, משתפים פעולה או מתאמים כדי להשיג מטרה גדולה יותר. למבנה הזה של האפליקציה יש יתרונות משמעותיים, כולל מודולריות משופרת, התמחות, שימוש חוזר, תחזוקה ואפשרות להגדיר זרימות בקרה מובנות באמצעות סוכני זרימת עבודה ייעודיים.
דברים שכדאי לזכור לגבי מערכת מרובת סוכנים
קודם, חשוב להבין את ההתמחות של כל סוכן ולנמק אותה. – "do you know why you need a specific sub-agent for something", work that out first.
שנית, איך לשלב אותם עם סוכן ראשי כדי לנתב כל אחת מהתשובות ולהבין אותן.
שלישית, יש כמה סוגים של ניתוב סוכנים שאפשר למצוא כאן במסמכי התיעוד. חשוב לבחור את האפשרות שמתאימה לזרימת האפליקציה שלכם. בנוסף, מהם ההקשרים והמצבים השונים שנדרשים לבקרה על זרימת נתונים של מערכת מרובת הסוכנים שלך.
מה תפַתחו
בואו נבנה מערכת מרובת סוכנים לטיפול בשיפוצים במטבח באמצעות MCP Toolbox ל-AlloyDB ו-ADK.
- סוכן להצעת שיפוץ
- סוכן לבדיקת היתרים ותאימות
- בדיקת סטטוס ההזמנה (כלי באמצעות MCP Toolbox למסדי נתונים)
סוכן הצעות לשיפוץ, כדי ליצור את מסמך ההצעה לשיפוץ המטבח.
סוכן ההיתרים והתאימות, לטיפול במשימות שקשורות להיתרים ולתאימות.
סוכן לבדיקת סטטוס הזמנה, לבדיקת סטטוס הזמנה של חומרים על ידי עבודה על מסד הנתונים לניהול הזמנות שהגדרנו ב-AlloyDB. אבל כדי להטמיע את הלוגיקה של אחזור הסטטוס של ההזמנות בחלק הזה של מסד הנתונים, נשתמש ב-MCP Toolbox for AlloyDB.
2. MCP
MCP מייצג Model Context Protocol (פרוטוקול הקשר של המודל), תקן פתוח שפותח על ידי Anthropic ומספק לסוכני AI דרך עקבית להתחבר לכלים, לשירותים ולנתונים חיצוניים. הוא פועל למעשה כסטנדרט משותף לאפליקציות AI, ומאפשר להן לקיים אינטראקציה חלקה עם מקורות נתונים וכלים שונים.
- הוא מבוסס על מודל של לקוח-שרת, שבו אפליקציות AI (המארחים) מריצות את לקוח ה-MCP, שמתקשר עם שרתי ה-MCP.
- כשסוכן AI צריך לגשת לכלי או לנתונים ספציפיים, הוא שולח בקשה מובנית ללקוח ה-MCP, שמעביר אותה לשרת ה-MCP המתאים.
- מאפשרת למודלים של AI לגשת לנתונים ולכלים חיצוניים בלי לדרוש קוד מותאם אישית לכל שילוב.
- מפשטת את התהליך של בניית סוכנים ותהליכי עבודה מורכבים על בסיס מודלים גדולים של שפה (LLM).
MCP Toolbox למסדי נתונים
MCP Toolbox for Databases של Google הוא שרת MCP בקוד פתוח למסדי נתונים. הוא תוכנן במיוחד לארגונים ולשימוש בהפקה. הוא מאפשר לכם לפתח כלים בקלות, במהירות ובאופן מאובטח יותר, כי הוא מטפל במורכבויות כמו איגום חיבורים, אימות ועוד.
לאפשר לנציגים שלכם לגשת לנתונים במסד הנתונים!!! איך?
פיתוח פשוט יותר: אפשר לשלב כלים בסוכן בפחות מ-10 שורות קוד, לעשות שימוש חוזר בכלים בין כמה סוכנים או מסגרות, ולפרוס גרסאות חדשות של כלים בקלות רבה יותר.
ביצועים משופרים: שיטות מומלצות כמו איגום חיבורים, אימות ועוד.
אבטחה משופרת: אימות משולב לגישה מאובטחת יותר לנתונים
יכולת מעקב מקצה לקצה: מדדים ומעקב מוכנים לשימוש עם תמיכה מובנית ב-OpenTelemetry.
חשוב לציין שהתכונה הזו קדמה ל-MCP!!!
MCP Toolbox for Databases (ערכת כלים לניהול מרכזי של תהליכים למסדי נתונים) נמצאת בין מסגרת התיאום של האפליקציה מבוססת הסוכנים לבין מסד הנתונים, ומספקת מישור בקרה שמשמש לשינוי, להפצה או להפעלת כלים. הוא מפשט את ניהול הכלים על ידי מתן מיקום מרכזי לאחסון ולעדכון כלים, ומאפשר לכם לשתף כלים בין סוכנים ואפליקציות ולעדכן את הכלים האלה בלי לפרוס מחדש את האפליקציה.

יהיה לנו סוכן ראשי שיתאם בין הסוכנים האלה בהתאם לדרישה.
דרישות
3. לפני שמתחילים
יצירת פרויקט
- ב-מסוף Google Cloud, בדף לבחירת הפרויקט, בוחרים או יוצרים פרויקט ב-Google Cloud.
- הקפידו לוודא שהחיוב מופעל בפרויקט שלכם ב-Cloud. כך בודקים אם החיוב מופעל בפרויקט
אם אתם קוראים את המאמר הזה ורוצים לקבל קרדיטים כדי להתחיל להשתמש ב-Google Cloud וב-ADK, אתם יכולים לממש קרדיטים באמצעות הקישור הזה. כדי לממש את השובר, אפשר לפעול לפי ההוראות שמופיעות כאן. לתשומת ליבך, הקישור הזה תקף רק עד סוף מאי.
- לוחצים על הקישור כדי להפעיל את Cloud Shell. אפשר לעבור בין Cloud Shell Terminal (כדי להפעיל פקודות בענן) לבין Editor (כדי ליצור פרויקטים) בלחיצה על הכפתור המתאים ב-Cloud Shell.
- אחרי שמתחברים ל-Cloud Shell, בודקים שכבר בוצע אימות ושהפרויקט מוגדר למזהה הפרויקט באמצעות הפקודה הבאה:
gcloud auth list
- מריצים את הפקודה הבאה ב-Cloud Shell כדי לוודא שפקודת gcloud מכירה את הפרויקט.
gcloud config list project
- אם הפרויקט לא מוגדר, משתמשים בפקודה הבאה כדי להגדיר אותו:
gcloud config set project <YOUR_PROJECT_ID>
- מפעילים את ממשקי ה-API הבאים באמצעות הפקודות הבאות:
gcloud services enable artifactregistry.googleapis.com \cloudbuild.googleapis.com \run.googleapis.com \aiplatform.googleapis.com \alloydb.googleapis.com
- מוודאים שמותקנת גרסה Python 3.9 ומעלה
- אפשר לעיין במאמרי העזרה בנושא פקודות gcloud ושימוש בהן.
4. הגדרת ADK
- יצירה והפעלה של סביבה וירטואלית (מומלץ)
בטרמינל של Cloud Shell, יוצרים סביבה וירטואלית:
python -m venv .venv
מפעילים את הסביבה הווירטואלית:
source .venv/bin/activate
- התקנת ADK
pip install google-adk
5. מבנה הפרויקט
- ב-Cloud Shell Terminal, מריצים את הפקודות הבאות אחת אחרי השנייה כדי ליצור תיקיות של root ושל פרויקט:
mkdir agentic-apps
cd agentic-apps
mkdir renovation-agent
- עוברים אל Cloud Shell Editor ויוצרים את מבנה הפרויקט הבא על ידי יצירת הקבצים (ריקים בהתחלה):
renovation-agent/
__init__.py
agent.py
.env
6. קוד המקור
- עוברים אל init.py ומעדכנים אותו עם התוכן הבא:
from . import agent
- עוברים אל agent.py ומעדכנים את הקובץ עם התוכן הבא מהנתיב הבא:
https://github.com/AbiramiSukumaran/renovation-agent-adk-mcp-toolbox/blob/main/agent.py
ב-agent.py, אנחנו מייבאים תלות נדרשת, מאחזרים פרמטרים של הגדרות מקובץ .env ומגדירים את root_agent שמשתמש בכלי אחד כדי להפעיל את הכלי toolbox.
- עוברים לקובץ requirements.txt ומעדכנים אותו עם התוכן הבא:
https://github.com/AbiramiSukumaran/renovation-agent-adk-mcp-toolbox/blob/main/requirements.txt
7. הגדרת מסד נתונים
באחד הכלים שבהם משתמש סוכן ההזמנות, שנקרא check_status, אנחנו ניגשים למסד הנתונים של ההזמנות ב-AlloyDB כדי לקבל את סטטוס ההזמנות. בקטע הזה נגדיר אשכול ומופע של מסד נתונים של AlloyDB.
יצירת אשכול ומופע
- עוברים לדף AlloyDB במסוף Cloud. דרך קלה למצוא את רוב הדפים ב-Cloud Console היא לחפש אותם באמצעות סרגל החיפוש של המסוף.
- בדף הזה, לוחצים על יצירת אשכול:

- יוצג מסך כמו זה שבהמשך. יוצרים אשכול ומופע עם הערכים הבאים (אם משכפלים את קוד האפליקציה מהמאגר, חשוב לוודא שהערכים זהים):
- cluster id: "
vector-cluster" - password: "
alloydb" - תואם ל-PostgreSQL 16 / מומלץ להשתמש בגרסה הכי עדכנית
- אזור: "
us-central1" - רשת: "
default"

- כשבוחרים את רשת ברירת המחדל, מוצג מסך כמו זה שבהמשך.
לוחצים על הגדרת חיבור.
- משם, בוחרים באפשרות שימוש בטווח כתובות IP שהוקצה באופן אוטומטי ולוחצים על 'המשך'. אחרי שבודקים את המידע, לוחצים על CREATE CONNECTION (יצירת חיבור).

6. הערה חשובה: צריך לשנות את מזהה המופע (שאפשר למצוא בזמן ההגדרה של האשכול או המופע) ל
vector-instance. אם אי אפשר לשנות אותו, חשוב להשתמש במזהה המכונה בכל ההפניות הבאות.
- כדי להתכונן להגדרת Toolbox, צריך להפעיל קישוריות של כתובת IP ציבורית במופע AlloyDB שלנו, כדי שהכלי החדש יוכל לגשת למסד הנתונים.
- עוברים לקטע Public IP connectivity (קישוריות לכתובת IP ציבורית), מסמנים את התיבה Enable Public IP (הפעלת כתובת IP ציבורית) ומזינים את כתובת ה-IP של מכונת Cloud Shell.
- כדי לקבל את כתובת ה-IP של מכונת Cloud Shell, עוברים לטרמינל של Cloud Shell ומזינים ifconfig. מתוך התוצאה, מזהים את כתובת ה-inet של eth0 ומחליפים את 2 הספרות האחרונות ב-0.0 עם גודל מסכה /16'. לדוגמה, זה יכול להיראות כך: XX.XX.0.0/16, כאשר XX הם מספרים.
- מדביקים את כתובת ה-IP הזו בתיבת הטקסט 'רשתות' בקטע 'רשתות חיצוניות מורשות' בדף העריכה של המופע.

- אחרי שמגדירים את הרשת, אפשר להמשיך ליצור את האשכול. לוחצים על CREATE CLUSTER (יצירת אשכול) כדי להשלים את הגדרת האשכול, כמו שמוצג בהמשך:

שימו לב: תהליך יצירת האשכול יימשך כ-10 דקות. אחרי שהפעולה תסתיים בהצלחה, יוצג מסך עם סקירה כללית של האשכול שיצרתם.
הטמעת נתונים
עכשיו צריך להוסיף טבלה עם הנתונים על החנות. עוברים אל AlloyDB, בוחרים את האשכול הראשי ואז את AlloyDB Studio:

יכול להיות שתצטרכו להמתין עד שהמופע שלכם ייווצר. אחרי שזה קורה, נכנסים ל-AlloyDB באמצעות פרטי הכניסה שיצרתם כשנוצר האשכול. משתמשים בנתונים הבאים כדי לבצע אימות ב-PostgreSQL:
- שם משתמש : "
postgres" - מסד נתונים : "
postgres" - סיסמה : "
alloydb"
אחרי שתעברו בהצלחה את תהליך האימות ב-AlloyDB Studio, תוכלו להזין פקודות SQL בכלי העריכה. אפשר להוסיף כמה חלונות של Editor באמצעות סימן הפלוס שמימין לחלון האחרון.

מזינים פקודות ל-AlloyDB בחלונות של כלי העריכה, ומשתמשים באפשרויות Run (הפעלה), Format (עיצוב) ו-Clear (ניקוי) לפי הצורך.
צור טבלה
אתם יכולים ליצור טבלה באמצעות הצהרת ה-DDL שבהמשך ב-AlloyDB Studio:
-- Table DDL for Procurement Material Order Status
CREATE TABLE material_order_status (
order_id VARCHAR(50) PRIMARY KEY,
material_name VARCHAR(100) NOT NULL,
supplier_name VARCHAR(100) NOT NULL,
order_date DATE NOT NULL,
estimated_delivery_date DATE,
actual_delivery_date DATE,
quantity_ordered INT NOT NULL,
quantity_received INT,
unit_price DECIMAL(10, 2) NOT NULL,
total_amount DECIMAL(12, 2),
order_status VARCHAR(50) NOT NULL, -- e.g., "Ordered", "Shipped", "Delivered", "Cancelled"
delivery_address VARCHAR(255),
contact_person VARCHAR(100),
contact_phone VARCHAR(20),
tracking_number VARCHAR(100),
notes TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
quality_check_passed BOOLEAN, -- Indicates if the material passed quality control
quality_check_notes TEXT, -- Notes from the quality control check
priority VARCHAR(20), -- e.g., "High", "Medium", "Low"
project_id VARCHAR(50), -- Link to a specific project
receiver_name VARCHAR(100), -- Name of the person who received the delivery
return_reason TEXT, -- Reason for returning material if applicable
po_number VARCHAR(50) -- Purchase order number
);
הוספת רשומות
מעתיקים את הצהרת השאילתה insert מהסקריפט database_script.sql שצוין למעלה אל כלי העריכה.
לוחצים על Run.
עכשיו, כשמערך הנתונים מוכן, נגדיר את MCP Toolbox for Databases כך שיפעל כמישור הבקרה לכל האינטראקציות עם מסד הנתונים של ההזמנות ב-AlloyDB.
8. הגדרת MCP Toolbox למסדי נתונים
ערכת הכלים נמצאת בין מסגרת התזמור של האפליקציה לבין מסד הנתונים, ומספקת מישור בקרה שמשמש לשינוי, להפצה או להפעלה של כלים. הוא מפשט את ניהול הכלים על ידי מתן מיקום מרכזי לאחסון ולעדכון של כלים, ומאפשר לכם לשתף כלים בין סוכנים ואפליקציות ולעדכן את הכלים האלה בלי לפרוס מחדש את האפליקציה.
אפשר לראות שאחד ממסדי הנתונים שנתמכים על ידי MCP Toolbox for Databases הוא AlloyDB, וכבר הקצנו אותו בקטע הקודם, אז נמשיך להגדרת Toolbox.
- עוברים למסוף Cloud Shell ומוודאים שהפרויקט שלכם נבחר ומוצג בהנחיה של המסוף. מריצים את הפקודה הבאה מ-Cloud Shell Terminal כדי להיכנס לספריית הפרויקט:
cd adk-renovation-agent
- מריצים את הפקודה הבאה כדי להוריד ולהתקין את ארגז הכלים בתיקייה החדשה:
# see releases page for other versions
export VERSION=0.7.0
curl -O https://storage.googleapis.com/genai-toolbox/v$VERSION/linux/amd64/toolbox
chmod +x toolbox
- עוברים אל Cloud Shell Editor (למצב עריכת קוד) ובתיקיית השורש של הפרויקט, מוסיפים קובץ בשם tools.yaml.
sources:
alloydb-orders:
kind: "alloydb-postgres"
project: "<<YOUR_PROJECT_ID>>"
region: "us-central1"
cluster: "<<YOUR_ALLOYDB_CLUSTER>>"
instance: "<<YOUR_ALLOYDB_INSTANCE>>"
database: "<<YOUR_ALLOYDB_DATABASE>>"
user: "<<YOUR_ALLOYDB_USER>>"
password: "<<YOUR_ALLOYDB_PASSWORD>>"
tools:
get-order-data:
kind: postgres-sql
source: alloydb-orders
description: Get the status of an order based on the material description.
parameters:
- name: description
type: string
description: A description of the material to search for its order status.
statement: |
select order_status from material_order_status where lower(material_name) like lower($1)
LIMIT 1;
בחלק של השאילתה (ראו את הפרמטר 'statement' למעלה), אנחנו רק מאחזרים את הערך של השדה סטטוס הזמנה כשהשם של החומר תואם לטקסט החיפוש של המשתמש.
הסבר על tools.yaml
מקורות מייצגים את מקורות הנתונים השונים שהכלי יכול ליצור איתם אינטראקציה. מקור מייצג מקור נתונים שכלי יכול ליצור איתו אינטראקציה. אפשר להגדיר את המקורות כמפה בקטע sources בקובץ tools.yaml. בדרך כלל, הגדרת מקור תכיל את כל המידע שנדרש כדי להתחבר למסד הנתונים ולבצע בו פעולות.
כלים מגדירים את הפעולות שהסוכן יכול לבצע – כמו קריאה וכתיבה במקור. כלי מייצג פעולה שהסוכן יכול לבצע, כמו הפעלת הצהרת SQL. אפשר להגדיר כלי כמפה בקטע Tools בקובץ tools.yaml. בדרך כלל, כדי להשתמש בכלי צריך לציין מקור.
פרטים נוספים על הגדרת הקובץ tools.yaml מופיעים במאמר הזה.
הפעלת השרת MCP Toolbox for Databases
מריצים את הפקודה הבאה (מהתיקייה mcp-toolbox) כדי להפעיל את השרת:
./toolbox --tools-file "tools.yaml"
עכשיו, אם תפתחו את השרת במצב תצוגה מקדימה באינטרנט בענן, תוכלו לראות שהשרת של ערכת הכלים פועל עם הכלי החדש שלכם שנקרא get-order-data.
שרת ה-MCP Toolbox פועל כברירת מחדל ביציאה 5000. נשתמש ב-Cloud Shell כדי לבדוק את זה.
לוחצים על Web Preview ב-Cloud Shell כמו שמוצג למטה:

לוחצים על 'שינוי יציאה' ומגדירים את היציאה ל-5000 כמו שמוצג למטה. לוחצים על 'שינוי ותצוגה מקדימה'.

הפלט שיתקבל:

ב-MCP Toolkit for Databases מוסבר על Python SDK שבעזרתו אפשר לאמת ולבדוק את הכלים. התיעוד שלו זמין כאן. במקום זאת, נדלג על זה ונעבור ישירות לערכת פיתוח הסוכנים (ADK) בקטע הבא, שבה נשתמש בכלים האלה.
פריסת ערכת הכלים ב-Cloud Run
קודם כול, אפשר להתחיל עם שרת ה-MCP Toolbox ולארח אותו ב-Cloud Run. כך נקבל נקודת קצה ציבורית שנוכל לשלב עם כל אפליקציה אחרת ו/או עם אפליקציות של סוכנים. הוראות לאירוח האתר ב-Cloud Run מפורטות כאן. עכשיו נסביר את השלבים העיקריים.
- מפעילים טרמינל חדש של Cloud Shell או משתמשים בטרמינל קיים של Cloud Shell. עוברים לתיקיית הפרויקט שבה נמצאים הקובץ הבינארי של ארגז הכלים והקובץ tools.yaml, במקרה הזה adk-renovation-agent
- מגדירים את המשתנה PROJECT_ID כך שיצביע על מזהה הפרויקט שלכם ב-Google Cloud.
export PROJECT_ID="<<YOUR_GOOGLE_CLOUD_PROJECT_ID>>"
- הפעלת שירותי Google Cloud הבאים
gcloud services enable run.googleapis.com \
cloudbuild.googleapis.com \
artifactregistry.googleapis.com \
iam.googleapis.com \
secretmanager.googleapis.com
- ניצור חשבון שירות נפרד שישמש כזהות של שירות Toolbox שנפרוס ב-Google Cloud Run.
gcloud iam service-accounts create toolbox-identity
- אנחנו גם מוודאים שלחשבון השירות הזה יש את התפקידים הנכונים, כלומר אפשרות לגשת ל-Secret Manager ולתקשר עם AlloyDB
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member serviceAccount:toolbox-identity@$PROJECT_ID.iam.gserviceaccount.com \
--role roles/secretmanager.secretAccessor
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member serviceAccount:toolbox-identity@$PROJECT_ID.iam.gserviceaccount.com \
--role roles/alloydb.client
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member serviceAccount:toolbox-identity@$PROJECT_ID.iam.gserviceaccount.com \
--role roles/serviceusage.serviceUsageConsumer
- נעלה את הקובץ tools.yaml כסוד:
gcloud secrets create tools --data-file=tools.yaml
אם כבר יש לכם סוד ואתם רוצים לעדכן את גרסת הסוד, מריצים את הפקודה הבאה:
gcloud secrets versions add tools --data-file=tools.yaml
מגדירים משתנה סביבה לקובץ אימג' של קונטיינר שרוצים להשתמש בו ב-Cloud Run:
export IMAGE=us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:latest
- השלב האחרון בפקודת הפריסה המוכרת ל-Cloud Run:
gcloud run deploy toolbox \
--image $IMAGE \
--service-account toolbox-identity \
--region us-central1 \
--set-secrets "/app/tools.yaml=tools:latest" \
--args="--tools-file=/app/tools.yaml","--address=0.0.0.0","--port=8080" \
--allow-unauthenticated
הפעולה הזו אמורה להתחיל את תהליך הפריסה של השרת Toolbox עם הקובץ tools.yaml שהגדרנו ב-Cloud Run. אם הפריסה בוצעה בהצלחה, תוצג הודעה שדומה לזו:
Deploying container to Cloud Run service [toolbox] in project [YOUR_PROJECT_ID] region [us-central1]
OK Deploying new service... Done.
OK Creating Revision...
OK Routing traffic...
OK Setting IAM Policy...
Done.
Service [toolbox] revision [toolbox-00001-zsk] has been deployed and is serving 100 percent of traffic.
Service URL: https://toolbox-<SOME_ID>.us-central1.run.app
הכול מוכן! עכשיו אפשר להשתמש בכלי החדש שהטמעתם באפליקציה מבוססת-הסוכן שלכם.
בואו נחבר את הכלי Toolbox לסוכן שלנו!!!
כבר יצרנו את המקור לאפליקציית הסוכן שלנו. נבצע עדכון כדי לכלול כלי חדש של MCP Toolbox for Databases שפרסנו זה עתה ב-Cloud Run.
- בודקים את קובץ requirements.txt עם המקור ממאגר המידע:
אנחנו כוללים את התלות ב-MCP Toolbox for Databases בקובץ requirements.txt
https://github.com/AbiramiSukumaran/renovation-agent-adk-mcp-toolbox/blob/main/requirements.txt
- צופים בקובץ agent.py עם הקוד ממאגר המידע:
אנחנו כוללים את הכלי שמפעיל את נקודת הקצה של ארגז הכלים כדי לאחזר נתוני הזמנות של חומר ספציפי שהוזמן.
https://github.com/AbiramiSukumaran/renovation-agent-adk-mcp-toolbox/blob/main/agent.py
9. הגדרת המודל
היכולת של הסוכן להבין בקשות של משתמשים וליצור תשובות מבוססת על מודל שפה גדול (LLM). הסוכן צריך לבצע קריאות מאובטחות לשירות החיצוני הזה של מודל שפה גדול, ולשם כך הוא צריך פרטי כניסה לאימות. ללא אימות תקף, שירות ה-LLM ידחה את הבקשות של הסוכן והסוכן לא יוכל לפעול.
- מקבלים מפתח API מ-Google AI Studio.
- בשלב הבא, שבו מגדירים את קובץ .env, מחליפים את
<<your API KEY>>בערך מפתח ה-API בפועל.
10. הגדרת משתני ENV
- מגדירים את הערכים של הפרמטרים בקובץ התבנית .env. במקרה שלי, בקובץ .env מוגדרים המשתנים הבאים:
GOOGLE_GENAI_USE_VERTEXAI=FALSE
GOOGLE_API_KEY=<<your API KEY>>
GOOGLE_CLOUD_LOCATION=us-central1 <<or your region>>
GOOGLE_CLOUD_PROJECT=<<your project id>>
PROJECT_ID=<<your project id>>
GOOGLE_CLOUD_REGION=us-central1 <<or your region>>
מחליפים את ה-placeholders בערכים שלכם.
11. הרצת הסוכן
- בטרמינל, עוברים אל ספריית האב של פרויקט הנציג:
cd renovation-agent
- יחסי תלות של התקנות:
pip install -r requirements.txt
- כדי להפעיל את הסוכן, מריצים את הפקודה הבאה בטרמינל של Cloud Shell:
adk run .
- כדי להריץ אותו בממשק משתמש אינטרנטי שהוקצה על ידי ADK, מריצים את הפקודה הבאה:
adk web
- הנחיות לדוגמה:
user>>
Hello. Check order status for Cement Bags.
12. תוצאה

13. הסרת המשאבים
כדי לא לצבור חיובים לחשבון Google Cloud על המשאבים שבהם השתמשתם במאמר הזה:
- במסוף Google Cloud, עוברים לדף Manage resources.
- ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
- כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.
14. מזל טוב
מעולה! יצרתם בהצלחה אפליקציה מרובת סוכנים באמצעות ADK ו-MCP Toolbox למסדי נתונים. מידע נוסף זמין במסמכי העזרה של המוצרים: ערכה לפיתוח סוכנים (ADK) ו-MCP Toolbox for Databases.