נאום מרכזי של Next '26: Fabric of Unified Intelligence

1. מבוא

ברוכים הבאים לסדנת הקוד בנושא 'Fabric of Unified Intelligence'! ה-Codelab הזה הוא חלק מהדגמות של נאום הפתיחה ב-Google Cloud Next‏ 2026.

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

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

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

בסיום ה-Lab הזה, תהיה לכם מערכת עובדת עם כמה סוכנים שנפרסה ב-Cloud Run, ותזמרה באמצעות Gemini Enterprise, כדי להדגים את העוצמה של אינטליגנציה מאוחדת.

דרישות מוקדמות

  • היכרות בסיסית עם מסוף Google Cloud ועם gcloud CLI.

הפעולות שתבצעו:

  • פריסת מערכת מרובת סוכנים ב-Cloud Run.
  • רושמים את הסוכנים ב-Gemini Enterprise.
  • באמצעות Gemini Enterprise תוכלו להריץ תהליכי עבודה כדי:
    • לנתח את הנתונים וליצור תובנות מהנתונים.
    • יצירת סרטונים למוצרים באמצעות Veo.
    • הפקת דרישות לצוות הפיתוח לעדכון האתר על סמך תובנות.

הדרישות

  • דפדפן אינטרנט כמו Chrome.
  • חשבון Google

2. הגדרת הסביבה

הגדרת הפרויקט

יצירת פרויקט ב-Google Cloud

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

הפעלת Cloud Shell

Cloud Shell היא סביבת שורת פקודה שפועלת ב-Google Cloud וכוללת מראש את הכלים הנדרשים.

  1. לוחצים על Activate Cloud Shell בחלק העליון של מסוף Google Cloud.
  2. אחרי שמתחברים ל-Cloud Shell, מאמתים את האימות:
    gcloud auth list
    
  3. מוודאים שהפרויקט מוגדר:
    gcloud config get project
    
  4. אם הפרויקט לא מוגדר כמו שציפיתם, מגדירים אותו:
    export PROJECT_ID=<YOUR_PROJECT_ID>
    gcloud config set project $PROJECT_ID
    

אתחול קובץ משתני סביבה

כדי לוודא שמשתני הסביבה יישמרו אם החיבור של סשן Cloud Shell ינותק, צריך לשמור אותם בקובץ ולהשתמש בו כשצריך.

  1. ב-Cloud Shell, יוצרים את הקובץ ומוסיפים אליו את מזהה הפרויקט:
    echo "export PROJECT_ID=$(gcloud config get-value project)" > ~/lab_env.sh
    source ~/lab_env.sh
    

קבלת מפתח Gemini API מ-AI Studio

הסוכן Market Research Agent הוא מעטפת של Gemini Deep Research Interactions API. כלי deep_research קורא ל-Gemini Deep Research Interactions API, שזמין כרגע רק דרך נקודת הקצה של AI Studio. הוא יוצר genai.Client נפרד עם vertexai=False ומבצע אימות באמצעות מפתח API שמאוחסן במשתנה הסביבה GEMINI_API_KEY.

  1. עוברים אל Google AI Studio.
  2. נכנסים באמצעות חשבון Google.
  3. לוחצים על יצירת מפתח API.
  4. נותנים למפתח את השם Unified Intelligence Agents.
  5. בקטע Choose an imported project (בחירת פרויקט מיובא), בוחרים את הפרויקט או מייבאים אותו.
  6. לוחצים על Create Key (יצירת מפתח).
  7. מעתיקים את מפתח ה-API שנוצר מחלונית הפרטים.
  8. ב-Cloud Shell, שומרים את המפתח הזה בקובץ של סביבת המעבדה (מחליפים את YOUR_GEMINI_API_KEY במפתח בפועל):
    echo "export GEMINI_API_KEY=\"YOUR_GEMINI_API_KEY\"" >> ~/lab_env.sh
    source ~/lab_env.sh
    

הפעלת ממשקי ה-API

  1. ב-Cloud Shell, מפעילים את ממשקי ה-API הנדרשים ל-Lab הזה:
    gcloud services enable \
      cloudresourcemanager.googleapis.com \
      aiplatform.googleapis.com \
      storage.googleapis.com \
      run.googleapis.com \
      bigquery.googleapis.com \
      cloudbuild.googleapis.com \
      iam.googleapis.com \
      discoveryengine.googleapis.com \
      geminidataanalytics.googleapis.com \
      cloudaicompanion.googleapis.com \
      secretmanager.googleapis.com
    

שכפול המאגר

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

  1. ב-Cloud Shell, משכפלים את המאגר next-26-keynotes:
    cd $HOME
    git clone https://github.com/GoogleCloudPlatform/next-26-keynotes.git
    

3. הגדרת נתונים ומשאבים

הגדרת נתונים וסוכן של BigQuery

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

  1. ב-Cloud Shell, נכנסים לספרייה data:
    cd $HOME/next-26-keynotes/genkey/fabric-unified-intelligence/data
    
  2. כדי לבצע אימות באמצעות Application Default Credentials, מריצים את הפקודה הבאה ופועלים לפי ההנחיות:
    gcloud auth application-default login
    
  3. מריצים את סקריפט ההגדרה כדי ליצור את מערך הנתונים, הטבלאות והתצוגה:
    chmod +x setup_bigquery.sh
    ./setup_bigquery.sh
    
    הסקריפט הזה יוצר:
    • מערך נתונים: unified_intelligence_fabric_demo
    • טבלה: furniture_stock
    • טבלה: furniture_sales
    • תצוגה: dead_stock_view
  4. מריצים את סקריפט Python כדי לאכלס את הטבלאות בנתונים לדוגמה באמצעות uv:
    uv run --with google-cloud-bigquery ./populate_tables.py
    
  5. יצירת סוכן נתונים של BigQuery:
    • עוברים אל BigQuery Agents Hub ב-Cloud Console.
    • בקטע Agent Catalog (קטלוג הסוכנים), לוחצים על New Agent (סוכן חדש).
    • מגדירים את Agent Name (שם הנציג) לערך Unified Intelligence Data Agent.
    • מגדירים את מקור המידע לטבלאות במערך הנתונים שיצרתם (furniture_stock, furniture_sales).
      • כדי לחפש את הטבלאות, מקלידים furniture.
      • לוחצים על מקש Return.
      • בוחרים את שתי הטבלאות (furniture_stock, furniture_sales).
      • לוחצים על הוספה.
    • לוחצים על פרסום.
    • כשמוצגת בקשה לשתף את הסוכן, לוחצים על 'ביטול'. בשלב מאוחר יותר, תקצו תפקידים לחשבון השירות של Compute.
  6. בדיקת הסוכן:
    • בצ'אט הבדיקה שמשמאל, שואלים שאלה כמו: What are the furniture items with the highest stock?
    • מוודאים שהיא מחזירה תוצאות על סמך נתוני המדגם. בפלט אמורה להופיע טבלה דומה לזו.agent-output
  7. מזהה הסוכן של שמירת הנתונים:
    • בצד ימין של המסך אמור להופיע המזהה של הסוכן שיצרתם. היא תיראה כך: agent_ba43c386-ae82-45e0-a2b5-1928440f0926.
    agent-id
    • מעתיקים את המזהה.
    • מריצים את הפקודה הבאה ב-Cloud Shell כדי לשמור את המזהה, ומחליפים את YOUR_AGENT_ID במזהה בפועל:
    echo "export BQ_DATA_AGENT_ID=YOUR_AGENT_ID" >> ~/lab_env.sh
    source ~/lab_env.sh
    

יצירת תיקייה משותפת

בשלב הזה, תיצרו תיקייה ב-Google Drive ותשתפו אותה עם חשבון השירות של Cloud Run. הסוכנים ישתמשו בתיקייה הזו כדי לשמור ולשתף קבצים (כמו דרישות שנוצרו).

  1. עוברים אל Google Drive.
  2. לוחצים על חדש > תיקייה חדשה, נותנים לה את השם Unified Intelligence Lab ולוחצים על יצירה.
  3. לוחצים לחיצה ימנית על התיקייה החדשה שנוצרה ובוחרים באפשרות שיתוף > שיתוף.
  4. ב-Cloud Shell, מריצים את הפקודה הבאה כדי לקבל את כתובת האימייל של חשבון השירות שמוגדר כברירת מחדל ב-Compute Engine:
    PROJECT_NUMBER=$(gcloud projects describe $(gcloud config get-value project) --format="value(projectNumber)")
    echo "${PROJECT_NUMBER}-compute@developer.gserviceaccount.com"
    
  5. מעתיקים את כתובת האימייל מהפלט.
  6. בתיבת הדו-שיח של שיתוף ב-Google Drive, מוסיפים את כתובת האימייל הזו.
  7. מגדירים את התפקיד כעריכה.
  8. פותחים את התיקייה ומעתיקים את המזהה מכתובת ה-URL. כתובת ה-URL תיראה כך: https://drive.google.com/drive/folders/YOUR_FOLDER_ID. מעתיקים את המחרוזת האלפאנומרית בסוף כתובת ה-URL, שמופיעה אחרי /folders/.
  9. ב-Cloud Shell, שומרים את המזהה הזה בקובץ של סביבת המעבדה (מחליפים את YOUR_FOLDER_ID במזהה בפועל):
    echo "export GOOGLE_DRIVE_FOLDER_ID=YOUR_FOLDER_ID" >> ~/lab_env.sh
    source ~/lab_env.sh
    

יצירת קטגוריות ב-GCS

ב-Cloud Shell, מריצים את הפקודות הבאות כדי ליצור קטגוריות GCS לארטיפקטים/משימות, לסרטונים של קמפיינים וללוגים:

gcloud storage buckets create gs://$(gcloud config get-value project)-artifacts --location=us-central1
gcloud storage buckets create gs://$(gcloud config get-value project)-videos --location=us-central1
gcloud storage buckets create gs://$(gcloud config get-value project)-logs --location=us-central1

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

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

gcloud storage buckets add-iam-policy-binding gs://$(gcloud config get-value project)-videos --member=allUsers --role=roles/storage.objectViewer

הקצאת תפקידי IAM

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

הקצאת תפקידים למשתמש

כדי להשתמש בתכונות של Discovery Engine (חיפוש ושיחה), מריצים את הפקודות הבאות ב-Cloud Shell כדי להעניק את התפקיד Discovery Engine User לחשבון המשתמש:

source ~/lab_env.sh

echo "export USER_ACCOUNT=$(gcloud config get-value account)" >> ~/lab_env.sh
source ~/lab_env.sh

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="user:$USER_ACCOUNT" \
  --role="roles/discoveryengine.user"

הקצאת תפקידים לחשבון השירות של Compute Engine

ב-Cloud Shell, מריצים את הפקודות הבאות כדי להקצות תפקידים לחשבון השירות של Compute Engine:

source ~/lab_env.sh

PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format="value(projectNumber)")
echo "export PROJECT_NUMBER=${PROJECT_NUMBER}" >> ~/lab_env.sh
echo "export COMPUTE_SA=\"${PROJECT_NUMBER}-compute@developer.gserviceaccount.com\"" >> ~/lab_env.sh
source ~/lab_env.sh

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/storage.objectAdmin"

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/aiplatform.user"

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/cloudtrace.agent"

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/geminidataanalytics.dataAgentUser"

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/geminidataanalytics.dataAgentStatelessUser"

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/bigquery.dataViewer"

gcloud iam service-accounts add-iam-policy-binding $COMPUTE_SA \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/iam.serviceAccountTokenCreator" \
  --project=$PROJECT_ID

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/cloudbuild.builds.builder"

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/run.invoker"

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$COMPUTE_SA" \
  --role="roles/secretmanager.secretAccessor"

הענקת תפקידים לחשבון השירות של Discovery Engine

ב-Cloud Shell, מריצים את הפקודות הבאות כדי להקצות תפקידים לחשבון השירות של Discovery Engine:

source ~/lab_env.sh

echo "export DISCOVERY_ENGINE_SA=\"service-\${PROJECT_NUMBER}@gcp-sa-discoveryengine.iam.gserviceaccount.com\"" >> ~/lab_env.sh
source ~/lab_env.sh

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$DISCOVERY_ENGINE_SA" \
  --role="roles/run.invoker"

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$DISCOVERY_ENGINE_SA" \
  --role="roles/aiplatform.user"

הענקת תפקידים לסוכן השירות של AI Platform Reasoning Engine

ב-Cloud Shell, מריצים את הפקודות הבאות כדי להעניק תפקידים לסוכן השירות של AI Platform Reasoning Engine:

source ~/lab_env.sh

echo "export AI_PLATFORM_RE_SA=\"service-\${PROJECT_NUMBER}@gcp-sa-aiplatform-re.iam.gserviceaccount.com\"" >> ~/lab_env.sh
source ~/lab_env.sh

gcloud projects add-iam-policy-binding $PROJECT_ID \
  --member="serviceAccount:$AI_PLATFORM_RE_SA" \
  --role="roles/storage.objectViewer"

4. הגדרה ופריסה של הסוכנים

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

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

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

דרישות מוקדמות

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

  1. ב-Cloud Shell, עוברים לספרייה Product Strategy Agent:
    cd $HOME/next-26-keynotes/genkey/fabric-unified-intelligence/agents/product-strategy
    
  2. מריצים את הפקודה הבאה כדי להעתיק את הקובץ .env.sample אל .env:
    cp .env.sample .env
    
  3. ב-Cloud Shell, מריצים את הפקודות הבאות כדי למלא את הקובץ .env בפרטי הפרויקט:
    source ~/lab_env.sh
    sed -i "s/YOUR_PROJECT_ID/${PROJECT_ID}/" .env
    sed -i "s/YOUR_VEO_GCS_BUCKET/${PROJECT_ID}-videos/" .env
    sed -i "s/YOUR_GOOGLE_DRIVE_FOLDER_ID/${GOOGLE_DRIVE_FOLDER_ID}/" .env
    sed -i "s/YOUR_LOGS_BUCKET_NAME/${PROJECT_ID}-logs/" .env
    

פריסת סוכן אסטרטגיית המוצר

  1. פריסה ב-Cloud Run עכשיו, ב-Cloud Shell, פורסים את הסוכן ב-Cloud Run. המאגר כולל Makefile שמפשט את התהליך הזה:
    make deploy
    
    אחרי הפריסה, תקבלו כתובת URL של סוכן אסטרטגיית המוצר.
  2. ב-Cloud Shell, מריצים את הפקודה הבאה כדי לקבל את כתובת ה-URL של השירות שנפרס ולשמור אותה בקובץ של סביבת המעבדה:
    source ~/lab_env.sh
    PRODUCT_STRATEGY_URL=$(gcloud run services describe product-strategy --region us-central1 --format 'value(status.url)')
    echo "export PRODUCT_STRATEGY_URL=\"${PRODUCT_STRATEGY_URL}\"" >> ~/lab_env.sh
    source ~/lab_env.sh
    

הגדרה ופריסה של סוכן המחקר

בשלב הזה תפרסו את סוכן מחקר השוק ב-Cloud Run ותירשמו אותו באפליקציית Gemini Enterprise. הסוכן הזה מנתח מגמות ומשוב מלקוחות.

דרישות מוקדמות

אבל קודם, צריך להגדיר את משתני הסביבה של Market Research Agent, כולל מפתח API לכלי Deep Research.

  1. ב-Cloud Shell, נכנסים לספרייה market-research:
    cd $HOME/next-26-keynotes/genkey/fabric-unified-intelligence/agents/market-research
    
  2. מריצים את הפקודה הבאה כדי להעתיק את הקובץ .env.sample אל .env:
    cp .env.sample .env
    
  3. ב-Cloud Shell, מריצים את הפקודות הבאות כדי למלא את הקובץ .env בפרטי הפרויקט:
    source ~/lab_env.sh
    sed -i "s/YOUR_PROJECT_ID/${PROJECT_ID}/" .env
    sed -i "s/YOUR_LOGS_BUCKET_NAME/${PROJECT_ID}-logs/" .env
    

יצירת סודות

המשתנה GEMINI_API_KEY מאוחסן ב-Secret Manager ומותקן בגרסה של Cloud Run בזמן הפריסה.

  1. ב-Cloud Shell, מוסיפים את GEMINI_API_KEY לקובץ .env:
    source ~/lab_env.sh
    echo "GEMINI_API_KEY=${GEMINI_API_KEY}" >> .env
    
  2. מריצים את הפקודה הבאה כדי לדחוף ערכי סודות מהמאגר המקומי .env אל Secret Manager:
    make create-secrets
    
  3. מריצים את הפקודה הבאה כדי להעניק ל-Cloud Run גישה לסוד:
    make grant-secret-access
    

פריסת סוכן מחקר השוק ב-Cloud Run

  1. ב-Cloud Shell, פורסים את הסוכן באמצעות הפקודה Makefile:
    make deploy
    
    אחרי הפריסה, תקבלו כתובת URL לסוכן מחקר השוק.
  2. ב-Cloud Shell, מריצים את הפקודה הבאה כדי לקבל את כתובת ה-URL של השירות שנפרס ולשמור אותה בקובץ של סביבת המעבדה:
    source ~/lab_env.sh
    MARKET_RESEARCH_URL=$(gcloud run services describe market-research --region us-central1 --format 'value(status.url)')
    echo "export MARKET_RESEARCH_URL=\"${MARKET_RESEARCH_URL}\"" >> ~/lab_env.sh
    source ~/lab_env.sh
    

הגדרה ופריסה של סוכן Orchestrator

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

דרישות מוקדמות

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

  1. ב-Cloud Shell, נכנסים לספרייה orchestrator:
    cd $HOME/next-26-keynotes/genkey/fabric-unified-intelligence/agents/orchestrator
    
  2. מריצים את הפקודה הבאה כדי להעתיק את הקובץ .env.sample אל .env:
    cp .env.sample .env
    
  3. ב-Cloud Shell, מריצים את הפקודות הבאות כדי לאכלס את הקובץ .env בפרטי הפרויקט ובהגדרות של BigQuery Data Agent:
    source ~/lab_env.sh
    sed -i "s/YOUR_PROJECT_ID/${PROJECT_ID}/" .env
    sed -i "s|http://localhost:8002|${MARKET_RESEARCH_URL}|" .env
    sed -i "s|http://localhost:8001|${PRODUCT_STRATEGY_URL}|" .env
    sed -i "s/YOUR_BQ_DATA_AGENT_PROJECT/${PROJECT_ID}/" .env
    sed -i "s/YOUR_BQ_DATA_AGENT_ID/${BQ_DATA_AGENT_ID}/" .env
    sed -i "s/YOUR_LOGS_BUCKET_NAME/${PROJECT_ID}-logs/" .env
    

פריסת סוכן כלי התזמור

  1. ב-Cloud Shell, פורסים את סוכן Orchestrator באמצעות הפקודה Makefile:
    make deploy
    

אחרי הפריסה, תקבלו כתובת URL של סוכן Orchestrator.

  1. ב-Cloud Shell, מריצים את הפקודה הבאה כדי לקבל את כתובת ה-URL של השירות שנפרס ולשמור אותה בקובץ של סביבת המעבדה:
    source ~/lab_env.sh
    ORCHESTRATOR_URL=$(gcloud run services describe orchestrator --region us-central1 --format 'value(status.url)')
    echo "export ORCHESTRATOR_URL=\"${ORCHESTRATOR_URL}\"" >> ~/lab_env.sh
    source ~/lab_env.sh
    

הגדרה ופריסה של סוכן Dev

בשלב הזה תפרסו את סוכן הפיתוח ב-Cloud Run ותירשמו אותו באפליקציית Gemini Enterprise. הסוכן הזה מתרגם תוכניות לפעולות על ידי יצירת משימות וקוד פיגום. סוכן הפיתוח יכול להשתלב עם Jira כדי ליצור כרטיסי תמיכה, וזה מה שמוצג בהדגמה המרכזית. עם זאת, ב-Codelab הזה נדלג על השילוב עם Jira ונגדיר שהסוכן ישמור את המשימות ב-Google Cloud Storage.

דרישות מוקדמות

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

  1. ב-Cloud Shell, נכנסים לספרייה dev-agent:
    cd $HOME/next-26-keynotes/genkey/fabric-unified-intelligence/agents/dev-agent
    
  2. מריצים את הפקודה הבאה כדי להעתיק את הקובץ .env.sample אל .env:
    cp .env.sample .env
    
  3. ב-Cloud Shell, מריצים את הפקודות הבאות כדי למלא את הקובץ .env בפרטי הפרויקט:
    source ~/lab_env.sh
    sed -i "s/YOUR_PROJECT_ID/${PROJECT_ID}/" .env
    sed -i "s/YOUR_ASSET_BUCKET_NAME/${PROJECT_ID}-artifacts/" .env
    sed -i "s/YOUR_VEO_GCS_BUCKET/${PROJECT_ID}-videos/" .env
    sed -i "s/YOUR_LOGS_BUCKET_NAME/${PROJECT_ID}-logs/" .env
    

פריסת סוכן הפיתוח

  1. ב-Cloud Shell, פורסים את סוכן הפיתוח באמצעות הפקודה Makefile:
    make deploy
    

אחרי הפריסה, תקבלו כתובת URL לסוכן הפיתוח.

  1. ב-Cloud Shell, מריצים את הפקודה הבאה כדי לקבל את כתובת ה-URL של השירות שנפרס ולשמור אותה בקובץ של סביבת המעבדה:
    source ~/lab_env.sh
    DEV_AGENT_URL=$(gcloud run services describe dev-agent --region us-central1 --format 'value(status.url)')
    echo "export DEV_AGENT_URL=\"${DEV_AGENT_URL}\"" >> ~/lab_env.sh
    source ~/lab_env.sh
    

5. הגדרה של Gemini Enterprise ורישום סוכנים

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

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

הרשמה לתקופת ניסיון ב-Gemini Enterprise

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

  1. עוברים אל הדף Gemini Enterprise במסוף Google Cloud.
  2. יוצג לכם מסך פתיחה. לוחצים על 'יצירת האפליקציה הראשונה'.gemini-enterprise-app

יצירת אפליקציה

  1. מזינים n26-unified בתור שם האפליקציה. שימו לב לבאנר של תקופת הניסיון בחינם שמוצג במסך.trial-banner
  2. משאירים את שאר השדות כברירת מחדל ולוחצים על 'יצירה'.
  3. יוצג לכם מסך פתיחה. לוחצים על הקישור תצוגה מקדימה.gemini-enterprise-app-preview
  4. חלון קופץ חדש ייפתח עם אפליקציית האינטרנט של Gemini Enterprise. שימו לב לכתובת ה-URL בחלק העליון של המסך בסרגל כתובות ה-URL. תצטרכו את כתובת ה-URL הזו בהמשך כדי לגשת לאפליקציה. הוא אמור להיראות כמו https://vertexaisearch.cloud.google.com/home/cid/ebb52d4a-b33b-4007-a180-91d02fa124e1.gemini-enterprise-web-app

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

כדי ש-Gemini Enterprise יוכל להשתמש בסוכן שלכם, אתם צריכים לרשום את הסוכן באפליקציית Gemini Enterprise. אפשר לרשום סוכנים מותאמים אישית שנפרסו ב-Cloud Run בשילוב A2A (סוכן לסוכן).

  1. בחלון נפרד במסוף, עוברים אל המסך של אפליקציות Gemini Enterprise.
  2. לוחצים על האפליקציה שנקראת n26-unified
  3. בחלונית הניווט הימנית, לוחצים על סוכנים.

הרשמה של סוכן אסטרטגיית המוצר

  1. כדי לקבל את כרטיס הסוכן, מריצים את הפקודה הבאה ב-Cloud Shell:
    source ~/lab_env.sh
    TOKEN=$(gcloud auth print-identity-token)  
    curl  -H "Content-Type: application/json" \
      -H "Authorization: Bearer ${TOKEN}" $PRODUCT_STRATEGY_URL/.well-known/agent-card.json  | jq
    
  2. לוחצים על + הוספת סוכן.
  3. לוחצים על סוכן מותאם אישית באמצעות A2A.
  4. מדביקים את ה-JSON של כרטיס הסוכן מהשלב הקודם בתיבת הטקסט.
  5. לוחצים על תצוגה מקדימה של פרטי הנציג.
  6. לוחצים על הבא.
  7. לוחצים על דילוג וסיום כדי להעניק הרשאה לסוכן.
  8. בכרטיסייה הרשאות משתמש, מעניקים לכל המשתמשים את התפקיד משתמש עם הרשאות סוכן.
  9. לוחצים על 'שמירה'.

רישום סוכן מחקר השוק באפליקציית Gemini Enterprise

  1. כדי לקבל את כרטיס הסוכן, מריצים את הפקודה הבאה ב-Cloud Shell:
    source ~/lab_env.sh
    TOKEN=$(gcloud auth print-identity-token)  
    curl  -H "Content-Type: application/json" \
      -H "Authorization: Bearer ${TOKEN}" $MARKET_RESEARCH_URL/.well-known/agent-card.json  | jq
    
  2. לוחצים על + הוספת סוכן.
  3. לוחצים על סוכן מותאם אישית באמצעות A2A.
  4. מדביקים את ה-JSON של כרטיס הסוכן מהשלב הקודם בתיבת הטקסט.
  5. לוחצים על תצוגה מקדימה של פרטי הנציג.
  6. לוחצים על הבא.
  7. לוחצים על דילוג וסיום כדי להעניק הרשאה לסוכן.
  8. בכרטיסייה הרשאות משתמש, מעניקים לכל המשתמשים את התפקיד משתמש עם הרשאות סוכן.
  9. לוחצים על 'שמירה'.

רישום של Orchestrator Agent

  1. כדי לקבל את כרטיס הסוכן, מריצים את הפקודה הבאה ב-Cloud Shell:
    source ~/lab_env.sh
    TOKEN=$(gcloud auth print-identity-token)  
    curl  -H "Content-Type: application/json" \
      -H "Authorization: Bearer ${TOKEN}" $ORCHESTRATOR_URL/.well-known/agent-card.json  | jq
    
  2. לוחצים על + הוספת סוכן.
  3. לוחצים על סוכן מותאם אישית באמצעות A2A.
  4. מדביקים את ה-JSON של כרטיס הסוכן מהשלב הקודם בתיבת הטקסט.
  5. לוחצים על תצוגה מקדימה של פרטי הנציג.
  6. לוחצים על הבא.
  7. לוחצים על דילוג וסיום כדי להעניק הרשאה לסוכן.
  8. בכרטיסייה הרשאות משתמש, מעניקים לכל המשתמשים את התפקיד משתמש עם הרשאות סוכן.
  9. לוחצים על 'שמירה'.

רישום סוכן הפיתוח

  1. כדי לקבל את כרטיס הסוכן, מריצים את הפקודה הבאה ב-Cloud Shell:
    source ~/lab_env.sh
    TOKEN=$(gcloud auth print-identity-token)  
    curl  -H "Content-Type: application/json" \
      -H "Authorization: Bearer ${TOKEN}" $DEV_AGENT_URL/.well-known/agent-card.json  | jq
    
  2. לוחצים על + הוספת סוכן.
  3. לוחצים על סוכן מותאם אישית באמצעות A2A.
  4. מדביקים את ה-JSON של כרטיס הסוכן מהשלב הקודם בתיבת הטקסט.
  5. לוחצים על תצוגה מקדימה של פרטי הנציג.
  6. לוחצים על הבא.
  7. לוחצים על דילוג וסיום כדי להעניק הרשאה לסוכן.
  8. בכרטיסייה הרשאות משתמש, מעניקים לכל המשתמשים את התפקיד משתמש עם הרשאות סוכן.
  9. לוחצים על 'שמירה'.

6. חלק 1: אסטרטגיה ותזמור ב-Gemini Enterprise

בקטע הזה של ה-Lab, תגלמו את סמנכ "ל המרצ'נדייזינג בחברה Organic Living, שאחראי על חידוש קווי מוצרים עם מכירות שטוחות או בירידה.

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

זו כתובת ה-URL שרשמתם בשלב 4: הגדרת Gemini Enterprise ורישום סוכנים. אם אין לכם את כתובת ה-URL, תוכלו לקבל אותה באמצעות השלבים הבאים:

  1. עוברים אל המסך של אפליקציות Gemini Enterprise
  2. לוחצים על האפליקציה שנקראת n26-unified
  3. לוחצים על כתובת ה-URL שמתחילה ב-https://vertexaisearch.cloud.google.com

הנחיית הסוכן לעזור במשימה

  1. כדי להתחיל שיחה חדשה, מקלידים בתיבת הצ'אט בדף הבית או לוחצים על שיחה חדשה בסרגל הניווט בצד ימין.
  2. מוסיפים את ההנחיה הבאה:
    Analyze current interior design trends and identify dead stock in our warehouse that matches the trend. Orchestrate a relaunch campaign
    
  3. לוחצים על Submit (שליחה) (הסמל עם המטוס מנייר) וצופים ב-Orchestrator Agent עושה את הקסם שלו.

בדיקת הפלט

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

  • הסוכן Market Research Agent, שמבוסס על Deep Research, מנתח את המידע העדכני ביותר מחיפוש Google כדי למצוא את מגמות העיצוב העדכניות ביותר.
  • הסוכן Data Insights מתחבר לנתוני מוצרים גלובליים ומזין את ממצאי המחקר לקטלוג הפנימי שלנו כדי לזהות פריטים שהם 'מלאי מת' (מלאי עם מהירות מכירה נמוכה) שתואמים לקריטריונים של המגמות האלה.
  • סוכן אסטרטגיית המוצר מרכז את כל הנתונים כדי ליצור אסטרטגיה לקמפיין השקה מחדש על סמך המחקר והנתונים מהסוכנים האחרים.

אישור התוכנית ובדיקת הפלט

  1. תגובה עם Yes לאישור התוכנית
  2. בודקים את הפלט
    • התהליך מתחיל בתובנות מסוכן מחקר השוק וכולל תוכנית מקיפה, כולל מיתוג מחדש של אתר.
    • כולל נתונים שאוחזרו מנתוני המוצרים שלנו באמצעות BigQuery Data Agent שהגדרנו קודם.
    • שימו לב למקורות שמופיעים בתחתית הפלט כדי לקבל ביטחון בניתוח ובהמלצות.

יצירת סרטונים על סמך הסגנון החדש Organic Living

  1. בצ'אט, מבקשים מסוכן אסטרטגיית המוצר ליצור סרטונים. מתחילים להקליד @Product ובוחרים את הסוכן של אסטרטגיית המוצר מהרשימה.
  2. מוסיפים את ההנחיה הבאה:
    generate three videos for the landing page
    
  3. ‫Gemini ישתמש בסוכן אסטרטגיית המוצר כדי ליצור נכסי וידאו ולספק כתובות URL שלהם.

תיאום עם צוות הפיתוח

בהדגמה המרכזית, סוכן הפיתוח שלח התראה ב-Google Chat לצוות הפיתוח. עם זאת, הסרנו את השלב הזה ממעבדת הקוד הזו כי חשבונות Gmail אישיים לא תומכים ב-webhook נכנס. במקום זאת, סוכן הפיתוח יתמקד ביצירת המשימה ב-Google Cloud Storage.

  1. בצ'אט, מבקשים מסוכן הפיתוח ליצור משימה לצוות הפיתוח. מתחילים להקליד @Dev ובוחרים את סוכן הפיתוח מהרשימה.
  2. מוסיפים את ההנחיה הבאה:
    create a task for the dev team to get started on the new product landing page.
    
  3. בודקים את הפלט. הנציג לפיתוח יאשר שהוא יצר משימה ויספק מזהה משימה (למשל, TASK-A3F7B2C1). חשוב לשמור את מזהה המשימה הזה, כי תצטרכו אותו במערכה 2.

7. מערכה 2: יצירה ב-Gemini CLI

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

תשתמשו ב-Gemini CLI כדי לבנות את האתר Organic Living על סמך מפרט עיצוב שנמצא בקובץ המשימה. ‫Gemini CLI הוא סוכן AI בקוד פתוח שמאפשר לנצל את היכולות של Gemini ישירות בשורת הפקודה. הוא כבר מותקן מראש בסביבת Cloud Shell.

הגדרת Gemini CLI

  1. ב-Cloud Shell, יוצרים ספרייה חדשה לפרויקט האתר ועוברים אליה:
    mkdir -p $HOME/website
    cd $HOME/website
    
  2. מעתיקים את ההוראות GEMINI.md ואת תמונת העיצוב מהמאגר המשוכפל לספריית העבודה:
    cp $HOME/next-26-keynotes/genkey/fabric-unified-intelligence/gemini-cli/GEMINI.md .
    cp $HOME/next-26-keynotes/genkey/fabric-unified-intelligence/gemini-cli/Organic_Living_Website_Design.png .
    
  3. יוצרים את ספריית התצורה של הסוכן ויוצרים את הקובץ dev-agent.md:
    source ~/lab_env.sh
    mkdir -p ~/.gemini/agents
    cat > ~/.gemini/agents/dev-agent.md <<EOF
    ---
    kind: remote
    name: dev-agent
    agent_card_url: ${DEV_AGENT_URL}/.well-known/agent-card.json
    description: "Task assistant. Use for: creating/looking up/starting APPDEV tasks."
    auth:
      type: google-credentials
    ---
    EOF
    

התחלת שימוש בהנחיות

  1. מריצים את הפקודה gemini-cli כדי להתחיל את האינטראקציה:
    source ~/lab_env.sh
    gemini
    
  2. תתבקשו לאשר שאתם בוטחים בקבצים בתיקייה הזו. בוחרים באפשרות 1. תיקיית אמון (אתר).
  3. מקלידים auth ומקישים על Return בהנחיה של Gemini CLI.
  4. בוחרים באפשרות Use Gemini API key (שימוש במפתח Gemini API). הפעולה הזו תשתמש באופן אוטומטי במשתנה הסביבה GEMINI_API_KEY שנטען מ-lab_env.sh.
  1. בהנחיה gemini>, אומרים לסוכן שרוצים לעבוד על המשימה שנוצרה במערכה 1 (מחליפים את TASK-A3F7B2C1 במזהה המשימה בפועל שרשמתם):
    @dev-agent let me work on TASK-A3F7B2C1
    
    הסוכן יחפש את המשימה ב-GCS ויספק לכם סקירה כללית ותוכנית.
  2. עכשיו, מבקשים מהסוכן לבנות את האתר:
    Build and deploy it
    
    ‫Gemini יקרא את קובץ GEMINI.md בספרייה הנוכחית ויתחיל לבנות את האתר בהתאם למפרטים.
  3. אחרי שה-build והפריסה יסתיימו, הסוכן יציג את התוצאות, כולל כתובת ה-URL של שירות Cloud Run שנפרס.
  4. לוחצים על כתובת ה-URL שסופקה כדי לפתוח את האתר החדש Organic Living בכרטיסייה חדשה, ומוודאים שהוא תואם למפרט העיצוב.

8. Recap

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

  1. ניהול מערכת מרובת סוכנים: ב-Gemini Enterprise, השתמשתם בהנחיה אחת כדי להפעיל צוות של סוכנים (מחקר שוק, תובנות לגבי נתונים ואסטרטגיית מוצר) כדי לנתח מגמות, לזהות מלאי ולפתח אסטרטגיה להשקת מוצר מחדש. הנחיה אחת מאפשרת לבצע הרבה פעולות בלי להשלים כל משימה בנפרד.
  2. נכסי מולטימדיה שנוצרו: השתמשת בסוכן אסטרטגיית המוצר כדי ליצור נכסי וידאו לקו המוצרים החדש.
  3. העברה מדורגת מסימולציה: השתמשתם בסוכן הפיתוח כדי ליצור משימה ב-GCS, בסימולציה של העברה מצוות העסקים לצוות הפיתוח. המערכת שמרה על ההקשר המשותף בלי שהייתם צריכים לשתף אותו ישירות.
  4. יצירת אתר באמצעות Gemini CLI: ב-Cloud Shell, עברתם לתפקיד המפתח והשתמשתם ב-Gemini CLI כדי ליצור ולפרוס דף נחיתה על סמך המשימה שנוצרה בשלב הקודם ומפרטי העיצוב ב-GEMINI.md.

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

9. הסרת המשאבים

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

  1. ב-Cloud Shell, מריצים את הפקודה הבאה כדי למחוק את כל הפרויקט בענן ב-Google Cloud:
source ~/lab_env.sh
gcloud projects delete "${PROJECT_ID}"

10. מזל טוב

מעולה! השלמת בהצלחה את ה-Codelab בנושא 'הבסיס של אינטליגנציה מאוחדת'.