Impostazioni di sicurezza

L'API Gemini fornisce impostazioni di sicurezza che puoi regolare durante la fase di prototipazione per determinare se la tua applicazione richiede una configurazione di sicurezza più o meno restrittiva. Puoi modificare queste impostazioni in quattro categorie di filtri per limitare o consentire determinati tipi di contenuti.

Questa guida spiega come l'API Gemini gestisce le impostazioni di sicurezza e il filtraggio e come puoi modificare le impostazioni di sicurezza per la tua applicazione.

filtri di sicurezza

I filtri di sicurezza regolabili dell'API Gemini coprono le seguenti categorie:

Categoria Descrizione
Molestie Commenti negativi o dannosi rivolti all'identità e/o agli attributi protetti.
Incitamento all'odio Contenuti scurrili, irrispettosi o profani.
Contenuti sessualmente espliciti Contiene riferimenti ad atti sessuali o ad altri contenuti osceni.
Contenuti pericolosi Promuove, facilita o incoraggia azioni dannose.

Queste categorie sono definite in HarmCategory. Puoi utilizzare questi filtri per regolare ciò che è appropriato per il tuo caso d'uso. Ad esempio, se stai creando dialoghi per videogiochi, potresti ritenere accettabile consentire più contenuti classificati come Pericolosi per via della natura del gioco.

Oltre ai filtri di sicurezza regolabili, l'API Gemini dispone di protezioni integrate contro i danni principali, come i contenuti che mettono in pericolo la sicurezza dei bambini. Questi tipi di contenuti dannosi vengono sempre bloccati e non possono essere modificati.

Livello di filtraggio della sicurezza dei contenuti

L'API Gemini classifica il livello di probabilità che i contenuti siano non sicuri come HIGH, MEDIUM, LOW o NEGLIGIBLE.

L'API Gemini blocca i contenuti in base alla probabilità che non siano sicuri e non alla gravità. È importante tenerlo presente perché alcuni contenuti possono avere una bassa probabilità di essere non sicuri, anche se la gravità del danno potrebbe essere comunque elevata. Ad esempio, confrontando le frasi:

  1. Il robot mi ha dato un pugno.
  2. Il robot mi ha tagliato.

La prima frase potrebbe avere una probabilità maggiore di essere considerata non sicura, ma potresti considerare la seconda frase più grave in termini di violenza. Per questo motivo, è importante testare e valutare attentamente il livello di blocco appropriato necessario per supportare i casi d'uso principali, riducendo al minimo i danni agli utenti finali.

Filtro di sicurezza per richiesta

Puoi regolare le impostazioni di sicurezza per ogni richiesta che invii all'API. Quando effettui una richiesta, i contenuti vengono analizzati e viene assegnata una classificazione di sicurezza. La valutazione di sicurezza include la categoria e la probabilità della classificazione del danno. Ad esempio, se i contenuti sono stati bloccati perché la categoria molestie ha una probabilità elevata, la valutazione di sicurezza restituita avrà la categoria uguale a HARASSMENT e la probabilità di danno impostata su HIGH.

A causa della sicurezza intrinseca del modello, i filtri aggiuntivi sono disattivati per impostazione predefinita. Se scegli di attivarli, puoi configurare il sistema in modo che blocchi i contenuti in base alla probabilità che siano non sicuri. Il comportamento predefinito del modello copre la maggior parte dei casi d'uso, per cui dovresti regolare queste impostazioni solo se è un requisito costante per la tua applicazione.

La tabella seguente descrive le impostazioni di blocco che puoi modificare per ogni categoria. Ad esempio, se imposti l'impostazione di blocco su Blocco ridotto per la categoria Incitamento all'odio, tutto ciò che ha un'alta probabilità di essere un contenuto di incitamento all'odio viene bloccato. Tuttavia, è consentito qualsiasi valore con una probabilità inferiore.

Soglia (Google AI Studio) Soglia (API) Descrizione
Off OFF Disattivare il filtro di sicurezza
Nessun blocco BLOCK_NONE Mostra sempre indipendentemente dalla probabilità che non sia sicuro
Blocco ridotto BLOCK_ONLY_HIGH Blocca quando c'è un'alta probabilità che non siano sicuri
Blocco limitato BLOCK_MEDIUM_AND_ABOVE Blocca i contenuti quando c'è una probabilità media o alta che non siano sicuri
Blocco esteso BLOCK_LOW_AND_ABOVE Blocca quando c'è una probabilità bassa, media o alta che non siano sicuri
N/D HARM_BLOCK_THRESHOLD_UNSPECIFIED Soglia non specificata, blocco con soglia predefinita

Se la soglia non è impostata, la soglia di blocco predefinita è Off per i modelli Gemini 2.5 e 3.

Puoi impostare queste impostazioni per ogni richiesta che invii al servizio generativo. Per i dettagli, consulta il riferimento API HarmBlockThreshold.

Feedback sulla sicurezza

generateContent restituisce un GenerateContentResponse che include feedback sulla sicurezza.

Il feedback sul prompt è incluso in promptFeedback. Se promptFeedback.blockReason è impostato, i contenuti del prompt sono stati bloccati.

Il feedback sui candidati per le risposte è incluso in Candidate.finishReason e Candidate.safetyRatings. Se i contenuti della risposta sono stati bloccati e finishReason era SAFETY, puoi esaminare safetyRatings per ulteriori dettagli. I contenuti bloccati non vengono restituiti.

Modificare le impostazioni di sicurezza

Questa sezione spiega come modificare le impostazioni di sicurezza in Google AI Studio e nel codice.

Google AI Studio

Puoi regolare le impostazioni di sicurezza in Google AI Studio.

Fai clic su Impostazioni di sicurezza in Impostazioni avanzate nel riquadro Impostazioni di esecuzione per aprire la finestra modale Impostazioni di sicurezza dell'esecuzione. Nel modale, puoi utilizzare i cursori per regolare il livello di filtro dei contenuti per categoria di sicurezza:

Quando invii una richiesta (ad esempio, ponendo una domanda al modello), viene visualizzato il messaggio Contenuti bloccati se i contenuti della richiesta sono bloccati. Per visualizzare altri dettagli, tieni il puntatore sopra il testo Contenuti bloccati per visualizzare la categoria e la probabilità di classificazione del danno.

Esempi di codice

Lo snippet di codice seguente mostra come impostare le impostazioni di sicurezza nella chiamata GenerateContent. In questo modo viene impostata la soglia per la categoria dell'incitamento all'odio (HARM_CATEGORY_HATE_SPEECH). Se imposti questa categoria su BLOCK_LOW_AND_ABOVE, blocchi tutti i contenuti che hanno una probabilità bassa o superiore di essere incitamento all'odio. Per comprendere le impostazioni della soglia, consulta Filtro di sicurezza per richiesta.

Python

from google import genai
from google.genai import types

client = genai.Client()

response = client.models.generate_content(
    model="gemini-3-flash-preview",
    contents="Some potentially unsafe prompt",
    config=types.GenerateContentConfig(
      safety_settings=[
        types.SafetySetting(
            category=types.HarmCategory.HARM_CATEGORY_HATE_SPEECH,
            threshold=types.HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
        ),
      ]
    )
)

print(response.text)

Go

package main

import (
    "context"
    "fmt"
    "log"
    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()
    client, err := genai.NewClient(ctx, nil)
    if err != nil {
        log.Fatal(err)
    }

    config := &genai.GenerateContentConfig{
        SafetySettings: []*genai.SafetySetting{
            {
                Category:  "HARM_CATEGORY_HATE_SPEECH",
                Threshold: "BLOCK_LOW_AND_ABOVE",
            },
        },
    }

    response, err := client.Models.GenerateContent(
        ctx,
        "gemini-3-flash-preview",
        genai.Text("Some potentially unsafe prompt."),
        config,
    )
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(response.Text())
}

JavaScript

import { GoogleGenAI } from "@google/genai";

const ai = new GoogleGenAI({});

const safetySettings = [
  {
    category: "HARM_CATEGORY_HATE_SPEECH",
    threshold: "BLOCK_LOW_AND_ABOVE",
  },
];

async function main() {
  const response = await ai.models.generateContent({
    model: "gemini-3-flash-preview",
    contents: "Some potentially unsafe prompt.",
    config: {
      safetySettings: safetySettings,
    },
  });
  console.log(response.text);
}

await main();

Java

SafetySetting hateSpeechSafety = new SafetySetting(HarmCategory.HATE_SPEECH,
    BlockThreshold.LOW_AND_ABOVE);

GenerativeModel gm = new GenerativeModel(
    "gemini-3-flash-preview",
    BuildConfig.apiKey,
    null, // generation config is optional
    Arrays.asList(hateSpeechSafety)
);

GenerativeModelFutures model = GenerativeModelFutures.from(gm);

REST

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-3-flash-preview:generateContent" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -X POST \
  -d '{
    "safetySettings": [
        {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_LOW_AND_ABOVE"}
    ],
    "contents": [{
        "parts":[{
            "text": "'\''Some potentially unsafe prompt.'\''"
        }]
    }]
}'

Passaggi successivi

  • Consulta il riferimento API per saperne di più sull'API completa.
  • Consulta le indicazioni di sicurezza per una panoramica generale delle considerazioni sulla sicurezza durante lo sviluppo con i LLM.
  • Scopri di più sulla valutazione della probabilità rispetto alla gravità dal team di Jigsaw
  • Scopri di più sui prodotti che contribuiscono a soluzioni di sicurezza come l'API Perspective. * Puoi utilizzare queste impostazioni di sicurezza per creare un classificatore di tossicità. Per iniziare, consulta l'esempio di classificazione.