Gemini API menyediakan setelan keamanan yang dapat Anda sesuaikan selama tahap pembuatan prototipe untuk menentukan apakah aplikasi Anda memerlukan konfigurasi keamanan yang lebih ketat atau longgar. Anda dapat menyesuaikan setelan ini di empat kategori filter untuk membatasi atau mengizinkan jenis konten tertentu.
Panduan ini membahas cara Gemini API menangani setelan dan pemfilteran keamanan serta cara mengubah setelan keamanan untuk aplikasi Anda.
Filter keamanan
Filter keamanan Gemini API yang dapat disesuaikan mencakup kategori berikut:
| Kategori | Deskripsi |
|---|---|
| Pelecehan | Komentar negatif atau berbahaya yang menargetkan identitas dan/atau atribut yang dilindungi. |
| Ujaran kebencian | Konten yang kasar, tidak sopan, atau tidak senonoh. |
| Seksual vulgar | Berisi referensi ke tindakan seksual atau konten cabul lainnya. |
| Berbahaya | Mempromosikan, memfasilitasi, atau mendorong tindakan berbahaya. |
Kategori ini ditentukan dalam HarmCategory. Anda
dapat menggunakan filter ini untuk menyesuaikan hal yang relevan dengan kasus penggunaan Anda. Misalnya, jika Anda membuat dialog video game, Anda mungkin menganggapnya wajar untuk mengizinkan lebih banyak konten dengan peringkat Berbahaya karena karakteristik game itu sendiri.
Selain filter keamanan yang dapat disesuaikan, Gemini API memiliki perlindungan bawaan terhadap bahaya mendasar, seperti konten yang membahayakan keselamatan anak. Jenis bahaya ini selalu diblokir dan tidak dapat disesuaikan.
Tingkat pemfilteran keamanan konten
Gemini API mengategorikan tingkat probabilitas konten yang tidak aman sebagai
HIGH, MEDIUM, LOW, atau NEGLIGIBLE.
Gemini API memblokir konten berdasarkan probabilitas konten tidak aman, bukan tingkat keparahannya. Hal ini penting untuk dipertimbangkan karena beberapa konten memiliki kemungkinan rendah untuk dianggap tidak aman, meskipun tingkat keparahan bahayanya masih tinggi. Misalnya, membandingkan kalimat:
- Robot itu memukul saya.
- Robot itu menebas saya.
Kalimat pertama dapat menyebabkan kemungkinan konten tidak aman yang lebih tinggi, tetapi Anda dapat menganggap kalimat kedua sebagai tingkat keparahan yang lebih tinggi dalam hal kekerasan. Oleh karena itu, penting bagi Anda untuk menguji dengan cermat dan mempertimbangkan tingkat pemblokiran yang sesuai yang diperlukan untuk mendukung kasus penggunaan utama Anda sekaligus meminimalkan bahaya bagi pengguna akhir.
Pemfilteran keamanan per permintaan
Anda dapat menyesuaikan setelan keamanan untuk setiap permintaan yang Anda buat ke API. Saat
Anda membuat permintaan, konten akan dianalisis dan diberi rating keamanan. Peringkat
keamanan mencakup kategori dan probabilitas klasifikasi bahaya. Misalnya, jika konten diblokir karena kategori pelecehan memiliki probabilitas tinggi, peringkat keamanan yang ditampilkan akan memiliki kategori yang sama dengan HARASSMENT dan probabilitas bahaya yang ditetapkan ke HIGH.
Karena keamanan bawaan model, filter tambahan Dinonaktifkan secara default. Jika Anda memilih untuk mengaktifkannya, Anda dapat mengonfigurasi sistem untuk memblokir konten berdasarkan kemungkinan konten tersebut tidak aman. Perilaku model default mencakup sebagian besar kasus penggunaan, sehingga Anda hanya perlu menyesuaikan setelan ini jika memiliki kebutuhan yang konsisten untuk aplikasi Anda.
Tabel berikut menjelaskan setelan pemblokiran yang dapat Anda sesuaikan untuk setiap kategori. Misalnya, jika Anda menyetel setelan pemblokiran ke Block few untuk kategori Hate speech, semua konten yang memiliki probabilitas tinggi sebagai ujaran kebencian akan diblokir. Namun, apa pun dengan probabilitas yang lebih rendah diizinkan.
| Nilai minimum (Google AI Studio) | Nilai minimum (API) | Deskripsi |
|---|---|---|
| Nonaktif | OFF |
Menonaktifkan filter keamanan |
| Block none | BLOCK_NONE |
Selalu tampilkan terlepas dari probabilitas konten tidak aman |
| Blokir beberapa | BLOCK_ONLY_HIGH |
Blokir jika probabilitas konten tidak aman tinggi |
| Blokir beberapa | BLOCK_MEDIUM_AND_ABOVE |
Blokir jika probabilitas konten tidak aman sedang atau tinggi |
| Memblokir sebagian besar | BLOCK_LOW_AND_ABOVE |
Blokir jika ada probabilitas rendah, sedang, atau tinggi konten tidak aman |
| T/A | HARM_BLOCK_THRESHOLD_UNSPECIFIED |
Batas minimum tidak ditentukan, blokir menggunakan batas minimum default |
Jika nilai minimum tidak ditetapkan, nilai minimum pemblokiran default adalah Nonaktif untuk model Gemini 2.5 dan 3.
Anda dapat menetapkan setelan ini untuk setiap permintaan yang Anda buat ke layanan generatif.
Lihat referensi HarmBlockThreshold API
untuk mengetahui detailnya.
Masukan keselamatan
generateContent
menampilkan
GenerateContentResponse yang
mencakup masukan keamanan.
Masukan cepat disertakan dalam
promptFeedback. Jika
promptFeedback.blockReason disetel, konten perintah akan diblokir.
Masukan kandidat respons disertakan dalam
Candidate.finishReason dan
Candidate.safetyRatings. Jika konten respons diblokir dan finishReason adalah SAFETY, Anda dapat memeriksa
safetyRatings untuk mengetahui detail selengkapnya. Konten yang diblokir tidak ditampilkan.
Menyesuaikan setelan keamanan
Bagian ini membahas cara menyesuaikan setelan keamanan di Google AI Studio dan dalam kode Anda.
Google AI Studio
Anda dapat menyesuaikan setelan keamanan di Google AI Studio.
Klik Setelan keamanan di bagian Setelan lanjutan di panel Setelan jalankan untuk membuka modal Jalankan setelan keamanan. Di modal, Anda dapat menggunakan penggeser untuk menyesuaikan tingkat pemfilteran konten per kategori keamanan:
Saat Anda mengirim permintaan (misalnya, dengan mengajukan pertanyaan kepada model), pesan Konten diblokir akan muncul jika konten permintaan diblokir. Untuk melihat detail selengkapnya, arahkan kursor ke teks Konten diblokir untuk melihat kategori dan probabilitas klasifikasi bahaya.
Contoh kode
Cuplikan kode berikut menunjukkan cara menyetel setelan keamanan dalam panggilan
GenerateContent Anda. Tindakan ini menetapkan batas untuk kategori ujaran kebencian
(HARM_CATEGORY_HATE_SPEECH). Menetapkan kategori ini ke
BLOCK_LOW_AND_ABOVE akan memblokir konten apa pun yang memiliki probabilitas rendah atau lebih tinggi sebagai ujaran kebencian. Untuk memahami setelan nilai minimum, lihat Pemfilteran keamanan per permintaan.
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.'\''"
}]
}]
}'
Langkah berikutnya
- Lihat referensi API untuk mempelajari lebih lanjut API lengkap.
- Tinjau panduan keselamatan untuk melihat secara umum pertimbangan keselamatan saat mengembangkan dengan LLM.
- Pelajari lebih lanjut cara menilai probabilitas versus tingkat keparahan dari tim Jigsaw
- Pelajari lebih lanjut produk yang berkontribusi pada solusi keamanan seperti Perspective API. * Anda dapat menggunakan setelan keamanan ini untuk membuat pengklasifikasi toksisitas. Lihat contoh klasifikasi untuk memulai.