בדף הזה מוסבר איך לפתור בעיות ב-Model Armor.
בקטע הזה מפורטים שלבים לפתרון בעיות שיכולים לעזור לכם אם נתקלתם בבעיות בשימוש ב-Model Armor.
כל הקריאות ל-API של Model Armor מחזירות את השגיאה 404 Not Found
יוצרים חיבור Private Service Connect לממשקי ה-API של Model Armor. השגיאה הזו בדרך כלל מתרחשת כשניגשים לנקודות קצה אזוריות (REP) של Model Armor באמצעות גישה פרטית ל-Google או בלי Private Service Connect. מידע נוסף זמין במאמר מידע על גישה לנקודות קצה אזוריות דרך נקודות קצה של Private Service Connect.
המסנן של Sensitive Data Protection מחזיר שגיאה או שהמערכת מדלגת עליו
בודקים את הדברים הבאים:
- התבנית של Sensitive Data Protection נמצאת באותו אזור שבו נמצאת נקודת הקצה של Model Armor שאליה נשלחת הקריאה.
- לסוכן השירות ששולח את הבקשה להגנה מוגברת על המודל יש את התפקידים
dlp.Userו-dlp.Readerבפרויקט שמכיל את התבנית של Sensitive Data Protection.
השגיאה הזו מתרחשת בגלל שגיאות לקוח בבקשות SanitizeUserPrompt או SanitizeModelResponse, או בגלל בעיות בתבנית של Sensitive Data Protection.
שגיאות בנקודת הקצה הגלובלית של Model Armor
חשוב לוודא שאתם שולחים את בקשות ה-API לנקודת הקצה האזורית המתאימה, ולא לנקודת הקצה הגלובלית.
ב-Model Armor אפשר לבצע את הפעולות הבאות רק בנקודות הקצה האזוריות:
- יצירה, קריאה, עדכון, מחיקה והצגה של פעולות בתבניות.
- בקשות API של
SanitizeUserPromptו-SanitizeModelResponse.
אם תשלחו את בקשות ה-API לפעולות האלה לנקודת הקצה הגלובלית, תופיע השגיאה הבאה:
{
"error": {
"code": 403,
"message": "Write access to project '<PROJECT_ID>' was denied",
"status": "PERMISSION_DENIED"
}
}
שגיאות אישור כשניגשים לנקודות קצה אזוריות של Model Armor
השגיאה הזו בדרך כלל מתרחשת כשניגשים לנקודות קצה אזוריות של Model Armor מתוך רשת VPC באמצעות גישה פרטית ל-Google או VPC Service Controls, ואימות האישור נכשל.
לדוגמה, יכול להיות שתופיע הודעת שגיאה כמו זו:
curl: (60) SSL: no alternative certificate subject name matches target host name 'modelarmor.europe-west4.rep.googleapis.com'
כדי לפתור את הבעיה, צרו נקודת קצה (endpoint) של Private Service Connect לממשקי ה-API של Model Armor. מידע נוסף זמין במאמר מידע על גישה לנקודות קצה אזוריות דרך נקודות קצה של Private Service Connect.
האזור לא תומך ביכולות המבוקשות
יכול להיות שתופיע הודעת שגיאה דומה לזו:
Region '<var>REGION</var>' does not support the requested capabilities: '<var>CAPABILITIES</var>'
השגיאה הזו מתרחשת כשמנסים ליצור או לעדכן תבנית באזור עם הגבלות על תכונות, והבקשה מפעילה תכונות שלא נתמכות באזור הזה.
הגדרת התבנית כוללת גלאים כמו כתובת URL זדונית ותוכן ויזואלי של התעללות מינית בילדים (CSAM), שלא זמינים באזורים מסוימים עם תכונות שלא נתמכות.
כדי לפתור את הבעיה:
- מזהים את היכולות הלא נתמכות שמפורטות בהודעת השגיאה.
- כדי לבדוק אילו תכונות לא זמינות באזור היעד, עיינו בטבלה זמינות התכונות לפי אזור.
- מסירים את התכונות שלא נתמכות מהתבנית שיוצרים או מעדכנים, או מגדירים באופן מפורש את האכיפה שלהן ל-
DISABLED(לדוגמה,"csamFilterSettings": { "filterEnforcement": "DISABLED" }).
לחלופין, אם דרישות מיקום אחסון הנתונים מאפשרות זאת, אתם יכולים להשתמש באזור אחר של Model Armor שתומך בתכונות האלה.
חובה לעמוד בדרישות של מיקום אחסון הנתונים של התבנית
יכול להיות שתופיע הודעת שגיאה 400 (FAILED_PRECONDITION) דומה לזו:
Template data residency compliance is required. The 'Enforce data residency' field must not be set to false.
השגיאה הזו מתרחשת כשאוכפים את האילוץ המנוהל Require Model Armor Template Data Residency Compliance (constraints/modelarmor.managed.requireTemplateDataResidencyCompliance) של שירות מדיניות הארגון, ויוצרים או מעדכנים תבנית של Model Armor כשהתאימות למיקום אחסון הנתונים מושבתת.
התאימות למיקום אחסון הנתונים מושבתת כשמגדירים את data_residency_compliant לערך false או כשמבטלים את הסימון של האפשרות אכיפת מיקום אחסון הנתונים. מכיוון שהאילוץ הזה נאכף כברירת מחדל, עריכה של הגדרה כלשהי, כמו מסנן, בתבנית קיימת שכבר מוגדר בה data_residency_compliant ל-false, גם מפעילה את השגיאה הזו. התבניות הקיימות והבקשות להסרת תוכן זדוני או רגיש מההנחיות ומהתשובות לא יושפעו, אלא אם תעדכנו את התבנית.
כדי לפתור את הבעיה תוכלו לנסות אחד מהפתרונות הבאים:
- מפעילים את התאימות של מיקום אחסון הנתונים בתבנית על ידי הגדרת
data_residency_compliantל-trueאו על ידי בחירה באפשרות Enforce data residency. - אם אתם צריכים להשבית את התאימות של התבנית למיקום אחסון הנתונים, בקשו מהאדמין שאחראי על מדיניות הארגון לפעול לפי השלבים שמפורטים בקטע השבתת האילוץ של מדיניות הארגון לגבי מיקום אחסון הנתונים.
המערכת מדלגת על Policy Controller או מסננים של המדיניות בהנחיות או במטענים ייעודיים (payloads) גדולים
כשבודקים הנחיות או תשובות גדולות – כמו מטען ייעודי (payload) של יצירת תוכן מבוססת-שליפה (RAG) או היסטוריית שיחות של סוכן עם כמה שלבים – יכול להיות שמסננים מסוימים לא יפעלו, או שתוצאת הסרת התוכן הזדוני או הרגיש תחזיר את הערך EXECUTION_SKIPPED עם אחת מהודעות האזהרה הבאות בשדה messageItems:
Detection skipped as token limit exceeded.
Input size exceeded the limit of 4194304 bytes.
הבעיה הזו מתרחשת כשבקשה אונארית להסרת תוכן זדוני או רגיש או בקשה לסטרימינג במאגר נתונים זמני חורגת ממגבלת המערכת על מספר הטוקנים של המסנן (65,536 טוקנים לזיהוי של החדרת פרומפטים ופריצה, AI אחראי ו-CSAM; 130,000 טוקנים ל-Sensitive Data Protection) או ממגבלת גודל הקלט של 4MB. אם הקלט חורג ממגבלת הטוקנים של המסנן ולא מזוהה התאמה, המסנן מחזיר את הערכים EXECUTION_SKIPPED ו-NO_MATCH_FOUND, וכך מאפשר לבקשה להמשיך בשילובים מוטמעים.
כדי לבדוק אם המערכת דילגה על מסנן בגלל מגבלות על גודל הטוקן או הקלט, שולחים שאילתה ליומני SanitizeOperation ב-Cloud Logging:
jsonPayload.@type="type.googleapis.com/google.cloud.modelarmor.logging.v1.SanitizeOperationLogEntry"
"EXECUTION_SKIPPED"
כדי לפתור את הבעיה:
- בעומסי עבודה של סטרימינג או באינטראקציות של סוכנים למשימות מתמשכות, משתמשים בהסרת תוכן זדוני או רגיש בסטרימינג בזמן אמת (
StreamSanitizeUserPromptו-StreamSanitizeModelResponse). משתמשים ב-streamQueryלסוכנים של ערכת פיתוח הסוכנים (ADK) שמשתמשים ב-Agent Gateway, שמעבד קלט בחלקים ותומך במספר בלתי מוגבל של אסימונים. - בבקשות אונריות, צריך לחלק את המידע הגדול של ה-RAG או לקצר את היסטוריית השיחות של הסוכן עם כמה שלבים לפני ששולחים אותן ל-Model Armor, כדי שכל בקשה תישאר בתוך מגבלות המערכת של הטוקנים ומגבלת גודל הקלט של 4MB.