קישור סוכנים של ערכה לפיתוח סוכנים (ADK) ל-Cloud Storage

אפשר לקשר את הסוכנים של הערכה לפיתוח סוכנים (ADK) ל-Cloud Storage. החיבור הזה מאפשר לסוכנים שלכם להשתמש בערכות כלים מובנות של ADK.

מפתחי AI יכולים לשלב את ADK עם Cloud Storage כדי לקשר את הסוכנים שלהם לנתונים המאוחסנים. השילוב הזה עוזר לכם להרחיב את עומסי העבודה האג'נטיים. אפשר להשתמש ב-Cloud Storage כדי לשמור את המצב, הזיכרון ונקודות הבדיקה של משימות שפועלות לאורך זמן. אפשר גם להשתמש ב-Cloud Storage כדי לשתף קבצים זמניים בתהליך עבודה עם כמה סוכנים.

במאמר הזה מתוארים היתרונות של שילוב Cloud Storage עם ADK. המדריך כולל תרחישי שימוש נפוצים ואת היכולות של ערכות הכלים הזמינות. הוראות מפורטות להגדרה ודוגמאות לקוד מופיעות במדריך לשילוב ADK.

היתרונות של שילוב Cloud Storage עם ADK

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

  • הרחבת ההקשר באופן דינמי: נותנים לנציגים גישה למערכי נתונים גדולים, למדריכים או לקובצי מדיה בלי להגיע למגבלות על כמות המידע שמודל שפה גדול יכול לקרוא בבת אחת.
  • שימור עמיד של ארטיפקטים: אחסון קבצים זמניים, יומנים או פריטים שנוצרו (כמו דוחות או תמונות) באופן מהימן מחוץ להיסטוריית השיחות.
  • תמיכה בכל סוג של ארטיפקט: עיבוד ויצירה של פורמטים שונים, כולל טקסט, תמונות, אודיו ווידאו, באמצעות Cloud Storage כאחסון משותף.
  • בקרת גישה פרטנית: שליטה מדויקת בגישת הסוכן ל-Cloud Storage באמצעות תפקידי IAM. ה-ADK משתמש באימות סטנדרטי Cloud de Confiance by S3NS כדי לוודא שלסוכנים יש רק את ההרשאות המינימליות שנדרשות לגישה לנתונים או לביצוע משימה.

תרחישים לדוגמה

אם תציידו את הסוכנים שלכם ביכולות של Cloud Storage, תוכלו לטפל בתרחישי השימוש הבאים:

  • אחזור דינמי של הקשר, שנקרא גם Retrieval-Augmented Generation (יצירה משולבת-אחזור, RAG)
  • שמירה והעברה לארכיון של חפצים
  • עיבוד של מטען ייעודי גדול
  • ניהול משאבים אוטומטי

שליפת הקשר דינמית באמצעות RAG

סוכנים יכולים לפעול כחוקרים על ידי גילוי וקריאה של מסמכים ב-Cloud Storage כדי לענות על שאלות בזמן אמת. הגישה הזו שימושית למאגרי ידע פנימיים או לבוטים לתמיכה.

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

שימור והעברה לארכיון של חפצים

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

  • דיווח אוטומטי: אתם יכולים ליצור סוכן שמנתח מדדים של מסד נתונים, יוצר דוח מסכם ומעלה אותו לדלי reports-archive.
  • אחסון מדיה שנוצרה על ידי AI: אתם יכולים להגדיר מערכת מרובת סוכנים כדי לשמור תמונות או אובייקטים של אודיו שנוצרו על ידי AI ב-Cloud Storage, ולהחזיר רק את ה-URI של האחסון או כתובת URL חתומה.

עיבוד של מטען ייעודי גדול

תכננו את הסוכנים כך שישתמשו בכתובות URI של אחסון (נתיבי קבצים) במקום להדביק את התוכן המלא של הקובץ בצ'אט. כך נמנעים מהעלויות הגבוהות ומהחוסר היעילות של שליחת קובצי CSV גדולים או בסיסי קוד ל-LLM.

  • מעבדי צינור נתונים: אתם יכולים להגדיר שהסוכן יקבל URI של אחסון במקום לצרוך קובץ CSV גדול. הסוכן יכול לבצע ניתוח על ידי עיבוד של נתחים או בדיקה של מטא-נתונים, ולהחזיר לוח בקרה עם סיכום.
  • תהליכי עבודה מנותקים: אתם יכולים לתכנן סוכן שיפעל כמפקח שמקבל URI של אחסון לקידומת, לתיקייה או לקטגוריה של Cloud Storage. הסוכן יכול להעביר את ה-URI הזה לעובדים בעורף המערכת כדי לעבד את האובייקטים ולכתוב את התוצאות הסופיות בחזרה לאחסון. הדפוס הזה תואם לשירותים מבוססי-אירועים כמו פונקציות Cloud Run או Cloud Run לעיבוד נתונים באופן אסינכרוני.

ניהול משאבים אוטומטי

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

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

ערכות כלים של ADK ל-Cloud Storage

‫ADK מספק את ערכות הכלים הבאות ב-Python ל-Cloud Storage. הבנת שני המושגים האלה עוזרת להגדיר את התפקידים של הסוכנים ולהגביל את ההרשאות שלהם.

GCSToolset לניהול נתונים

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

  • קריאת אובייקטים: אחזור תוכן ישירות באמצעות get_object_data.
  • מציאת תוכן: הצגת רשימה של אובייקטים זמינים באמצעות list_objects.
  • בדיקת מאפייני אובייקט: אפשר לבדוק את גודל האובייקט או את המטא-נתונים של Content-Type באמצעות get_object_metadata.
  • העלאה ושמירה: יצירת אובייקטים חדשים באמצעות create_object.
  • הסרת אובייקטים: הסרת אובייקטים זמניים באמצעות delete_objects.

GCSAdminToolset לתשתית

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

  • גילוי התשתית: הצגת רשימה של הקטגוריות בפרויקט באמצעות list_buckets.
  • הקצאת נפח אחסון: יצירת קטגוריות חדשות באמצעות create_bucket.
  • הגדרה מחדש של האחסון: שינוי ההגדרות באמצעות update_bucket.
  • ביטול הקצאת נפח אחסון: מסירים קטגוריות באמצעות delete_bucket.
  • בדיקת ההקשר של הקטגוריה: אחזור מטא-נתונים של הקטגוריה באמצעות get_bucket כדי לבדוק את המיקום, סוג האחסון או אמצעי בקרת הגישה של הקטגוריה.

שיטות מומלצות

כדי לשפר את הביצועים והאבטחה של הסוכן כשמשלבים אותו עם Cloud Storage, כדאי להשתמש בשיטות המומלצות הבאות:

  • הפרדה של מטען ייעודי גדול מהיסטוריית השיחות: מומלץ להימנע מהעברת קבצים גדולים ישירות לסוכן. אפשר לאחסן אותם ב-Cloud Storage ולשלוח במקום זאת הפניות לקבצים (URI). כך מצטמצמות עלויות הטוקנים ונמנעת חריגה ממגבלות ההקשר.
  • החלת העיקרון של הרשאות מינימליות: נותנים לסוכן רק את ההרשאות המינימליות שהוא צריך כדי לבצע את המשימות שלו. מומלץ להימנע מתפקידים רחבים כמו roles/storage.admin, אלא אם מנהלים תשתית. לפעולות רגילות בקבצים, משתמשים בתפקידים ממוקדים כמו roles/storage.objectUser או roles/storage.objectViewer שמוגבלים לקטגוריות ספציפיות.
  • ניהול ההגדרות באופן מרכזי: מומלץ להימנע מקידוד קשיח של שמות קטגוריות או נתיבים של שמות אובייקטים בלוגיקה של הסוכן. אפשר להשתמש במשתני סביבה או במנהלי תצורה כדי לעבור בין סביבות אחסון של פיתוח, בדיקה וייצור.
  • הטמעת אסטרטגיות יעילות לאחזור מידע: כשמשתמשים ב-Cloud Storage כשכבה לאחזור מידע, לא כדאי לטעון מסמכים גדולים שלמים להקשר של הסוכן. לעבד מראש ולחלק את המסמכים, או להשתמש בכלי חיפוש ייעודיים כדי לאחזר רק את הפלחים הרלוונטיים.

מגבלות

כשמשלבים את Cloud Storage עם ADK, חשוב לזכור את המגבלות הבאות:

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

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

כדי לראות דוגמאות מפורטות לקוד, הוראות להגדרה והפניות לפרמטרים לאתחול של ערכות הכלים של Cloud Storage באפליקציית Python, אפשר לעיין במדריך לשילוב ADK.