אתם יכולים להשתמש בתבניות של Model Armor כדי להגדיר את סינון ההנחיות והתשובות באפליקציות ה-AI שלכם. התבניות כוללות מסננים וספים בהתאמה אישית לכמה קטגוריות של בטיחות ואבטחה. במאמר הזה מוסבר איך ליצור ולנהל תבניות של Model Armor. מידע נוסף מופיע במאמר תבניות של Model Armor.
שימוש בנקודת קצה אזורית או במספר אזורים
כשעובדים עם תבנית של Model Armor, צריך להשתמש בנקודת קצה אזורית או במספר אזורים (modelarmor.LOCATION.rep.googleapis.com) שתואמת למיקום של התבנית. במאמר אכיפת מיקום אחסון הנתונים בתבניות מוסבר איך אוכפים את מיקום אחסון הנתונים בכל אזור או במספר אזורים.
בנקודת הקצה הגלובלית (modelarmor.googleapis.com) אי אפשר לנהל תבניות של Model Armor או להסיר תוכן זדוני או רגיש מהנחיות ומתשובות.
מתי כדאי להשתמש בתבניות של Model Armor
הנה כמה תרחישי שימוש נפוצים:
- סינון אחיד בכל האפליקציות: הגדירו הגדרות סינון ורמות סף מרכזיות, שעומסי עבודה שונים יכולים להפנות אליהן.
- התאמה אישית של ספי הזיהוי וההגדרות: אפשר לשנות את רגישות המסנן – למשל, להגדיר ספי סמך נמוכים, בינוניים או גבוהים – ואת הגדרות המסנן לתרחישי שימוש או לסביבות שונות.
- הגדרת הגנה בכמה קטגוריות: שילוב של Sensitive Data Protection, זיהוי פריצה, בדיקת URI זדוניים ומסננים להחדרת פרומפטים במדיניות אחת.
- הפרדה בין מדיניות הפיתוח למדיניות הייצור: כדאי להשתמש בתבניות נפרדות כדי לבדוק כללי סינון מחמירים יותר בסביבת ה-Staging לפני שמפעילים אותם בשירותי הייצור.
לפני שמתחילים
לפני שמתחילים, צריך לבצע את המשימות הבאות.
קבלת ההרשאות הנדרשות
כדי לקבל את ההרשאות שנדרשות לניהול תבניות של Model Armor, בקשו מהאדמין להקצות לכם את התפקיד אדמין של Model Armor (roles/modelarmor.admin) ב-IAM בפרויקט שמכיל את התבנית של Model Armor.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
הפעלת ממשקי ה-API
כדי להשתמש ב-Model Armor, צריך להפעיל את Model Armor API.
המסוף
מפעילים את Model Armor API, אם הוא עדיין לא מופעל.
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםבוחרים את הפרויקט שבו רוצים להפעיל את Model Armor.
gcloud
לפני שמתחילים, מבצעים את השלבים הבאים באמצעות Google Cloud CLI עם Model Armor API:
מפעילים את Cloud Shell במסוף Google Cloud .
בחלק התחתון של מסוף Google Cloud יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.
מפעילים את Model Armor API, אם הוא עדיין לא מופעל:
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם אתם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud services enable modelarmor.googleapis.com
הגדרת שינוי ברירת המחדל של נקודת הקצה ל-API באמצעות ה-CLI של gcloud.
הגדרת שינוי ברירת המחדל של נקודת הקצה ל-API באמצעות ה-CLI של gcloud
השלב הזה נדרש רק אם אתם משתמשים ב-CLI של gcloud עם Model Armor ורוצים להשתמש באזור או במספר אזורים שאינם ברירת המחדל של מספר האזורים us. כדי לוודא שה-CLI של gcloud מנתב בצורה נכונה את הבקשות לשירות Model Armor, צריך להגדיר באופן ידני את שינוי ברירת המחדל של נקודת הקצה ל-API.
מריצים את הפקודה הבאה כדי להגדיר את נקודת הקצה ל-API של שירות Model Armor.
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"
מחליפים את LOCATION באזור או במספר האזורים שבהם רוצים להשתמש ב-Model Armor.
יצירת תבנית של Model Armor
בתבניות של Model Armor מוגדרים המסננים והספים הספציפיים שמשמשים את Model Armor כדי לסנן הנחיות ותשובות לפי סיכוני בטיחות ואבטחה. כדי ליצור תבנית של Model Armor:
המסוף
נכנסים לדף Model Armor במסוף Google Cloud .
מוודאים שאתם צופים בפרויקט שבו הפעלתם את Model Armor.
בדף Model Armor, לוחצים על Create Template. הדף Create Template (יצירת תבנית) מוצג.
מציינים את מזהה התבנית. מזהה התבנית יכול להכיל אותיות, ספרות, קווים תחתונים או מקפים. הוא לא יכול להכיל יותר מ-63 תווים, רווחים או להתחיל במקף.
בקטע Location type, בוחרים אזור או כמה אזורים שבהם יפעלו הפעולות של Model Armor. אי אפשר לשנות את המיקום אחר כך.
אופציונלי: בקטע תאימות למיקום אחסון הנתונים, בוחרים אם להפעיל אכיפה של מיקום אחסון הנתונים. כברירת מחדל, כל תכונה של "הגנה מוגברת על המודל" שלא מתארחת באופן מקומי במיקום שבחרתם מושבתת, כדי למנוע מהנתונים שלכם לעבור לסמכויות שיפוט אחרות. התכונות המושבתות מפורטות בקטע הזה.
כדי להפעיל את התכונות שמוגבלות על ידי אכיפת מיקום אחסון הנתונים, מבטלים את הבחירה באפשרות אכיפת מיקום אחסון הנתונים. כדי לבטל את הבחירה באפשרות הזו, קודם צריך להשבית את אילוץ ברירת המחדל של מדיניות הארגון. להוראות, ראו השבתת האילוץ של מדיניות הארגון לגבי מיקום אחסון הנתונים. הפעולה הזו מאפשרת ניתוב של הנתונים בין תחומי שיפוט שונים.
אופציונלי: בקטע Labels, מוסיפים את צמדי המפתח/ערך שרוצים להשתמש בהם כדי לקבץ תבניות קשורות.
בקטע Filter version, בוחרים את מספר הגרסה של המסנן או את הכינוי של גרסת המסנן.
בוחרים את אופן הפעולה כדי לציין אם רוצים לסנן טקסט, תמונות או את שניהם.
בקטע Detections, מגדירים את הגדרות הזיהוי.
אופציונלי: אם בוחרים בזיהוי של Sensitive Data Protection, צריך לקבוע את ההגדרות של Sensitive Data Protection.
בקטע Responsible AI, מגדירים את רמת הסמך לכל מסנן תוכן.
אופציונלי: מרחיבים את הקטע Additional configurations (optional) ומשנים את ההגדרות הבאות:
- בקטע Configure logging, בוחרים את הפעולות שרוצים להגדיר להן רישום ביומן.
- בקטע Multi-language support, בוחרים באפשרות Enable Multi-language support כדי להשתמש בזיהוי של כמה שפות.
- בקטע במצב אכיפה, בוחרים סוג אכיפה.
לוחצים על יצירה.
gcloud
מריצים את הפקודה הבאה:
gcloud model-armor templates create TEMPLATE_ID --project=PROJECT_ID --location=LOCATION \
--rai-settings-filters='[{ "filterType": "HATE_SPEECH", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "HARASSMENT", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "SEXUALLY_EXPLICIT", "confidenceLevel": "MEDIUM_AND_ABOVE" }]' \
--basic-config-filter-enforcement=enabled \
--pi-and-jailbreak-filter-settings-enforcement=enabled \
--pi-and-jailbreak-filter-settings-confidence-level=HIGH \
--malicious-uri-filter-settings-enforcement=enabled \
--template-metadata-custom-llm-response-safety-error-code=798 \
--template-metadata-custom-llm-response-safety-error-message="test template llm response evaluation failed" \
--template-metadata-custom-prompt-safety-error-code=799 \
--template-metadata-custom-prompt-safety-error-message="test template prompt evaluation failed" \
--template-metadata-ignore-partial-invocation-failures \
--template-metadata-log-operations \
--template-metadata-log-sanitize-operations
מחליפים את מה שכתוב בשדות הבאים:
-
LOCATION: המיקום של התבנית. -
TEMPLATE_ID: מזהה התבנית. -
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו.
REST
כדי ליצור תבנית חדשה של Model Armor, משתמשים בפקודה הבאה:
curl -X POST \
-d "FILTER_CONFIG" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates?template_id=TEMPLATE_ID"
מחליפים את מה שכתוב בשדות הבאים:
-
FILTER_CONFIG: הגדרת המסנן של התבנית בפורמט JSON. -
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו. -
TEMPLATE_ID: המזהה של התבנית שרוצים ליצור. -
LOCATION: המיקום של התבנית.
בדוגמה הבאה מוצגת הגדרת המסנן של Model Armor (FilterConfig), שבה אתם מגדירים מה אתם רוצים לזהות. בדוגמה הזו, המסננים של AI אחראי מוגדרים לדברי שטנה, הטרדה, תוכן מסוכן ותוכן מיני בוטה, עם רמות סמך שונות. מסנן הזיהוי של החדרת פרומפטים ופריצות מופעל ברמת סמך של HIGH, כלומר רק תוכן עם סבירות גבוהה יסומן. המסנן malicious URI מופעל.
export FILTER_CONFIG='{
"filterConfig": {
"raiSettings": {
"raiFilters": [{
"filterType": "HATE_SPEECH",
"confidenceLevel": "MEDIUM_AND_ABOVE"
}, {
"filterType": "HARASSMENT",
"confidenceLevel": "HIGH"
}, {
"filterType": "DANGEROUS",
"confidenceLevel": "MEDIUM_AND_ABOVE"
},{
"filterType": "SEXUALLY_EXPLICIT",
"confidenceLevel": "MEDIUM_AND_ABOVE"
}]
},
"piAndJailbreakFilterSettings": {
"filterEnforcement": "ENABLED",
"confidenceLevel": "HIGH"
},
"maliciousUriFilterSettings": {
"filterEnforcement": "ENABLED"
}
}
}'
curl -X POST \
-d "$FILTER_CONFIG" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates?template_id=TEMPLATE_ID"
כדי להגדיר איך Model Armor מטפל בפעולות, בשגיאות וביומנים, צריך להגדיר את המטא-נתונים של התבנית (TemplateMetadata) בפקודה. המטא-נתונים של התבנית כוללים הגדרות לזיהוי שפה, אופנויות ותאימות למיקום אחסון הנתונים.
בדוגמה הבאה יוצרים הגדרת תבנית של "הגנה מוגברת על המודל" שמופעלים בה זיהוי של כמה שפות וסוגי נתונים (תמונה וטקסט).
export TEMPLATE_CONFIG='{
"filterConfig": {
"raiSettings": {
"raiFilters": [{
"filterType": "HATE_SPEECH",
"confidenceLevel": "MEDIUM_AND_ABOVE"
}, {
"filterType": "HARASSMENT",
"confidenceLevel": "HIGH"
}, {
"filterType": "DANGEROUS",
"confidenceLevel": "MEDIUM_AND_ABOVE"
},{
"filterType": "SEXUALLY_EXPLICIT",
"confidenceLevel": "MEDIUM_AND_ABOVE"
}]
},
"piAndJailbreakFilterSettings": {
"filterEnforcement": "ENABLED",
"confidenceLevel": "HIGH"
},
"maliciousUriFilterSettings": {
"filterEnforcement": "ENABLED"
}
},
"templateMetadata": {
"multiLanguageDetection": {
"enableMultiLanguageDetection": true
},
"modalities": ["MODALITY_IMAGE", "MODALITY_TEXT"]
}
}'
curl -X POST \
-d "$TEMPLATE_CONFIG" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates?template_id=TEMPLATE_ID"
C#
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-C# ולהתקין את Model Armor C# SDK.
המשך
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Go ולהתקין את Model Armor Go SDK.
Java
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Java ולהתקין את Model Armor Java SDK.
Node.js
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Node.js ולהתקין את Model Armor Node.js SDK.
PHP
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-PHP ולהתקין את Model Armor PHP SDK.
Python
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Python ולהתקין את Model Armor Python SDK.
הגדרת תאימות של מיקום אחסון הנתונים
כברירת מחדל, כל תבנית שיוצרים אוכפת באופן קפדני את התאימות למיקום אחסון הנתונים. כלומר, כל תכונה של Model Armor שלא מתארחת בסמכות השיפוט שמכסה את האזור של התבנית מושבתת. אכיפת התאימות של מיקום אחסון הנתונים מונעת מהנתונים לצאת מתחום השיפוט שלהם.
בתבניות שבהן יש עדיפות לסינון אבטחה מקיף על פני מיקום אחסון נתונים קפדני, אתם יכולים להשבית את אכיפת מיקום אחסון הנתונים לנתונים שנמצאים בשימוש ובמעבר. כשמשביתים את התאימות למיקום אחסון הנתונים בתבנית, מאפשרים ניתוב של הנתונים בין תחומי שיפוט שונים. כלומר, יכול להיות שהבקשות ינותבו לתחומי שיפוט אחרים אם תכונות מסוימות לא זמינות בתחום השיפוט של התבנית. הנתונים באחסון נשארים תואמים למיקום אחסון הנתונים, בלי קשר למצב של האפשרות הזו.
השבתת התאימות למיקום אחסון הנתונים מפעילה את כל התכונות של Model Armor, חוץ ממודליות התמונה, שעדיין מוגבלת לאזורים us ו-eu.
השבתת האילוץ של מדיניות הארגון לגבי מיקום אחסון הנתונים
כברירת מחדל, Model Armor אוכף את המגבלה המנוהלת Require Model Armor Template Data Residency Compliance (constraints/modelarmor.managed.requireTemplateDataResidencyCompliance) של שירות מדיניות הארגון. כשהאילוץ הזה נאכף, לא ניתן ליצור או לעדכן תבנית שבה data_residency_compliant מוגדר ל-false. תבניות קיימות ובקשות להסרת תוכן זדוני או רגיש מהנחיות ומתשובות לא מושפעות, אלא אם מעדכנים תבנית בזמן שהערך של data_residency_compliant הוא false. מידע נוסף זמין במאמר חובה לעמוד בדרישות של מיקום אחסון הנתונים של התבנית.
כדי להשבית את אכיפת מיקום אחסון הנתונים בתבנית:
- מבקשים מהאדמין של מדיניות הארגון (
roles/orgpolicy.policyAdmin) להשבית את האילוץconstraints/modelarmor.managed.requireTemplateDataResidencyComplianceבפרויקט, בתיקייה או בארגון. הוראות מפורטות זמינות במאמר שימוש באילוצים מנוהלים במדיניות הארגון. - כשיוצרים או מעדכנים את התבנית, מבטלים את הבחירה באפשרות Enforce data residency במסוף Google Cloud , או מגדירים את
data_residency_compliantלערךfalseבאמצעות Model Armor API.
בחירת גרסת מסנן
גרסאות המסננים של Model Armor מספקות איזון בין היציבות של עומסי העבודה בסביבת הייצור לבין הגישה למודלים המעודכנים של זיהוי האיומים. אתם מגדירים את גרסת המסנן ברמת התבנית. גרסת המסנן חלה על כל המסננים בתבנית הזו, חוץ מאלה שמפורטים בקטע מסננים שלא משתמשים בגרסאות מסננים. מידע נוסף זמין במאמר הגדרת גרסת המסנן של תבנית.
בחירת אופן ההגעה
אתם יכולים להשתמש במודליות כדי לציין אם אתם רוצים לסרוק את הדברים הבאים:
- הכול: סריקה של טקסט ותמונות.
- אופנים ספציפיים:
- טקסט: סריקה של מחרוזות טקסט וטקסט שמוטמע בפורמטים נתמכים של קבצים.
- תמונה: סריקת תמונות.
מידע נוסף זמין במאמרים סינון תמונות והסרת תוכן זדוני או רגיש מהנחיות שמכילות תמונות.
הגדרת הזיהויים
זיהויים הם הבדיקות הספציפיות ש-Model Armor מבצע בהנחיות ובתשובות. הגנה מוגברת על המודל מציעה מערכת גמישה להגדרת זיהויים, שמאפשרת להתאים את רמת ההגנה לאפליקציות ה-AI. אתם מגדירים את הזיהויים כשאתם יוצרים תבניות. השירות "הגנה מוגברת על המודל" מבצע את בדיקות הזיהוי הבאות על הנחיות ותשובות:
זיהוי כתובות URL זדוניות: זיהוי כתובות אינטרנט (URL) שנועדו לפגוע במשתמשים או במערכות. כתובות ה-URL האלה עלולות להוביל לאתרי פישינג, להורדות של תוכנות זדוניות או למתקפות סייבר אחרות. מידע נוסף זמין במאמר זיהוי כתובות URL זדוניות.
זיהוי של החדרת פרומפטים ופריצה: זיהוי של תוכן זדוני וניסיונות פריצה בפרומפט. מומלץ להגדיר את רמת הסמך לערך High כדי לצמצם את מספר התוצאות החיוביות הכוזבות ולהבטיח התנהגות עקבית של הזיהוי. למרות שהגדרת רמת הסמך ל-High מפחיתה את שיעור התוצאות החיוביות הכוזבות, עדיין יכול להיות שתקבלו תוצאות חיוביות כוזבות במקרים נדירים. מידע נוסף זמין במאמר זיהוי של החדרת פרומפטים ופריצה.
Sensitive Data Protection: זיהוי מידע אישי רגיש ומניעת חשיפה שלו בטעות כתוצאה ממתקפות כמו החדרת פרומפטים. מידע נוסף זמין במאמר הגנה על נתונים רגישים.
קביעת הגדרות של Sensitive Data Protection
התכונה "הגנה מוגברת על המודל" משתמשת ב-Sensitive Data Protection כדי לזהות ולמנוע חשיפה של מידע רגיש באינטראקציות עם ה-LLM. מידע נוסף זמין במאמר Sensitive Data Protection.
ב-Model Armor יש שני מצבים להגדרת Sensitive Data Protection:
Basic: גישה פשוטה יותר שמשתמשת ב-infoTypes מוגדרים מראש כדי לזהות מידע אישי רגיש. מידע נוסף על סוגי המידע המוגדרים מראש זמין במאמר הגדרה בסיסית של Sensitive Data Protection.
מתקדם: אפשרות עם יותר הגדרות אישיות, שמשתמשת בתבניות שמוגדרות ב-Sensitive Data Protection כדי לבדוק מידע אישי רגיש או להסיר ממנו פרטי זיהוי.
אם בוחרים במצב מתקדם, צריך לציין את הפרמטרים הבאים:
תבנית בדיקה: תבניות לשמירת פרטי ההגדרות של משימות סריקה לבדיקה, כולל אילו גלאי infoType מוגדרים מראש או מותאמים אישית צריך להשתמש. מזינים את שם התבנית בפורמט הבא:
projects/PROJECT_ID/locations/LOCATION/inspectTemplates/TEMPLATE_IDאופציונלי: תבנית להסרת פרטי זיהוי: תבניות לשמירת פרטי ההגדרות של משימות להסרת פרטי זיהוי, כולל טרנספורמציות של infoType ושל מערכי נתונים מובְנים. מזינים מזהה לתבנית להסרת פרטים מזהים בפורמט הבא:
projects/PROJECT_ID/locations/LOCATION/deidentifyTemplates/TEMPLATE_ID
מוודאים שתבנית הבדיקה והתבנית להסרת פרטי הזיהוי קיימות ב-Sensitive Data Protection. אם התבנית נמצאת בפרויקט אחר, צריך להקצות לסוכן השירות של Model Armor את התפקיד "משתמש ב-DLP" (roles/dlp.user) ואת התפקיד "קורא ב-DLP" (roles/dlp.reader) בפרויקט הזה.
הבקשות מעובדות ב-Model Armor באופן שונה בהתאם לתבנית שציינתם – רק תבנית בדיקה או גם תבנית בדיקה וגם תבנית להסרת פרטי הזיהוי:
בדיקת תבנית בלבד: Model Armor מחפש בתוכן את סוגי המידע שצוינו בתבנית הבדיקה ומדווח על הממצאים.
בדיקה והסרת פרטים מזהים מתבנית: "הגנה מוגברת על המודל" מסירה את פרטי הזיהוי של סוגי המידע שצוינו גם בתבנית הבדיקה וגם בתבנית הסרת פרטי הזיהוי.
השירות "הגנה מוגברת על המודל" מסיר את פרטי הזיהוי רק מסוגי המידע שציינתם בתבניות הבדיקה והסרת פרטי הזיהוי. לדוגמה, אם לא תציינו את CREDIT_CARD_NUMBER בתבניות הבדיקה והסרת פרטי הזיהוי, Model Armor לא יסמן או יסיר פרטי זיהוי של מספרי כרטיסי אשראי שמועברים בהנחיות ובתשובות.
הגדרת רמת הסמך
רמת הסמך מייצגת את הסבירות שהממצאים תואמים לסוג של מסנן תוכן. אפשר להגדיר את רמת הסמך לכל מסנן תוכן. הערכים האפשריים הם:
- ללא: לא זוהה תוכן.
- נמוכה ומעלה: התוכן מזוהה ברמת סמך נמוכה, בינונית או גבוהה.
- בינונית ומעלה: התוכן מזוהה ברמת סמך בינונית או גבוהה.
- גבוהה: התוכן זוהה ברמת סבירות גבוהה.
כדי לאכוף את המדיניות בצורה מחמירה יותר, מגדירים את רמת הסבירות ל-נמוכה ומעלה. כך המערכת תזהה את רוב התוכן שמתאים לסוג מסנן התוכן.
כדי להפעיל רישום מקיף ביומן של תבנית, קראו את המאמר רישום ביומן של ביקורת ופלטפורמה ב-Model Armor.
הגדרת סוג האכיפה של התבניות
כדי לקבוע איך Model Armor יטפל בזיהויים, מגדירים את סוג האכיפה.
בשדה template_metadata של הגדרת התבנית, מגדירים את enforcement_type לערך INSPECT_ONLY או INSPECT_AND_BLOCK.
export TEMPLATE_CONFIG='{
"filter_config": {
"rai_settings": {
"rai_filters": [{
"filter_type": "HATE_SPEECH",
"confidence_level": "MEDIUM_AND_ABOVE"
}, {
"filter_type": "HARASSMENT",
"confidence_level": "MEDIUM_AND_ABOVE"
}, {
"filter_type": "DANGEROUS",
"confidence_level": "MEDIUM_AND_ABOVE"
},{
"filter_type": "SEXUALLY_EXPLICIT",
"confidence_level": "MEDIUM_AND_ABOVE"
}]
},
"pi_and_jailbreak_filter_settings": {
"filter_enforcement": "ENABLED",
"confidence_level": "HIGH"
},
"malicious_uri_filter_settings": {
"filter_enforcement": "ENABLED"
}
},
"template_metadata": {
"enforcement_type": "INSPECT_ONLY",
"multi_language_detection": {
"enableMultiLanguageDetection": true
}
}
}'
curl -X POST \
-d "$TEMPLATE_CONFIG" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates?template_id=TEMPLATE_ID"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו. -
TEMPLATE_ID: המזהה של התבנית שרוצים ליצור. -
LOCATION: המיקום של התבנית.
הגדרת כללי החרגה ספציפיים לתבנית
כללי ההחרגה של Model Armor עוזרים לצמצם את מספר הזיהויים החיוביים השגויים של מונחים מאושרים שספציפיים לדומיין, הקשרים עסקיים ייחודיים או פתרונות זמניים לעקיפת בעיות תפעוליות. אתם מגדירים את הכללים האלה ברמת התבנית למסננים נתמכים, כדי שתוכן תקין לא יפעיל זיהויים. מידע נוסף זמין במאמר הגדרת כללי החרגה ספציפיים לתבנית.
הצגת תבנית של Model Armor
כדי להבין אילו הגדרות זמינות, ולפתור בעיות בהנחיות ובתשובות של הסינון, אתם יכולים לעיין בתבניות הקיימות.
המסוף
נכנסים לדף Model Armor במסוף Google Cloud .
מוודאים שאתם צופים בפרויקט שבו הפעלתם את Model Armor. נפתח הדף Model Armor ובו רשימת התבניות שנוצרו בפרויקט.
לוחצים על תבנית כלשהי מהרשימה כדי לראות את הפרטים שלה.
gcloud
מריצים את הפקודה הבאה:
gcloud model-armor templates describe TEMPLATE_ID --project=PROJECT_ID --location=LOCATION
מחליפים את מה שכתוב בשדות הבאים:
-
LOCATION: המיקום של התבנית. -
TEMPLATE_ID: מזהה התבנית. -
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו.
REST
מריצים את הפקודה הבאה:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו. -
TEMPLATE_ID: המזהה של התבנית שרוצים להציג. -
LOCATION: המיקום של התבנית.
C#
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-C# ולהתקין את Model Armor C# SDK.
המשך
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Go ולהתקין את Model Armor Go SDK.
Java
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Java ולהתקין את Model Armor Java SDK.
Node.js
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Node.js ולהתקין את Model Armor Node.js SDK.
PHP
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-PHP ולהתקין את Model Armor PHP SDK.
Python
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Python ולהתקין את Model Armor Python SDK.
עדכון תבנית של Model Armor
כדי לשמור על מצב אבטחה חזק ויעיל באפליקציות ה-AI, חשוב לעדכן את התבניות באופן קבוע.
המסוף
נכנסים לדף Model Armor במסוף Google Cloud .
מוודאים שאתם צופים בפרויקט שבו הפעלתם את Model Armor. בדף Model Armor מופיעה רשימה של התבניות שנוצרו בשביל הארגון שלכם.
לוחצים על התבנית שרוצים לעדכן מהרשימה. הדף Template details מוצג.
לוחצים על Edit.
מעדכנים את הפרמטרים הנדרשים ולוחצים על שמירה.
gcloud
כדי לעדכן תבנית, מריצים את הפקודה gcloud model-armor templates update וכוללים את הדגלים של ההגדרות שרוצים לשנות.
לדוגמה, הפקודה הבאה מעדכנת את הגדרות המסנן והמטא-נתונים של תבנית:
gcloud model-armor templates update TEMPLATE_ID \
--project=PROJECT_ID \
--location=LOCATION \
--rai-settings-filters='[{ "filterType": "HATE_SPEECH", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "HARASSMENT", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "DANGEROUS", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "SEXUALLY_EXPLICIT", "confidenceLevel": "MEDIUM_AND_ABOVE" }]' \
--basic-config-filter-enforcement=enabled \
--pi-and-jailbreak-filter-settings-enforcement=enabled \
--pi-and-jailbreak-filter-settings-confidence-level=HIGH \
--malicious-uri-filter-settings-enforcement=enabled \
--template-metadata-custom-llm-response-safety-error-code=798 \
--template-metadata-custom-llm-response-safety-error-message="test template llm response evaluation failed" \
--template-metadata-custom-prompt-safety-error-code=799 \
--template-metadata-custom-prompt-safety-error-message="test template prompt evaluation failed" \
--template-metadata-ignore-partial-invocation-failures \
--template-metadata-log-operations \
--template-metadata-log-sanitize-operations
מחליפים את מה שכתוב בשדות הבאים:
-
TEMPLATE_ID: מזהה התבנית. -
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו. -
LOCATION: המיקום של התבנית.
REST
מריצים את הפקודה הבאה:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d "$FILTER_CONFIG" \ "https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID?updateMask=UPDATE_MASK"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו. -
LOCATION: המיקום של התבנית. -
TEMPLATE_ID: מזהה התבנית. -
UPDATE_MASK: השדות שרוצים לעדכן, כמוfilterConfig,filterConfig.piAndJailbreakFilterSettingsאוfilterConfig.filterRuleSettings. מידע נוסף זמין במאמר עדכון כללי החרגה בתבנית. אם משאירים את השדה הזה ריק, כל הגדרת המסנן מתעדכנת.
כל שאר השדות לא ניתנים לשינוי. ניסיונות לעדכן שדות אחרים (לדוגמה, ניסיונות לעדכן את שם התבנית) יגרמו לשגיאה.
C#
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-C# ולהתקין את Model Armor C# SDK.
המשך
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Go ולהתקין את Model Armor Go SDK.
Java
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Java ולהתקין את Model Armor Java SDK.
Node.js
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Node.js ולהתקין את Model Armor Node.js SDK.
PHP
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-PHP ולהתקין את Model Armor PHP SDK.
Python
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Python ולהתקין את Model Armor Python SDK.
מחיקת תבנית של Model Armor
מוחקים תבנית כשלא משתמשים בה יותר, כשמחליפים אותה בתבנית חדשה או כשמדיניות האבטחה משתנה.
המסוף
נכנסים לדף Model Armor במסוף Google Cloud .
מוודאים שאתם צופים בפרויקט שבו הפעלתם את Model Armor. בדף Model Armor מופיעה רשימה של התבניות שנוצרו בשביל הארגון שלכם.
לוחצים על התבנית שרוצים למחוק מהרשימה. הדף Template details מוצג.
לוחצים על Delete. מופיעה תיבת דו-שיח לאישור.
מזינים את שם התבנית כדי לאשר את המחיקה ולוחצים על מחיקה.
gcloud
מריצים את הפקודה הבאה:
gcloud model-armor templates delete TEMPLATE_ID --project=PROJECT_ID --location=LOCATION
מחליפים את מה שכתוב בשדות הבאים:
-
LOCATION: המיקום של התבנית. -
TEMPLATE_ID: מזהה התבנית. -
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו.
REST
מריצים את הפקודה הבאה:
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/templates/TEMPLATE_ID"
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט שהתבנית שייכת אליו. -
LOCATION: המיקום של התבנית. -
TEMPLATE_ID: מזהה התבנית.
C#
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-C# ולהתקין את Model Armor C# SDK.
המשך
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Go ולהתקין את Model Armor Go SDK.
Java
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Java ולהתקין את Model Armor Java SDK.
Node.js
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Node.js ולהתקין את Model Armor Node.js SDK.
PHP
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-PHP ולהתקין את Model Armor PHP SDK.
Python
כדי להריץ את הקוד הזה, קודם צריך להגדיר סביבת פיתוח ב-Python ולהתקין את Model Armor Python SDK.
מטא-נתונים של תבניות
המטא-נתונים של התבנית של "הגנה מוגברת על המודל" עוזרים לכם להגדיר את ההתנהגות של "הגנה מוגברת על המודל", כולל טיפול בבדיקות בטיחות ואבטחה, טיפול בשגיאות והתנהגות הרישום ביומן.
המטא-נתונים של התבנית של Model Armor כוללים את השדות הבאים:
| מטא-נתונים | סוג | ערך ברירת המחדל | תיאור |
|---|---|---|---|
| enforcement_type | טיפוסים בני מנייה (enum) | INSPECT_AND_BLOCK |
מגדיר את סוג האכיפה. משתמשים באחד מהערכים הבאים:
|
| log_template_operations | בוליאני | לא נכון | הפעלת הרישום ביומן של פעולות בתבניות. |
| log_sanitize_operations | בוליאני | לא נכון | הפעלת הרישום ביומן של פעולות הסרת תוכן זדוני או רגיש. |
| multiLanguageDetection | בוליאני | לא נכון | הפעלת זיהוי של כמה שפות. |
| מודאליות (גרסת טרום-השקה (Preview)) | טיפוסים בני מנייה (enum) | ריק | ההגדרה קובעת אם לסרוק טקסט, תמונות או את שניהם. אם משאירים את השדה הזה ריק, המערכת סורקת רק טקסט.
משתמשים באחד מהערכים הבאים:
|
| data_residency_compliant | בוליאני | True |
מציין אם התבנית כפופה לתאימות מחמירה של מיקום אחסון הנתונים (עיבוד בתחום השיפוט).
מידע נוסף על השדה הזה מופיע בקטע הגדרת תאימות למיקום אחסון הנתונים במאמר הזה. מידע נוסף על מיקום אחסון הנתונים של תבניות זמין במאמר אכיפת מיקום אחסון הנתונים של תבניות. |
המאמרים הבאים
- מידע ולמידה על סקירה כללית על Model Armor.
- מידע נוסף על הגדרות הסף של Model Armor
- הסרת תוכן זדוני או רגיש מהנחיות ומתשובות.
- פתרון בעיות ב-Model Armor