توفّر Gemini API إعدادات أمان يمكنك تعديلها خلال هذه الفترة النماذج الأولية لتحديد ما إذا كان تطبيقك يتطلب أكثر أم أقل إعداد أمان مقيَّد. ويمكنك ضبط هذه الإعدادات عبر أربع تصفية الفئات لتقييد أنواع معينة من المحتوى أو السماح بها.
يتناول هذا الدليل كيفية تعامل Gemini API مع إعدادات الأمان والفلترة كيفية تغيير إعدادات الأمان لتطبيقك.
فلاتر الأمان
تشمل فلاتر الأمان القابلة للتعديل في Gemini API الفئات التالية:
الفئة | الوصف |
---|---|
التحرش | التعليقات السلبية أو الضارة التي تستهدف الهوية و/أو الحماية ذات الصلة. |
الكلام الذي يحضّ على الكراهية | محتوى فظ أو مُهين أو مكتوب بلغة نابية |
محتوى جنسي فاضح | يحتوي على إشارات إلى أفعال جنسية أو محتوى بذيء آخر. |
الفئات الخطيرة | يروّج لأفعال ضارّة أو يُسهّل تنفيذها أو يُشجّع عليها |
يمكنك استخدام هذه الفلاتر لتعديل ما يتناسب مع حالة استخدامك. بالنسبة على سبيل المثال، إذا كنت تنشئ حوارًا للعبة فيديو، يمكنك أن ترى أنّه من المقبول السماح بالمزيد من المحتوى المصنف على أنه خطير نظرًا لطبيعة اللعبة.
بالإضافة إلى فلاتر الأمان القابلة للتعديل، تتضمّن واجهة برمجة التطبيقات Gemini API وسائل الحماية من الأضرار الأساسية، مثل المحتوى الذي يعرّض سلامة الأطفال للخطر. ويتم دائمًا حظر هذه الأنواع من البرامج الضارة ولا يمكن تعديلها.
مستوى فلترة أمان المحتوى
تصنِّف واجهة Gemini API مستوى احتمالية أن يكون المحتوى غير آمن
HIGH
أو MEDIUM
أو LOW
أو NEGLIGIBLE
Gemini API تحظر المحتوى بناءً على احتمالية أن يكون غير آمن وليس الخطورة. من المهم أخذ ذلك في الاعتبار لأنّ بعض أنواع المحتوى احتمالية منخفضة أن تكون غير آمنة على الرغم من أن شدة الضرر لا تزال عالية. على سبيل المثال، مقارنة الجمل:
- ضربني الروبوت.
- لقد قتلني الروبوت.
قد تؤدي الجملة الأولى إلى احتمال أكبر أن تكون غير آمنة، لكنك قد نعتبر الجملة الثانية أكثر قاسية من حيث العنف. بناءً على ذلك، من المهم أن تختبر بعناية وتفكر في هناك حاجة إلى مستوى مناسب من الحظر لدعم حالات الاستخدام الرئيسية، وتقليل الضرر الواقع على المستخدمين النهائيين.
فلترة السلامة حسب الطلب
ويمكنك تعديل إعدادات الأمان لكل طلب ترسله إلى واجهة برمجة التطبيقات. فعندما
تقديم طلب، يتم تحليل المحتوى وتعيين تقييم الأمان. تشير رسالة الأشكال البيانية
يتضمّن تقييم الأمان فئة المخاطرة واحتمال حدوثها
الفئات. على سبيل المثال، إذا تم حظر المحتوى بسبب التحرش
لها احتمالية عالية، فإن تصنيف الأمان الذي تم إرجاعه سيكون
الفئة تساوي HARASSMENT
وتم ضبط احتمالية الضرر على HIGH
.
تحظر إعدادات الأمان تلقائيًا المحتوى (بما في ذلك الطلبات) الذي يتضمن متوسط هي احتمالية أن تكون غير آمنة عبر أي فلتر. تبلغ درجة الأمان الأساسية هذه مصمَّمة لتناسب معظم حالات الاستخدام، لذا يجب ضبط إعدادات سلامتك فقط الإعدادات إذا كانت مطلوبة باستمرار في تطبيقك.
يوضّح الجدول التالي إعدادات الحظر التي يمكنك ضبطها لكلٍ منهما. . على سبيل المثال، في حال ضبط إعداد الحظر على حظر عدد قليل من فئة الكلام الذي يحض على الكراهية، وهي كل ما يحتمل أن يكون يحض على الكراهية يتم حظر المحتوى الكلامي. لكن يُسمح بأي شيء ذي احتمال أقل.
الحدّ الأدنى (Google AI Studio) | الحدّ (واجهة برمجة التطبيقات) | الوصف |
---|---|---|
بلا حظر | BLOCK_NONE |
العرض دائمًا بغض النظر عن احتمالية وجود محتوى غير آمن |
حظر عدد قليل | BLOCK_ONLY_HIGH |
الحظر عند وجود احتمال كبير لمحتوى غير آمن |
حظر بعض | BLOCK_MEDIUM_AND_ABOVE |
الحظر عند وجود محتوى غير آمن بدرجة متوسطة أو عالية |
حظر معظم الإعلانات | BLOCK_LOW_AND_ABOVE |
الحظر عند وجود احتمال منخفض أو متوسط أو مرتفع لمحتوى غير آمن |
لا ينطبق | HARM_BLOCK_THRESHOLD_UNSPECIFIED |
الحدّ غير محدّد، يجب حظره باستخدام الحدّ التلقائي. |
وفي حال تم ترك هذه السياسة بدون ضبط، يكون إعداد الحظر التلقائي هو حظر بعضها لجميع الفئات.
يمكنك ضبط هذه الإعدادات لكل طلب ترسله إلى الخدمة التوليدية.
الاطّلاع على HarmBlockThreshold
API
مرجع للتفاصيل.
ملاحظات حول الأمان
generateContent
يُنتج
GenerateContentResponse
الملاحظات والآراء المتعلقة بالأمان
يتم تضمين ملاحظات المطالبة في
promptFeedback
في حال حذف
تم ضبط promptFeedback.blockReason
، وبالتالي تم حظر محتوى الطلب.
يتم تضمين ملاحظات مرشّح الرد في
Candidate.finishReason
و
Candidate.safetyRatings
إذا كانت الاستجابة
تم حظر المحتوى وكانت قيمة finishReason
كانت SAFETY
، يمكنك فحص
safetyRatings
للاطّلاع على مزيد من التفاصيل. ولا يتم إرجاع المحتوى الذي تم حظره.
ضبط إعدادات الأمان
يتناول هذا القسم كيفية ضبط إعدادات الأمان في كلٍّ من Google AI Studio وفي التعليمات البرمجية.
Google AI Studio
يمكنك تعديل إعدادات الأمان في Google AI Studio، ولكن لا يمكنك تفعيلها.
انقر على تعديل إعدادات الأمان في لوحة تشغيل الإعدادات لفتح الخيار تشغيل. إعدادات الأمان. في النافذة المشروطة، يمكنك استخدام أشرطة التمرير لضبط مستوى فلترة المحتوى لكل فئة أمان:
عندما ترسل طلبًا (على سبيل المثال، من خلال طرح سؤال على النموذج)، يتم عرض
تظهر رسالة ما مِن محتوى إذا كان محتوى الطلب محظورًا. لعرض المزيد التفاصيل، ضع المؤشر فوق لا يوجد محتوى، ثم انقر على الأمان:حِزم تطوير البرامج (SDK) لواجهة Gemini API
يعرض مقتطف الرمز التالي كيفية ضبط إعدادات الأمان في
مكالمة واحدة (GenerateContent
) يؤدي ذلك إلى وضع تحرش جنسي (HARM_CATEGORY_HARASSMENT
)
والكلام الذي يحض على الكراهية (HARM_CATEGORY_HATE_SPEECH
) ضمن
BLOCK_LOW_AND_ABOVE
الذي يحظر أي محتوى منخفض أو أعلى
احتمال أن يكون تحرشًا أو كلامًا يحض على الكراهية.
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,
}
)
البدء
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 });
الويب
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 });
لعبة رمي السهام (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);
الخطوات التالية
- يمكنك الاطّلاع على مرجع واجهة برمجة التطبيقات لمزيد من المعلومات حول واجهة برمجة التطبيقات الكاملة.
- يُرجى مراجعة إرشادات الأمان لإلقاء نظرة عامة على السلامة. التي يجب وضعها في الاعتبار عند تطوير النماذج اللغوية الكبيرة
- مزيد من المعلومات حول تقييم الاحتمالات مقابل درجة الخطورة من Jigsaw
- مزيد من المعلومات حول المنتجات التي تساهم في حلول الأمان مثل المنظور API. * يمكنك استخدام إعدادات الأمان هذه لإنشاء لغة غير لائقة المصنِّف. اطّلع على تصنيف مثال إلى للبدء.