אתם משתמשים בתבניות של Model Armor כדי להגדיר את הסינון של הנחיות ותשובות באפליקציות ה-AI שלכם. התבניות כוללות מסננים וספים בהתאמה אישית לכמה קטגוריות של בטיחות ואבטחה. במאמר הזה נסביר איך ליצור ולנהל תבניות של Model Armor. מידע נוסף זמין במאמר בנושא תבניות הגנה מוגברת על המודל.
שימוש בנקודת קצה אזורית או בכמה אזורים
כשעובדים עם תבנית Model Armor, צריך להשתמש בנקודת קצה אזורית או רב-אזורית (modelarmor.LOCATION.rep.googleapis.com) שתואמת למיקום של התבנית. מידע על האופן שבו מיקום אחסון הנתונים נאכף בכל אזור או במספר אזורים מופיע במאמר אכיפת מיקום אחסון הנתונים בתבניות.
נקודת הקצה הגלובלית (modelarmor.googleapis.com) לא תומכת בניהול תבניות של הגנה מוגברת על המודל או בהסרת תוכן זדוני או רגיש מהנחיות ותשובות.
מתי כדאי להשתמש בתבניות של Model Armor
הנה כמה תרחישי שימוש נפוצים:
- סטנדרטיזציה של הסינון בכל האפליקציות: הגדרת תצורות סינון מרכזיות ורמות סף שאפשר להפנות אליהן כמה עומסי עבודה.
- התאמה אישית של ספי זיהוי והגדרות: שינוי הרגישות של המסנן – למשל, הגדרת ספי רמת ביטחון נמוכה, בינונית או גבוהה – והגדרות המסנן לתרחישי שימוש או לסביבות שונות.
- הגדרת הגנה על כמה קטגוריות: שילוב של הגנה על מידע אישי רגיש, זיהוי פריצה, בדיקת URI זדוני ומסנני הזרקת הנחיות במדיניות אחת.
- בידוד של מדיניות הפיתוח והייצור: כדאי לשמור תבניות נפרדות כדי לבדוק כללי סינון מחמירים יותר בסביבת Staging לפני שמפעילים אותם בשירותי הייצור.
לפני שמתחילים
לפני שמתחילים, צריך לבצע את המשימות הבאות.
קבלת ההרשאות הנדרשות
כדי לקבל את ההרשאות שנדרשות לניהול תבניות של Model Armor, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM Model Armor Admin (roles/modelarmor.admin) בפרויקט שכולל את תבנית Model Armor.
כדי לקרוא הסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
הפעלת ממשקי ה-API
כדי להשתמש ב-Model Armor, צריך להפעיל את Model Armor API.
המסוף
מפעילים את הגנה מוגברת על המודל API, אם הוא עדיין לא מופעל.
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק 'שימוש בשירות'' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםבוחרים את הפרויקט שבו רוצים להפעיל את הגנה מוגברת על המודל.
gcloud
לפני שמתחילים, צריך לבצע את השלבים הבאים באמצעות Google Cloud CLI עם Model Armor API:
במסוף Google Cloud , מפעילים את Cloud Shell.
בחלק התחתון של מסוף Google Cloud יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.
מפעילים את Model Armor API, אם הוא עדיין לא מופעל:
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud services enable modelarmor.googleapis.com
הגדרת שינוי מברירת המחדל של נקודת קצה ל-API באמצעות ה-CLI של gcloud
השלב הזה נחוץ רק אם משתמשים ב-CLI של gcloud עם Model Armor ורוצים להשתמש באזור או במספר אזורים שונים מאזור ברירת המחדל us. כדי לוודא שה-CLI של gcloud מנתב את הבקשות לשירות Model Armor בצורה נכונה, צריך להגדיר ידנית את החלפת נקודת הקצה של ה-API.
מריצים את הפקודה הבאה כדי להגדיר את נקודת קצה ל-API לשירות הגנה מוגברת על המודל.
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"
מחליפים את LOCATION באזור או במספר אזורים שבהם רוצים להשתמש ב-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, בוחרים את מספר גרסת המסנן או את הכינוי של גרסת המסנן.
בוחרים את אופן הפעולה כדי לציין אם רוצים לסנן טקסט, תמונות או את שניהם.
בקטע זיהויים, מגדירים את הגדרות הזיהוי.
אופציונלי: אם בוחרים באפשרות Sensitive Data Protection detection (זיהוי Sensitive Data Protection), צריך להגדיר את ההגדרות של Sensitive Data Protection.
בקטע Responsible AI, מגדירים את רמת הסמך לכל מסנן תוכן.
אופציונלי: מרחיבים את הקטע Additional configurations (optional) וקובעים את ההגדרות הבאות:
- בקטע Configure logging (הגדרת רישום ביומן), בוחרים את הפעולות שרוצים להגדיר עבורן רישום ביומן.
- בקטע תמיכה בכמה שפות, בוחרים באפשרות הפעלת תמיכה בכמה שפות כדי להשתמש בזיהוי של כמה שפות.
- בקטע במצב אכיפה, בוחרים סוג אכיפה.
לוחצים על יצירה.
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), שבה אתם מגדירים מה אתם רוצים לזהות. בדוגמה הזו, המסננים של אתיקה של בינה מלאכותית מוגדרים לדברי שטנה, הטרדה, תוכן מסוכן ותוכן מיני בוטה עם רמות סמך שונות. המסנן החדרת פרומפטים וזיהוי פריצת Jailbreak מופעל ברמת סמך של 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 שלא מתארחת בסמכות השיפוט שחלה על האזור של התבנית מושבתת. אכיפת התאימות של מיקום אחסון הנתונים מונעת מהנתונים לצאת מתחום השיפוט שלהם.
בתבניות שבהן יש עדיפות לסינון אבטחה מקיף על פני מיקום אחסון הנתונים מחמיר, אפשר להשבית את האכיפה של מיקום אחסון הנתונים לגבי נתונים שנמצאים בשימוש ונתונים בהעברה. כדי לעשות את זה, משביתים את האפשרות Enforce data residency במסוףGoogle Cloud או מגדירים את data_residency_compliant לערך false באמצעות Model Armor API. הנתונים באחסון ממשיכים לעמוד בדרישות של מיקום אחסון הנתונים, בלי קשר למצב של האפשרות הזו.
כשמשביתים את התאימות למיקום אחסון הנתונים בתבנית, מאפשרים ניתוב של הנתונים בין סמכויות שיפוט שונות. כלומר, יכול להיות שהבקשות ינותבו לסמכויות שיפוט אחרות אם תכונות מסוימות לא זמינות באופן מקומי בסמכות השיפוט של התבנית.
השבתת התאימות לדרישות בנושא מיקום אחסון הנתונים מאפשרת להשתמש בכל התכונות של הגנה מוגברת על המודל, חוץ מהמודליות של התמונות, שעדיין מוגבלת למספר אזורים ב-us וב-eu.
בחירת גרסת מסנן
גרסאות המסננים של Model Armor מספקות איזון בין היציבות של עומסי העבודה בסביבת הייצור לבין הגישה למודלים המעודכנים של זיהוי האיומים. הגדרת גרסת המסנן מתבצעת ברמת התבנית. גרסת המסנן חלה על כל המסננים בתבנית, למעט אלה שמפורטים בקטע מסננים שלא משתמשים בגרסאות מסנן. מידע נוסף זמין במאמר בנושא הגדרת גרסת המסנן לתבנית.
בחירת אופן הפעולה
אתם יכולים להשתמש במודליות כדי לציין אם אתם רוצים לסרוק את הדברים הבאים:
- הכול: סריקת טקסט ותמונות.
- אמצעי תחבורה ספציפיים:
- טקסט: סריקה של מחרוזות טקסט וטקסט שמוטמע בפורמטים נתמכים של קבצים.
- תמונה: סורק תמונות.
מידע נוסף זמין במאמרים בנושא סינון תמונות וניקוי הנחיות שמכילות תמונות.
הגדרת זיהויים
זיהויים הם הבדיקות הספציפיות ש-Model Armor מבצע בפרומפטים ובתשובות. Model Armor מציע מערכת גמישה להגדרת זיהויים, שמאפשרת להתאים אישית את רמת ההגנה על אפליקציות ה-AI. מגדירים את זיהויים כשיוצרים תבניות. Model Armor מבצע את בדיקות הזיהוי הבאות בהנחיות ובתשובות:
זיהוי כתובות URL זדוניות: זיהוי כתובות אינטרנט (URL) שנועדו לפגוע במשתמשים או במערכות. יכול להיות שכתובות ה-URL האלה יובילו לאתרי פישינג, להורדות של תוכנות זדוניות או למתקפות סייבר אחרות. מידע נוסף זמין במאמר זיהוי כתובות URL זדוניות.
זיהוי של החדרת פרומפטים ופריצה: זיהוי של תוכן זדוני וניסיונות פריצה בפרומפט. מומלץ להגדיר את רמת הסמך לערך High כדי לצמצם את מספר התוצאות החיוביות הכוזבות ולוודא שהזיהוי עקבי. למרות שהגדרת רמת הסמך ל-High מפחיתה את שיעור התוצאות החיוביות הכוזבות, עדיין יכול להיות שתקבלו תוצאות חיוביות כוזבות במקרים נדירים. מידע נוסף זמין במאמר זיהוי של החדרת פרומפטים ופריצה.
Sensitive Data Protection: מזהה מידע אישי רגיש ועוזר למנוע חשיפה מקרית שלו כתוצאה ממתקפות כמו החדרת פרומפטים. מידע נוסף זמין במאמר בנושא Sensitive Data Protection.
קביעת הגדרות של Sensitive Data Protection
Model Armor משתמש ב-Sensitive Data Protection כדי לזהות מידע אישי רגיש באינטראקציות עם מודלים של LLM ולמנוע את החשיפה שלו. מידע נוסף זמין במאמר בנושא הגנה על נתונים רגישים.
ב-Model Armor יש שני מצבים להגדרת Sensitive Data Protection:
Basic: גישה פשוטה יותר שמשתמשת בסוגי מידע מוגדרים מראש כדי לזהות מידע רגיש. מידע נוסף על סוגי המידע המוגדרים מראש זמין במאמר בנושא הגדרה בסיסית של Sensitive Data Protection.
מתקדם: אפשרות עם יותר הגדרות אישיות, שמשתמשת בתבנית בדיקה שמוגדרת בשירות Sensitive Data Protection כמקור יחיד ל-infoTypes של מידע אישי רגיש.
אם בוחרים במצב מתקדם, צריך לציין את הפרמטרים הבאים:
תבנית בדיקה: תבניות לשמירת פרטי ההגדרות של משימות סריקה לבדיקה, כולל הגלאים המוגדרים מראש או המותאמים אישית שבהם צריך להשתמש. מזינים את שם התבנית בפורמט הבא:
projects/projectId/locations/locationId/inspectTemplates/templateNameאופציונלי: De-identify template: תבניות לשמירת פרטי ההגדרות של משימות להסרת פרטים מזהים, כולל טרנספורמציות של infoType ושל מערכי נתונים מובְנים. מזינים מזהה לתבנית של הסרת פרטים מזהים בפורמט הבא:
projects/projectId/locations/locationId/deidentifyTemplates/templateName
מוודאים שקיימות תבנית הבדיקה ותבנית הסרת פרטי הזיהוי ב-Sensitive Data Protection. אם התבנית נמצאת בפרויקט אחר, צריך להעניק לסוכן השירות של Model Armor את התפקיד 'משתמש DLP' (roles/dlp.user) ואת התפקיד 'קורא DLP' (roles/dlp.reader) בפרויקט הזה.
הגדרת רמת הסמך
רמת הסמך מייצגת את הסבירות שהממצאים תואמים לסוג של מסנן תוכן. אפשר להגדיר את רמת הסמך לכל מסנן תוכן. הערכים האפשריים הם:
- ללא: לא זוהה תוכן.
- נמוכה ומעלה: התוכן מזוהה ברמת סמך נמוכה, בינונית או גבוהה.
- בינוני ומעלה: התוכן מזוהה ברמת מהימנות בינונית או גבוהה.
- גבוהה: התוכן מזוהה ברמת אמינות גבוהה.
כדי להקשיח את האכיפה, מגדירים את רמת הביטחון לנמוכה ומעלה כדי לזהות את רוב התוכן שמשתייך לסוג של מסנן תוכן.
כדי להפעיל רישום מקיף ביומן בתבנית, אפשר לעיין במאמר 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 | ספירה | INSPECT_AND_BLOCK |
הגדרה של סוג האכיפה. משתמשים באחד מהערכים הבאים:
|
| log_template_operations | בוליאני | לא נכון | הגדרה שמאפשרת רישום ביומן של פעולות שקשורות לתבניות. |
| log_sanitize_operations | בוליאני | לא נכון | הגדרה שמאפשרת רישום ביומן של פעולות ניקוי. |
| multiLanguageDetection | בוליאני | לא נכון | ההגדרה הזו מאפשרת זיהוי של כמה שפות. |
| modalities (תצוגה מקדימה) | ספירה | ריק | קובעת אם לסרוק טקסט, תמונות או את שניהם. אם משאירים את השדה הזה ריק, המערכת סורקת רק טקסט.
משתמשים באחד מהערכים הבאים:
|
| data_residency_compliant | בוליאני | True |
מציין אם התבנית כפופה לתאימות קפדנית למיקום אחסון הנתונים (עיבוד בתחום השיפוט).
מידע נוסף על השדה הזה מופיע בקטע הגדרת תאימות למיקום אחסון הנתונים במאמר הזה. מידע נוסף על מיקום אחסון הנתונים של תבניות זמין במאמר אכיפת מיקום אחסון הנתונים של תבניות. |
המאמרים הבאים
- מידע ולמידה על הגנה מוגברת על המודל
- מידע נוסף על הגדרות הסף של Model Armor
- הסרת תוכן זדוני או רגיש מפרומפטים ותשובות.
- פתרון בעיות ב-Model Armor