Gemini API, sohbet sırasında düzenleyebileceğiniz güvenlik ayarları sağlar. uygulamanızın daha fazla mı yoksa daha az mı gerektirdiğini belirlemek için prototip oluşturma aşaması kısıtlayıcı güvenlik yapılandırması. Bu ayarları dört farklı filtre kategorilerini kullanarak belirli içerik türlerini kısıtlayabilir veya bunlara izin verebilirsiniz.
Bu kılavuzda, Gemini API'nin güvenlik ayarlarını ve filtrelemeyi nasıl işlediği ve uygulamanızın güvenlik ayarlarını nasıl değiştirebileceğinizi öğrenin.
Güvenlik filtreleri
Gemini API'nin ayarlanabilir güvenlik filtreleri aşağıdaki kategorileri kapsar:
Kategori | Açıklama |
---|---|
Taciz | Kimliği ve/veya korunan kimliğini hedefleyen olumsuz ya da zararlı yorumlar özellikleri hakkında daha fazla bilgi edinin. |
Nefret söylemi | Kaba, saygısız veya küfürlü içerik. |
Müstehcen | Cinsel eylemlere veya diğer müstehcen içeriklere referans veriyor. |
Tehlikeli | Zararlı eylemleri teşvik eden, kolaylaştıran veya destekleyen içerikler. |
Kullanım alanınıza uygun öğeleri ayarlamak için bu filtreleri kullanabilirsiniz. Örneğin, Örneğin, video oyunu diyalogları oluşturuyorsanız kullanıcıların oyunun yapısı nedeniyle Tehlikeli olarak derecelendirilmiş daha fazla içeriğe izin verebilirsiniz.
Gemini API'de ayarlanabilir güvenlik filtrelerine ek olarak yerleşik güvenlik özellikleri bulunur. Çocukların güvenliğini tehlikeye atan içerikler gibi temel zararlara karşı koruma sağlayan içerikler. Bu tür zararlar her zaman engellenir ve düzenlenemez.
İçerik güvenliği filtreleme düzeyi
Gemini API, içeriğin güvenli olma olasılığını
HIGH
, MEDIUM
, LOW
veya NEGLIGIBLE
.
Gemini API, içeriğin güvenli olmama olasılığına göre içerikleri engeller önem derecesini değil, Bazı içerikler zararın şiddeti riski az olsa da güvenli olmama ihtimali düşüktür yüksek olabilir. Örneğin, cümleleri karşılaştırırken:
- Robot beni yumruk attı.
- Robot beni kesti.
İlk cümle, güvensiz olma olasılığı daha yüksek olabilir, ancak ikinci cümlenin şiddet açısından daha ağır olduğu düşünülebilir. Bu nedenle, testin ne olduğunu dikkatlice test etmeniz ve hem yeterli düzeyde engelleme hem de temel kullanım alanlarınızı Son kullanıcılara verilen zararı en aza indirme.
İstek başına güvenlik filtrelemesi
API'ye gönderdiğiniz her istek için güvenlik ayarlarını düzenleyebilirsiniz. Zaman
İçerik analiz edilir ve bir güvenlik derecelendirmesi verilir. İlgili içeriği oluşturmak için kullanılan
güvenlik derecelendirmesi, sorunun kategorisini ve zarar görme olasılığını içerir
en iyi uygulamaları görelim. Örneğin, içerik taciz nedeniyle engellendiyse
olasılığı yüksek olduğunda, döndürülen güvenlik derecesi
kategorisi HARASSMENT
ve zarar olasılığı HIGH
olarak ayarlandı.
Varsayılan olarak güvenlik ayarları, aracı veya e-posta adresi içeren içerikleri (istemler dahil) engeller. olasılığı daha yüksek olur. Bu temel güvenlik çoğu kullanım alanında kullanılmak üzere tasarlandığından yalnızca güvenliğinizi uygulamanız için sürekli olarak gerekiyorsa da bu ayarları değiştirebilirsiniz.
Aşağıdaki tabloda her bir cihaz için değiştirebileceğiniz engelleme ayarları açıklanmaktadır. seçin. Örneğin, engelleme ayarını Nefret söylemi kategorisi, nefret edilme olasılığı yüksek tüm öğeler içeriği engellenir. Ancak daha düşük olasılığa sahip olan şeylere izin verilir.
Eşik (Google AI Studio) | Eşik (API) | Açıklama |
---|---|---|
Hiçbirini engelleme | BLOCK_NONE |
Güvenli olmayan içerik olasılığından bağımsız olarak her zaman göster |
Birkaçını engelle | BLOCK_ONLY_HIGH |
Güvenli olmayan içerik olasılığı yüksek olduğunda engelle |
Bazılarını engelle | BLOCK_MEDIUM_AND_ABOVE |
Güvenli olmayan içerik orta veya yüksek olasılıklı olduğunda engelle |
Çoğunu engelle | BLOCK_LOW_AND_ABOVE |
Güvenli olmayan içerik olasılığı düşük, orta veya yüksek olduğunda engelle |
Yok | HARM_BLOCK_THRESHOLD_UNSPECIFIED |
Eşik belirtilmedi, varsayılan eşik kullanılarak engelle |
Politika ayarlanmadan bırakılırsa varsayılan engelleme ayarı tüm kategoriler için Bazılarını engelle olur.
Üretken hizmete gönderdiğiniz her istek için bu ayarları belirleyebilirsiniz.
HarmBlockThreshold
API'yi inceleyin
inceleyebilirsiniz.
Güvenlik geri bildirimi
generateContent
şunu döndürür:
GenerateContentResponse
güvenlik geri bildirimi içerir.
İstem geri bildirimi şuna dahildir:
promptFeedback
. Eğer
promptFeedback.blockReason
ayarlandıktan sonra istemin içeriği engellendi.
Yanıt adayının geri bildirimi dahil edilir
Candidate.finishReason
ve
Candidate.safetyRatings
. Yanıt ise
içerik engellendi ve finishReason
SAFETY
değerine sahipti. Kontrol edebilirsiniz
Ayrıntılı bilgi için safetyRatings
. Engellenen içerik döndürülmez.
Güvenlik ayarlarını yapma
Bu bölümde, güvenlik ayarlarının hem Google AI Studio'da nasıl düzenleneceği açıklanmaktadır. ve kodunuza ekleyin.
Google AI Studio
Google AI Studio'da güvenlik ayarlarını düzenleyebilirsiniz ancak bunları etkinleştiremezsiniz kapalı.
Ayarları çalıştır panelinde Güvenlik ayarlarını düzenle'yi tıklayarak Çalıştır güvenlik ayarları kalıcı iletişim kutusunu işaretleyin. Kalıcı iletişim kutusunda güvenlik kategorisi başına içerik filtreleme düzeyi:
Bir istek gönderdiğinizde (örneğin, modele soru sorarak)
İsteğin içeriği engellenirse İçerik Yok mesajı görünür. Daha fazlasını görmek için ayrıntıları görmek için işaretçiyi İçerik Yok metni ve simgesini tıklayın. Güvenlik.Gemini API SDK'ları
Aşağıdaki kod snippet'i,
GenerateContent
arama. Bu durum, tacize neden oluyor (HARM_CATEGORY_HARASSMENT
)
ve nefret söylemi (HARM_CATEGORY_HATE_SPEECH
) kategorilerini
BLOCK_LOW_AND_ABOVE
, düşük veya yüksek değere sahip içerikleri engeller.
taciz veya nefret söylemi olma ihtimalini artırır.
Python
from google.generativeai.types import HarmCategory, HarmBlockThreshold
model = genai.GenerativeModel(model_name='gemini-1.5-flash')
response = model.generate_content(
['Do these look store-bought or homemade?', img],
safety_settings={
HarmCategory.HARM_CATEGORY_HATE_SPEECH: HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
HarmCategory.HARM_CATEGORY_HARASSMENT: HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
}
)
Go
model := client.GenerativeModel("gemini-1.5-flash")
model.SafetySettings = []*genai.SafetySetting{
{
Category: genai.HarmCategoryHarassment,
Threshold: genai.HarmBlockLowAndAbove,
},
{
Category: genai.HarmCategoryHateSpeech,
Threshold: genai.HarmBlockLowAndAbove,
},
}
Node.js
import { HarmBlockThreshold, HarmCategory } from "@google/generative-ai";
// ...
const safetySettings = [
{
category: HarmCategory.HARM_CATEGORY_HARASSMENT,
threshold: HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
},
{
category: HarmCategory.HARM_CATEGORY_HATE_SPEECH,
threshold: HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
},
];
const model = genAi.getGenerativeModel({ model: "gemini-1.5-flash", safetySettings: safetySettings });
Web
import { HarmBlockThreshold, HarmCategory } from "@google/generative-ai";
// ...
const safetySettings = [
{
category: HarmCategory.HARM_CATEGORY_HARASSMENT,
threshold: HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
},
{
category: HarmCategory.HARM_CATEGORY_HATE_SPEECH,
threshold: HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
},
];
const model = genAi.getGenerativeModel({ model: "gemini-1.5-flash", safetySettings });
Dart (Flutter)
final safetySettings = [
SafetySetting(HarmCategory.harassment, HarmBlockThreshold.low),
SafetySetting(HarmCategory.hateSpeech, HarmBlockThreshold.low),
];
final model = GenerativeModel(
model: 'gemini-1.5-flash',
apiKey: apiKey,
safetySettings: safetySettings,
);
Kotlin
val harassmentSafety = SafetySetting(HarmCategory.HARASSMENT, BlockThreshold.LOW_AND_ABOVE)
val hateSpeechSafety = SafetySetting(HarmCategory.HATE_SPEECH, BlockThreshold.LOW_AND_ABOVE)
val generativeModel = GenerativeModel(
modelName = "gemini-1.5-flash",
apiKey = BuildConfig.apiKey,
safetySettings = listOf(harassmentSafety, hateSpeechSafety)
)
Java
SafetySetting harassmentSafety = new SafetySetting(HarmCategory.HARASSMENT,
BlockThreshold.LOW_AND_ABOVE);
SafetySetting hateSpeechSafety = new SafetySetting(HarmCategory.HATE_SPEECH,
BlockThreshold.LOW_AND_ABOVE);
GenerativeModel gm = new GenerativeModel(
"gemini-1.5-flash",
BuildConfig.apiKey,
null, // generation config is optional
Arrays.asList(harassmentSafety, hateSpeechSafety)
);
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Sonraki adımlar
- Tam API hakkında daha fazla bilgi edinmek için API referansına bakın.
- Güvenliğe genel bir bakış için güvenlik yönergelerini inceleyin geliştirirken göz önünde bulundurulması gereken noktalar.
- Jigsaw'dan olasılık ve önem derecesini değerlendirme hakkında daha fazla bilgi edinin ekibi
- Google Haritalar ve Google Earth gibi güvenlik çözümlerine katkıda bulunan Perspektif API. * Toksisite oluşturmak için bu güvenlik ayarlarını kullanabilirsiniz sınıflandırıcıyı kullanın. Bkz. Sınıflandırma bir örnek .