Ustawienia bezpieczeństwa

Interfejs Gemini API udostępnia ustawienia bezpieczeństwa, które możesz dostosować na etapie prototypowania, aby określić, czy aplikacja wymaga bardziej czy mniej restrykcyjnej konfiguracji bezpieczeństwa. Możesz dostosować te ustawienia w poszczególnych kategoriach filtrów, aby ograniczyć lub zezwolić na określone typy treści.

Z tego przewodnika dowiesz się, jak ustawić ustawienia bezpieczeństwa w przypadku interakcji, co się dzieje, gdy treść jest blokowana, oraz z jakich kategorii i progów możesz korzystać.

Ustawianie ustawień bezpieczeństwa

Podczas tworzenia interakcji przekaż listę safety_settings. Każde ustawienie łączy kategorię szkodliwych treści (type) z progiem blokowania (threshold).

Poniższy przykład ustawia kategorię wypowiedzi szerzących nienawiść (hate_speech) na block_low_and_above, co blokuje wszystkie treści, które mają niskie lub wyższe prawdopodobieństwo bycia wypowiedzią szerzącą nienawiść:

Python

from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="gemini-3.8-flash",
    input="Some potentially unsafe prompt.",
    safety_settings=[
        {
            "type": "hate_speech",
            "threshold": "block_low_and_above",
        }
    ],
)

print(interaction.output_text)

JavaScript

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

const ai = new GoogleGenAI({});

async function main() {
  const interaction = await ai.interactions.create({
    model: "gemini-3.8-flash",
    input: "Some potentially unsafe prompt.",
    safety_settings: [
      {
        type: "hate_speech",
        threshold: "block_low_and_above",
      },
    ],
  });
  console.log(interaction.output_text);
}

await main();

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.HarmCategory;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.SafetySetting;
import com.google.genai.gaos.models.interactions.Threshold;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.List;

Client client = new Client();

SafetySetting hateSpeechSafety =
    SafetySetting.builder()
        .type(HarmCategory.HATE_SPEECH)
        .threshold(Threshold.BLOCK_LOW_AND_ABOVE)
        .build();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("gemini-3.8-flash"))
        .input(InteractionsInput.of("Some potentially unsafe prompt."))
        .safetySettings(List.of(hateSpeechSafety))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println(interaction.outputText().orElse(""));

Go

package main

import (
    "context"
    "fmt"
    "log"

    "google.golang.org/genai"
    "google.golang.org/genai/interactions/models/interactions"
    "google.golang.org/genai/interactions/models/operations"
)

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

    res, err := client.Interactions.Create(ctx, operations.CreateInteractionRequest{
        Body: operations.NewCreateInteractionRequestBody(interactions.CreateModelInteraction{
            Model: interactions.Model("gemini-3.8-flash"),
            Input: interactions.NewInteractionsInput("Some potentially unsafe prompt."),
            SafetySettings: []interactions.SafetySetting{
                {
                    Type:      interactions.HarmCategoryHateSpeech,
                    Threshold: interactions.ThresholdBlockLowAndAbove,
                },
            },
        }),
    })
    if err != nil {
        log.Fatal(err)
    }

    if res.Interaction.OutputText != nil {
        fmt.Println(*res.Interaction.OutputText)
    }
}

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -H "Api-Revision: 2026-05-20" \
  -d '{
    "model": "gemini-3.8-flash",
    "input": "Some potentially unsafe prompt.",
    "safety_settings": [
      {"type": "hate_speech", "threshold": "block_low_and_above"}
    ]
  }'

W każdej kategorii możesz uwzględnić 1 ustawienie. Kategorie, których nie ustawisz, będą używać domyślnego progu, który w przypadku modeli Gemini 2.5 i nowszych jest ustawiony na Wył..

Gdy treść jest blokowana

Jeśli filtr bezpieczeństwa zablokuje dane wejściowe lub odpowiedź modelu, interakcja zakończy się niepowodzeniem z błędem HTTP 400. Zablokowana treść nie jest zwracana.

code błędu informuje, dlaczego żądanie zostało zablokowane:

  • safety: dane wejściowe lub odpowiedź zostały zablokowane przez filtr bezpieczeństwa.
  • jailbreak, prohibited_content lub blocklist: dane wejściowe zostały zablokowane z tego powodu. message błędu zaczyna się od Input blocked:.

Na przykład:

{
  "error": {
    "code": "safety",
    "message": "Request blocked due to safety violations (harmful content). Please modify your input and retry."
  }
}

W przypadku interakcji w tle (background=true) status jest ustawiony na failed, a ten sam code i message pojawiają się na liście errors. W przypadku przesyłania strumieniowego błąd jest wysyłany jako zdarzenie error.

Filtry bezpieczeństwa

Dostosowywane filtry bezpieczeństwa Gemini API obejmują te kategorie:

Kategoria Wartość (API) Opis
Nękanie harassment Treści obraźliwe, groźne lub mające na celu zastraszanie, dręczenie lub wyśmiewanie.
Szerzenie nienawiści hate_speech Treści, które promują przemoc lub podżegają do nienawiści wobec osób lub grup na podstawie określonych cech.
Treści o charakterze jednoznacznie seksualnym sexually_explicit Treści zawierające materiały o charakterze jednoznacznie seksualnym.
Treści niebezpieczne dangerous_content Treści, które promują, ułatwiają lub umożliwiają podejmowanie niebezpiecznych działań.
Jailbreak jailbreak Prompty zaprojektowane w celu obejścia filtrów bezpieczeństwa.

Za pomocą tych filtrów możesz dostosować, co jest odpowiednie w Twoim przypadku użycia. Jeśli na przykład tworzysz dialogi w grze wideo, możesz zezwolić na więcej treści ocenionych jako niebezpieczne ze względu na charakter gry.

Oprócz dostosowywanych filtrów bezpieczeństwa interfejs Gemini API ma wbudowane zabezpieczenia przed podstawowymi szkodami, takimi jak treści zagrażające bezpieczeństwu dzieci. Te rodzaje szkodliwych treści są zawsze blokowane i nie można ich dostosować.

Progi blokowania

Ze względu na wbudowane zabezpieczenia modelu dodatkowe filtry są domyślnie wyłączone. Domyślne działanie modelu obejmuje większość przypadków użycia, dlatego te ustawienia należy dostosowywać tylko wtedy, gdy jest to stale wymagane w Twojej aplikacji.

W tabeli poniżej opisujemy progi, które możesz ustawić w każdej kategorii. Jeśli na przykład ustawisz Wypowiedzi szerzące nienawiść na Blokuj niektóre (block_only_high), treści o wysokim prawdopodobieństwie bycia wypowiedzią szerzącą nienawiść zostaną zablokowane, a wszystkie inne treści zostaną dopuszczone.

Próg (Google AI Studio) Próg (API) Opis
Wył. off Wyłącz filtr bezpieczeństwa
Blokuj niektóre block_only_high Blokuj, gdy prawdopodobieństwo wystąpienia treści niebezpiecznych jest wysokie
Blokuj część block_medium_and_above Blokuj, gdy prawdopodobieństwo wystąpienia treści niebezpiecznych jest średnie lub wysokie
Blokuj większość block_low_and_above Blokuj, gdy prawdopodobieństwo wystąpienia treści niebezpiecznych jest niskie, średnie lub wysokie

Prawdopodobieństwo a stopień szkodliwości

Interfejs Gemini API ocenia prawdopodobieństwo, że treść jest niebezpieczna, jako wysokie, średnie, niskie lub znikome. Blokuje treści na podstawie tego prawdopodobieństwa, a nie stopnia szkodliwości. Niektóre treści mogą mieć niskie prawdopodobieństwo bycia niebezpiecznymi, mimo że mogą być bardzo szkodliwe. Porównaj na przykład te zdania:

  1. Robot mnie uderzył.
  2. Robot mnie pociął.

Pierwsze zdanie może mieć większe prawdopodobieństwo bycia niebezpiecznym, ale drugie może być bardziej szkodliwe. Przeprowadź dokładne testy, aby znaleźć poziom blokowania, który będzie odpowiedni dla Twojego przypadku użycia, a jednocześnie zminimalizuje szkody dla użytkowników.

Dostosowywanie ustawień bezpieczeństwa w Google AI Studio

Aby otworzyć okno Ustawienia bezpieczeństwa uruchamiania, w panelu Ustawienia uruchamiania kliknij Ustawienia bezpieczeństwa w sekcji Ustawienia zaawansowane. W oknie możesz użyć suwaków, aby dostosować poziom filtrowania treści w każdej kategorii bezpieczeństwa:

Gdy wyślesz żądanie (np. zadając modelowi pytanie), a jego treść zostanie zablokowana, pojawi się komunikatTreść zablokowana. Aby zobaczyć więcej szczegółów, najedź kursorem na tekst Treść zablokowana. Zobaczysz kategorię i prawdopodobieństwo klasyfikacji szkodliwych treści.

Dalsze kroki

  • Więcej informacji o pełnym interfejsie API znajdziesz w dokumentacji interfejsu Interactions API.
  • Zapoznaj się z wytycznymi dotyczącymi bezpieczeństwa, aby uzyskać ogólne informacje o kwestiach związanych z bezpieczeństwem podczas tworzenia aplikacji z użyciem LLM.
  • Więcej informacji o ocenie prawdopodobieństwa i stopnia szkodliwości znajdziesz w zespole Jigsaw team.
  • Dowiedz się więcej o produktach, które przyczyniają się do tworzenia rozwiązań w zakresie bezpieczeństwa, takich jak Perspective API.