במאמר הזה מוסבר איך לפתור שגיאות שעלולות להתרחש כשמשתמשים בנציג.
הערה: כדי לחפש ולסנן את יומני השגיאות של הסוכן, משתמשים ב-Logs Explorer, בוחרים את RESOURCE TYPE ל-Vertex AI מנוע חשיבה רציונלית ובוחרים את הערך המתאים של RESOURCE CONTAINER (כלומר מספר הפרויקט) ואת הערך של REASONING ENGINE ID.
סכימות הפעולות ריקות
אם הנציג מחזיר רשימה ריקה מ-.operation_schemas(), יכול להיות שהסיבה לכך היא אחת מהבעיות הבאות:
הסכימה לא נוצרה במהלך יצירת הסוכן
הבעיה:
כשפורסים את הנציג, מקבלים אזהרה שדומה לזו:
WARNING:vertexai.agent_engines:failed to generate schema: issubclass() arg 1 must be a class
סיבה אפשרית:
האזהרה הזו יכולה להופיע אם פורסים נציג באמצעות התבנית המוכנה מראש של LangchainAgent בגרסה של google-cloud-aiplatform שקודמת ל-1.49.0. כדי לבדוק באיזו גרסה אתם משתמשים, מריצים את הפקודה הבאה במסוף:
pip show google-cloud-aiplatformפתרון מומלץ:
כדי לעדכן את החבילה של google-cloud-aiplatform, מריצים את הפקודה הבאה בטרמינל:
pip install google-cloud-aiplatform --upgradeאחרי שמעדכנים את החבילה google-cloud-aiplatform, מריצים את הפקודה הבאה כדי לוודא שהגרסה שלה היא 1.49.0 או גרסה מאוחרת יותר:
pip show google-cloud-aiplatformאם אתם משתמשים במכונה של Notebook (לדוגמה, Jupyter, Colab או Workbench), יכול להיות שתצטרכו להפעיל מחדש את סביבת זמן הריצה כדי להשתמש בחבילה המעודכנת. אחרי שמוודאים שגרסת google-cloud-aiplatform היא 1.49.0 או גרסה עדכנית יותר, מנסים לפרוס את הסוכן שוב.
שגיאת PermissionDenied בשליחת שאילתה לסוכן
אם אין לכם את ההרשאות הנדרשות, יכול להיות שהשאילתה תיכשל.
הרשאות לתוספים של Vertex AI
הבעיה
יכול להיות שתקבלו שגיאת PermissionDenied שדומה לזו:
Permission 'aiplatform.extensions.get' denied on resource
'//aiplatform.googleapis.com/projects/{PROJECT_ID}/locations/{LOCATION}/extensions/
{EXTENSION}' (or it may not exist). [reason: "IAM_PERMISSION_DENIED"
domain: "aiplatform.googleapis.com"
metadata {
key: "permission"
value: "aiplatform.extensions.get"
}
metadata {
key: "resource"
value: "projects/{PROJECT_ID}/locations/{LOCATION}/extensions/{EXTENSION}"
}
]
לנציג שלכם אין את ההרשאות לתוספים של Vertex AI. כדי להשתמש בתוספים של Vertex AI עם Agent Runtime, צריך להקצות את התפקיד "משתמש ב-Vertex AI" (roles/aiplatform.user) לחשבון השירות של זהות הסוכן.
מידע נוסף מופיע במאמר הגדרת הזהות וההרשאות של הנציג.
הרשאות של LLM
הבעיה:
יכול להיות שתקבלו שגיאת PermissionDenied שדומה לזו:
PermissionDenied: 403 Permission 'aiplatform.endpoints.predict' denied on resource
'//aiplatform.googleapis.com/projects/{PROJECT_ID}/locations/{LOCATION}/publishers/
google/models/{MODEL}' (or it may not exist). [reason: "IAM_PERMISSION_DENIED"
domain: "aiplatform.googleapis.com"
metadata {
key: "permission"
value: "aiplatform.endpoints.predict"
}
metadata {
key: "resource"
value: "projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL}"
}
]
סיבה אפשרית:
יכול להיות שלחשבון השירות של זהות הנציג אין את ההרשאות המתאימות לשליחת שאילתות למודל השפה הגדול (LLM).
פתרון מומלץ:
מוודאים שלחשבון השירות יש את ההרשאות המתאימות לניהול זהויות והרשאות גישה (IAM) שמופיעות בהודעת השגיאה. דוגמה להרשאת IAM שיכול להיות שחסרה לכם: aiplatform.endpoints.predict. מידע נוסף מופיע במאמר הגדרת הזהות וההרשאות של הנציג.
ההרצה של מנוע חשיבה רציונלית נכשלה
אם מופיעה הודעת השגיאה "Reasoning Engine Execution failed" כששולחים שאילתה לנציג, יכול להיות שהסיבה היא אחת מהבעיות שמתוארות בקטע הזה.
הנתונים שהוזנו ב-.query() לא תקינים
הבעיה:
יכול להיות שתקבלו שגיאת FailedPrecondition שדומה לזו:
FailedPrecondition: 400 Reasoning Engine Execution failed. Error Details:
{"detail":"Invalid request: `{'query': ...}`"}
סיבה אפשרית:
השגיאה הזו מתרחשת כשמציינים את הקלט של השאילתה כארגומנטים לפי מיקום במקום כארגומנטים של מילות מפתח. לדוגמה, אתם קוראים ל-agent.query(query_str) במקום ל-agent.query(input=query_str).
פתרון מומלץ:
כששולחים שאילתה למכונה של מנוע חשיבה רציונלית שנפרס, צריך לציין את כל הקלטים כארגומנטים של מילות מפתח.
חריגה ממכסת השימוש במודל Gemini
הבעיה:
יכול להיות שתקבלו הודעת שגיאה שדומה לאחת מההודעות הבאות, שמציינת שהשגיאה נובעת מהקריאה ל-Gemini:
FailedPrecondition: 400 Reasoning Engine Execution failed. Error Details:
{"detail":"...langchain_google_vertexai/chat_models.py...google.api_core.exceptions.ResourceExhausted: 429 Unable to submit request because the service is temporarily out of capacity. Try again later."}
או הודעת שגיאה אחרת:
FailedPrecondition: 400 Reasoning Engine Execution failed. Error Details:
{"detail":"...langchain_google_vertexai/chat_models.py...google.api_core.exceptions.InternalServerError: 500 Internal error occurred."}
סיבה אפשרית:
זה יכול לקרות אם שלחתם יותר מדי בקשות לאחרונה וניצלתם את המכסה של מודל Gemini.
פתרון מומלץ:
כדי להגדיל את המכסה, פועלים לפי תהליך ניהול המכסות של מודל Gemini. לחלופין, אפשר להגביל את קצב הבדיקות ולנסות שוב מאוחר יותר.
מזהה שגוי של מנוע החשיבה הרציונלית
הבעיה:
יכול להיות שתופיע הודעת השגיאה "Reasoning Engine Execution failed" עם הפרטים Not Found.
סיבה אפשרית:
השגיאה הזו יכולה לקרות אם משתמשים במזהה שגוי של מנוע החשיבה הרציונלית כששולחים שאילתה לסוכן.
פתרון מומלץ:
מוודאים שמשתמשים במזהה הנכון של מנוע החשיבה הרציונלית של הסוכן.
משאבי תמיכה
אם הבעיה עדיין לא נפתרה, אפשר לעיין במדריך התמיכה שלנו כדי לקבל עזרה.