Setelan keamanan

Ringkasan

Panduan ini menjelaskan setelan keamanan PaLM API yang dapat disesuaikan yang tersedia untuk layanan teks. Selama tahap pembuatan prototipe, Anda dapat menyesuaikan setelan keamanan pada enam dimensi untuk menilai dengan cepat apakah aplikasi Anda memerlukan konfigurasi yang lebih atau kurang ketat. Secara default, setelan keamanan akan memblokir konten yang memiliki kemungkinan sedang dan/atau tinggi sebagai konten yang tidak aman di keenam dimensi. Keamanan dasar pengukuran ini dirancang agar berfungsi untuk sebagian besar kasus penggunaan, sehingga Anda sebaiknya hanya menyesuaikan setelan keamanan jika diperlukan secara konsisten untuk aplikasi Anda.

Filter keamanan

Selain filter keamanan yang dapat disesuaikan, PaLM API memiliki perlindungan bawaan terhadap bahaya inti, seperti konten yang membahayakan keselamatan anak. Jenis bahaya ini selalu diblokir dan tidak dapat disesuaikan.

Filter keamanan yang dapat disesuaikan mencakup kategori berikut:

  • Penghinaan
  • Toksik
  • Seksual
  • Kekerasan
  • Medis
  • Berbahaya

Setelan ini memungkinkan Anda, sebagai developer, menentukan setelan yang sesuai untuk kasus penggunaan Anda. Misalnya, jika Anda membuat dialog video game, Anda mungkin merasa tidak keberatan untuk mengizinkan lebih banyak konten yang dinilai sebagai kekerasan atau berbahaya karena sifat game. Berikut beberapa contoh kasus penggunaan lain yang mungkin memerlukan fleksibilitas dalam setelan keamanan ini:

Kasus Penggunaan Kategori
Aplikasi Pelatihan Anti-Pelecehan Menghina, Seksual, Negatif
Studi Ujian Medis Medis
Penulis Skenario Kekerasan, Seksual, Medis, Berbahaya
Pengklasifikasi toksisitas Negatif, Menghina

Probabilitas vs tingkat keparahan

PaLM API memblokir konten berdasarkan probabilitas konten tidak aman dan bukan tingkat keparahannya. Hal ini penting untuk dipertimbangkan karena beberapa konten mungkin memiliki probabilitas rendah sebagai konten yang tidak aman, meskipun tingkat keparahan bahayanya masih tinggi. Misalnya, membandingkan kalimat:

  1. Robot itu memukul saya.
  2. Robot itu menebas saya.

Kalimat 1 dapat mengakibatkan kemungkinan tindakan tidak aman yang lebih tinggi, tetapi Anda dapat menganggap kalimat 2 sebagai tingkat keseriusan yang lebih tinggi dalam hal kekerasan.

Oleh karena itu, penting bagi setiap developer untuk menguji dan mempertimbangkan dengan cermat tingkat pemblokiran yang diperlukan untuk mendukung kasus penggunaan utama mereka sekaligus meminimalkan bahaya bagi pengguna akhir.

Setelan Keamanan

Setelan keamanan adalah bagian dari permintaan yang Anda kirim ke layanan teks. Nilai ini dapat disesuaikan untuk setiap permintaan yang Anda buat ke API. Tabel berikut mencantumkan kategori yang dapat Anda tetapkan dan menjelaskan jenis bahaya yang tercakup dalam setiap kategori.

Kategori Deskripsi
Penghinaan Komentar negatif atau berbahaya yang menargetkan atribut identitas dan/atau dilindungi.
Toksik Konten yang kasar, tidak sopan, atau tidak senonoh.
Seksual Berisi referensi ke tindakan seksual atau konten cabul lainnya.
Kekerasan Menjelaskan skenario yang menggambarkan kekerasan terhadap individu atau kelompok, atau deskripsi umum tentang adegan menyeramkan.
Berbahaya Mempromosikan, memfasilitasi, atau mendorong tindakan berbahaya.
Medis Konten yang terkait dengan topik medis

Anda juga dapat melihat definisi ini di referensi API.

Tabel berikut menjelaskan setelan pemblokiran yang dapat Anda sesuaikan untuk setiap kategori. Misalnya, jika Anda menetapkan setelan blokir ke Block few untuk kategori Penghinaan, semua konten yang kemungkinan besar merupakan konten penghinaan akan diblokir. Tetapi apa pun yang memiliki probabilitas lebih rendah diperbolehkan.

Jika tidak disetel, setelan blokir default adalah Blokir beberapa atau Blokir paling banyak, bergantung pada kategori kebijakan.

Nilai minimum (Google AI Studio) Ambang batas (API) Deskripsi
Jangan blokir apa pun BLOCK_NONE Selalu tampilkan terlepas dari kemungkinan adanya konten yang tidak aman
Blokir beberapa BLOCK_ONLY_HIGH Blokir jika kemungkinan besar ada konten tidak aman
Blokir beberapa (Default untuk seksual, kekerasan, berbahaya, dan medis) BLOCK_MEDIUM_AND_ABOVE Blokir jika kemungkinan adanya konten tidak aman sedang atau tinggi
Blokir sebagian besar (Default untuk Penghinaan dan toksisitas) BLOCK_LOW_AND_ABOVE Blokir jika kemungkinan konten tidak aman rendah, sedang, atau tinggi
HARM_BLOCK_THRESHOLD_UNSPECIFIED Nilai minimum tidak ditentukan, blokir menggunakan nilai minimum default

Anda dapat menetapkan setelan ini untuk setiap permintaan yang dibuat ke layanan teks. Lihat referensi API HarmBlockThreshold untuk mengetahui detailnya.

Masukan keamanan

Jika konten diblokir, respons dari API akan berisi alasan konten diblokir di kolom ContentFilter.reason. Jika alasannya berkaitan dengan keamanan, respons juga berisi kolom SafetyFeedback yang mencakup setelan keamanan yang digunakan untuk permintaan tersebut serta rating keamanan. Peringkat keamanan mencakup kategori dan probabilitas klasifikasi bahaya. Konten yang diblokir tidak akan ditampilkan.

Probabilitas yang ditampilkan sesuai dengan tingkat keyakinan blok seperti yang ditunjukkan dalam tabel berikut:

Probability Deskripsi
DAPAT DITANGGUHKAN Sangat kecil kemungkinan konten tersebut dianggap tidak aman
RENDAH Kemungkinan kecil konten tidak aman
SEDANG Konten kemungkinan besar tidak aman
TINGGI Konten sangat berpotensi tidak aman

Misalnya, jika konten diblokir karena kategori toksisitas memiliki probabilitas tinggi, rating keamanan yang ditampilkan akan memiliki kategori yang sama dengan TOXICITY dan probabilitas bahaya yang ditetapkan ke HIGH.

Setelan keamanan di Google AI Studio

Anda juga dapat menetapkan setelan ini di Google AI Studio. Di Run settings, klik Edit safety settings:

Tombol setelan keamanan

Dan gunakan kenop untuk menyesuaikan setiap setelan:

Tombol setelan keamanan

Pesan Tidak Ada Konten akan muncul jika konten diblokir. Untuk melihat detail selengkapnya, arahkan kursor ke Tidak Ada Konten, lalu klik Keamanan.

Contoh kode

Bagian ini menunjukkan cara menggunakan setelan keamanan dalam kode menggunakan library klien Python.

Contoh permintaan

Berikut adalah cuplikan kode Python yang menunjukkan cara menetapkan setelan keamanan dalam panggilan GenerateText Anda. Hal ini menetapkan kategori bahaya Derogatory dan Violence ke BLOCK_LOW_AND_ABOVE yang memblokir konten apa pun yang memiliki kemungkinan rendah atau lebih tinggi untuk melakukan kekerasan atau penghinaan.

completion = genai.generate_text(
    model=model,
    prompt=prompt,
    safety_settings=[
        {
            "category": safety_types.HarmCategory.HARM_CATEGORY_DEROGATORY,
            "threshold": safety_types.HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
        },
        {
            "category": safety_types.HarmCategory.HARM_CATEGORY_VIOLENCE,
            "threshold": safety_types.HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
        },
    ]
)

Contoh respons

Berikut ini cuplikan kode untuk mengurai masukan keamanan dari respons. Perhatikan bahwa masukan keamanan akan kosong kecuali jika alasan pemblokiran adalah salah satu dimensi keamanan.

# First check the content filter reason
for filter in completion.filters:
    print(filter["reason"])

# If any of the reason is "safety", then the safety_feedback field will be
# populated
for feedback in completion.safety_feedback:
    print(feedback["rating"])
    print(feedback["setting"])s

Langkah berikutnya

  • Lihat referensi API untuk mempelajari API lengkap lebih lanjut.
  • Tinjau panduan keamanan untuk memahami secara umum pertimbangan keamanan 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.