Le impostazioni di base di Model Armor definiscono regole che stabiliscono i requisiti minimi per tutti i modelli Model Armor creati in un punto specifico della gerarchia delle risorse (ovvero a livello di organizzazione, cartella o progetto). Google Cloud Se sono presenti più impostazioni del piano in conflitto tra loro, hanno la precedenza le impostazioni più in basso nella gerarchia delle risorse. Ad esempio, se viene creato un criterio di impostazione del prezzo minimo a livello di cartella e progetto, verrà applicato il criterio a livello di progetto.
Ecco un esempio per mostrare come funziona un criterio di impostazione del pavimento di Model Armor. Il criterio X del piano è impostato su una cartella con il filtro URL dannosi attivato. Il criterio di base Y è impostato su un progetto all'interno di questa cartella per il filtro di rilevamento di prompt injection e jailbreak con una soglia di confidenza media. Il risultato è che ogni modello Model Armor creato nel progetto deve avere almeno il filtro di rilevamento dell'iniezione di prompt e del jailbreak impostato con una soglia di confidenza media. Un modello creato in una cartella diversa dalla cartella principale di questo progetto non richiede il filtro URI dannosi.
Le impostazioni di base aiutano i CISO e gli architetti della sicurezza a imporre una postura di sicurezza minima in tutti i modelli Model Armor all'interno della loro organizzazione, impedendo agli sviluppatori individuali di abbassare accidentalmente o intenzionalmente gli standard di sicurezza al di sotto dei livelli accettabili. Per i clienti con un livello Premium o Enterprise di Security Command Center, le violazioni dell'impostazione del pavimento attivano i risultati. Ciò significa che se un modello viene creato prima di un'impostazione di base e il modello ha impostazioni meno restrittive, in Security Command Center verrà visualizzato un risultato per aiutarti a identificare e correggere i modelli Model Armor meno sicuri.
Attivare e disattivare le impostazioni di base di Model Armor
Per attivare le impostazioni di base di Model Armor, imposta il flag
enable_floor_setting_enforcement
su true
.
I seguenti esempi mostrano come farlo.
gcloud
Imposta l'endpoint Model Armor sul relativo endpoint globale.
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.googleapis.com/"
Attiva le impostazioni del pavimento di Model Armor per un progetto specifico.
gcloud model-armor floorsettings update \ --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \ --enable-floor-setting-enforcement=true
Attiva le impostazioni del pavimento di Model Armor per una determinata organizzazione.
gcloud model-armor floorsettings update \ --full-uri='organizations/ORGANIZATION_ID/locations/global/floorSetting' \ --enable-floor-setting-enforcement=true
Attiva le impostazioni di Model Armor per una determinata cartella.
gcloud model-armor floorsettings update \ --full-uri='folders/FOLDER_ID/locations/global/floorSetting' \ --enable-floor-setting-enforcement=true
Sostituisci quanto segue:
PROJECT_ID
è l'ID del progetto per il modello.FOLDER_ID
è l'ID della cartella del modello.ORGANIZATION_ID
è l'ID dell'organizzazione per il modello.
REST
curl -X PATCH -d '{"enable_floor_setting_enforcement" : "true"}' -H "Content-Type: application/json" -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting?update_mask=enable_floor_setting_enforcement"
Sostituisci PROJECT_ID
con l'ID del progetto per il modello.
Se non vuoi utilizzare le impostazioni del limite di Model Armor, imposta il flag filter_config
su empty
o il flag enable_floor_setting_enforcement
su false
.
gcloud
gcloud model-armor floorsettings get
--full-uri='projects/PROJECT_ID/locations/global/floorSetting'
Flags --full-uri = name of the floor setting resource
--enable-floor-setting-enforcement=false
--filterConfig = {}
Sostituisci PROJECT_ID
con l'ID del progetto per il modello.
curl -X PATCH
-H "Content-Type: application/json"
-H "Authorization: Bearer $(gcloud auth print-access-token)"
-d '{"filterConfig" :{},"enable_floor_setting_enforcement":"false"}'
"https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting"
Sostituisci PROJECT_ID
con l'ID del progetto per il modello.
Visualizzare le impostazioni del piano Model Armor
Esegui questo comando per visualizzare le impostazioni del piano di Model Armor.
gcloud
Visualizza l'impostazione di base di Model Armor per un determinato progetto.
gcloud model-armor floorsettings describe \ --full-uri='projects/PROJECT_ID/locations/global/floorSetting'
Visualizza l'impostazione del prezzo minimo di Model Armor per una determinata organizzazione.
gcloud model-armor floorsettings describe \ --full-uri='organizations/ORGANIZATION_ID/locations/global/floorSetting'
Visualizza l'impostazione del limite minimo di Model Armor per una determinata cartella.
gcloud model-armor floorsettings describe \ --full-uri='folders/FOLDER_ID/locations/global/floorSetting'
Sostituisci quanto segue:
PROJECT_ID
è l'ID del progetto per il modello.FOLDER_ID
è l'ID della cartella del modello.ORGANIZATION_ID
è l'ID dell'organizzazione per il modello.
REST
Visualizza l'impostazione di base di Model Armor per un determinato progetto.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting"
Visualizza l'impostazione del limite minimo di Model Armor per una determinata cartella.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://modelarmor.googleapis.com/v1/folders/FOLDER_ID/locations/global/floorSetting"
Visualizza l'impostazione del prezzo minimo di Model Armor per una determinata organizzazione.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://modelarmor.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/floorSetting"
Sostituisci quanto segue:
PROJECT_ID
è l'ID del progetto per il modello.FOLDER_ID
è l'ID della cartella del modello.ORGANIZATION_ID
è l'ID dell'organizzazione per il modello.
Python
Per eseguire questo comando, devi prima inizializzare un client Model Armor in Python.
Visualizza l'impostazione di base di Model Armor per un determinato progetto.
request = modelarmor_v1.GetFloorSettingRequest( floor_setting={ "name": "projects/PROJECT_ID/locations/global/floorSetting", } ) response = client.get_floor_setting(request=request)
Visualizza l'impostazione del limite minimo di Model Armor per una determinata cartella.
request = modelarmor_v1.GetFloorSettingRequest( floor_setting={ "name": "folders/FOLDER_ID/locations/global/floorSetting", } ) response = client.get_floor_setting(request=request)
Visualizza l'impostazione del prezzo minimo di Model Armor per una determinata organizzazione.
request = modelarmor_v1.GetFloorSettingRequest( floor_setting={ "name": "organizations/ORGANIZATION_ID/locations/global/floorSetting", } ) response = client.get_floor_setting(request=request)
Sostituisci quanto segue:
PROJECT_ID
è l'ID del progetto a cui appartiene il modello.FOLDER_ID
è l'ID della cartella del modello.ORGANIZATION_ID
è l'ID dell'organizzazione per il modello.
Aggiornare le impostazioni del pavimento di Model Armor
Esegui il comando seguente per aggiornare le impostazioni di Model Armor.
gcloud
gcloud model-armor floorsettings update --full-uri=<full-uri-of-the-floorsetting>
Comando di esempio:
gcloud model-armor floorsettings update \
--malicious-uri-filter-settings-enforcement=ENABLED \
--pi-and-jailbreak-filter-settings-enforcement=DISABLED \
--pi-and-jailbreak-filter-settings-confidence-level=LOW_AND_ABOVE \
--basic-config-filter-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "low_and_above", "filterType": "HARASSMENT"}, {"confidenceLevel": "high", "filterType": "SEXUALLY_EXPLICIT"}]'
--full-uri='folders/FOLDER_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=true
Sostituisci FOLDER_ID
con l'ID della cartella del modello.
REST
Aggiorna l'impostazione del piano Model Armor per un determinato progetto.
curl -X PATCH -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }, "rai_settings":{"rai_filters":{"filter_type":"DANGEROUS", "confidence_level":"LOW_AND_ABOVE" }, "rai_filters":{"filter_type":"HATE_SPEECH", "confidence_level":"LOW_AND_ABOVE" }, "rai_filters":{"filter_type":"HARASSMENT", "confidence_level":"LOW_AND_ABOVE" }, "rai_filters":{"filter_type":"SEXUALLY_EXPLICIT", "confidence_level":"LOW_AND_ABOVE" }}},"enable_floor_setting_enforcement":"true"}' -H "Content-Type: application/json" -H "Authorization: Bearer $(gcloud auth print-access-token) "https://modelarmor.googleapis.com/v1/projects/PROJECT_ID/locations/global/floorSetting"
Aggiorna l'impostazione del pavimento di Model Armor per una determinata cartella.
curl -X PATCH \ -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }},"enable_floor_setting_enforcement":"true"}' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://modelarmor.googleapis.com/v1/folders/FOLDER_ID/locations/global/floorSetting"
Aggiorna l'impostazione del piano Model Armor per una determinata organizzazione.
curl -X PATCH \ -d '{"filterConfig" :{"piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED"}, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" }},"enable_floor_setting_enforcement":"true"}' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://modelarmor.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/floorSetting"
Sostituisci quanto segue:
PROJECT_ID
è l'ID del progetto per il modello.FOLDER_ID
è l'ID della cartella del modello.ORGANIZATION_ID
è l'ID dell'organizzazione per il modello.
Il comando di aggiornamento restituisce la seguente risposta:
{ "name": "projects/PROJECT_ID/locations/global/floorSetting", "updateTime": "2024-12-19T15:36:21.318191Z", "filterConfig": { "piAndJailbreakFilterSettings": { "filterEnforcement": "ENABLED" }, "maliciousUriFilterSettings": { "filterEnforcement": "ENABLED" } } }
Python
Per eseguire questo comando, devi prima inizializzare un client Model Armor in Python.
Aggiorna l'impostazione del piano Model Armor per un determinato progetto.
request = modelarmor_v1.UpdateFloorSettingRequest( floor_setting={ "name": "projects/PROJECT_ID/locations/global/floorSetting", "filter_config": FILTER_CONFIG, "enable_floor_setting_enforcement": True } ) response = client.update_floor_setting(request=request)
Aggiorna l'impostazione del pavimento di Model Armor per una determinata cartella.
request = modelarmor_v1.UpdateFloorSettingRequest( floor_setting={ "name": "folders/FOLDER_ID/locations/global/floorSetting", "filter_config": FILTER_CONFIG "enable_floor_setting_enforcement": True } ) response = client.update_floor_setting(request=request)
Aggiorna l'impostazione del piano Model Armor per una determinata organizzazione.
request = modelarmor_v1.UpdateFloorSettingRequest( floor_setting={ "name": "organizations/ORGANIZATION_ID/locations/global/floorSetting", "filter_config": FILTER_CONFIG "enable_floor_setting_enforcement": True } ) response = client.update_floor_setting(request=request)
Sostituisci quanto segue:
FILTER_CONFIG
è la configurazione del filtro per il modello.PROJECT_ID
è l'ID del progetto a cui appartiene il modello.FOLDER_ID
: è l'ID della cartella del modello.ORGANIZATION_ID
è l'ID dell'organizzazione per il modello.
Violazione delle impostazioni di base
Ogni risultato del servizio Model Armor identifica una violazione delle impostazioni di base che si verifica quando un modello Model Armor non soddisfa gli standard di sicurezza minimi definiti dalle impostazioni di base della gerarchia delle risorse. Le impostazioni di base determinano il livello meno rigoroso consentito per ogni filtro all'interno di un modello. Una violazione dell'impostazione di base potrebbe riguardare un modello che non include i filtri obbligatori o non soddisfa il livello di confidenza minimo per questi filtri. Quando viene rilevata una violazione, in Security Command Center viene pubblicato un risultato di gravità elevata. Il risultato specifica l'impostazione di base violata, il modello non conforme e i dettagli della violazione. Per saperne di più, consulta Risultati del servizio Model Armor.
Questo è un esempio del campo source_properties del risultato all'interno della violazione delle impostazioni di base.
{ "filterConfig": { "raiSettings": { "raiFilters": [ { "filterType": "HATE_SPEECH", "confidenceLevel": { "floorSettings": "LOW_AND_ABOVE", "template": "MEDIUM_AND_ABOVE" } }, { "filterType": "HARASSMENT", "confidenceLevel": { "floorSettings": "MEDIUM_AND_ABOVE", "template": "HIGH" } } ] }, "piAndJailbreakFilterSettings": { "confidenceLevel": { "floorSettings": "LOW_AND_ABOVE", "template": "HIGH" } }, "maliciousUriFilterSettings": { "floorSettings": "ENABLED", "template": "DISABLED" } } }
Passaggi successivi
- Scopri di più sulla panoramica di Model Armor.
- Scopri di più sui modelli Model Armor.
- Sanitizza prompt e risposte.
- Risolvi i problemi di Model Armor.