شرح تفصيلي لإعدادات الأمان في Gemini API: الفهم الصحيح ودليل استخدام معامل BLOCK_NONE

فهم آلية safetySettings في واجهة Gemini API

عند استخدام واجهة Gemini لتوليد الصور (مثل gemini-2.0-flash-exp-image-generation أو gemini-3-pro-image-preview)، ربما صادفت تكويناً مثل هذا:

"safetySettings": [
  {"category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_NONE"},
  {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_NONE"},
  {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_NONE"},
  {"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_NONE"}
]

ما معنى هذا التكوين بالضبط؟ هل يعني BLOCK_NONE فعلاً أن النموذج سيولّد أي محتوى؟ في هذا المقال، سنشرح بالتفصيل كيفية عمل إعدادات الأمان في Gemini API وطريقة استخدامها الصحيحة.

القيمة الأساسية: بعد قراءة هذا المقال، ستفهم فئات المخاطر الأربع في Gemini، مستويات العتبات الخمسة، والدور الحقيقي لـ BLOCK_NONE وحدوده.


النقاط الأساسية لإعدادات الأمان في Gemini

النقطة الشرح الأهمية
الفئات الأربع للمخاطر التحرش، خطاب الكراهية، المحتوى الجنسي الصريح، المحتوى الخطير أبعاد تصفية المحتوى القابلة للتعديل
خمسة مستويات للعتبات OFF، BLOCK_NONE، BLOCK_FEW، BLOCK_SOME، BLOCK_MOST التحكم في حساسية التصفية
معنى BLOCK_NONE إيقاف تصفية الاحتمالات لهذه الفئة، لكن دون تجاوز الحماية الأساسية أكثر الإعدادات مرونة
الحماية غير القابلة للتعديل سلامة الأطفال وغيرها من المخاطر الأساسية محظورة دائماً حماية مدمجة، لا يمكن تعطيلها

فلسفة تصميم إعدادات الأمان

تعتمد إعدادات الأمان في Gemini API على آلية حماية متعددة الطبقات:

  1. طبقة قابلة للتعديل: يمكن للمطورين ضبط عتبات التصفية للفئات الأربع حسب سياق التطبيق
  2. طبقة غير قابلة للتعديل: للمخاطر الأساسية مثل سلامة الأطفال، يحظرها النظام دائماً ولا يمكن تجاوزها بأي إعدادات

هذا يعني أنه حتى لو ضبطت جميع الفئات على BLOCK_NONE، سيظل النموذج يرفض توليد محتوى يتعلق بسلامة الأطفال وغيرها من الانتهاكات الأساسية.


الفئات الأربع للمخاطر

يصنف Gemini API المحتوى المحتمل خطورته إلى أربع فئات رئيسية:

1. HARM_CATEGORY_HARASSMENT (التحرش)

التعريف: محتوى يستهدف الإساءة أو التنمر أو التحرش بالأفراد أو المجموعات.

أمثلة:

  • التهديدات الشخصية
  • الإهانات المتكررة
  • المضايقات الموجهة

متى نخفف الإعدادات؟ في تطبيقات تحليل النصوص أو البحث الأكاديمي حيث تحتاج لمعالجة محتوى قد يحتوي على هذه العناصر.

2. HARM_CATEGORY_HATE_SPEECH (خطاب الكراهية)

التعريف: محتوى يشجع على الكراهية أو التمييز ضد مجموعات بناءً على العرق، الدين، الجنس، إلخ.

أمثلة:

  • التمييز العنصري
  • التحريض على الكراهية الدينية
  • خطاب الكراهية الجندري

متى نخفف الإعدادات؟ في أدوات رصد خطاب الكراهية أو دراسات الظواهر الاجتماعية.

3. HARM_CATEGORY_SEXUALLY_EXPLICIT (المحتوى الجنسي الصريح)

التعريف: محتوى يصف أو يصور أنشطة جنسية بشكل صريح.

أمثلة:

  • الصور أو الأوصاف الجنسية الصريحة
  • المحتوى الإباحي
  • المحتوى الجنسي المبتذل

متى نخفف الإعدادات؟ في تطبيقات التثقيف الجنسي أو المراجعات الطبية (مع احتياطات إضافية).

4. HARM_CATEGORY_DANGEROUS_CONTENT (المحتوى الخطير)

التعريف: محتوى يشجع أو يوفر معلومات عن أنشطة ضارة.

أمثلة:

  • تعليمات صنع أسلحة أو متفجرات
  • تشجيع على إيذاء النفس
  • معلومات عن أنشطة إجرامية خطيرة

متى نخفف الإعدادات؟ في سياقات بحثية أمنية متخصصة مع ضوابط صارمة.


المستويات الخمسة للعتبات

يوفر Gemini API خمسة مستويات للتحكم في حساسية التصفية:

مقارنة المستويات

أكثر مرونة ←――――――――――――――――――――――――→ أكثر صرامة

BLOCK_NONE → BLOCK_FEW → BLOCK_SOME → BLOCK_MOST → BLOCK_ALL
المستوى الوصف حالة الاستخدام
OFF إيقاف التصفية تماماً (غير متاح في الإنتاج) الاختبار الداخلي فقط
BLOCK_NONE السماح بالمحتوى ذو احتمالية منخفضة ومتوسطة وعالية تطبيقات متخصصة تحتاج مرونة
BLOCK_FEW حظر المحتوى ذو الاحتمالية العالية فقط تطبيقات للبالغين بإشراف
BLOCK_SOME حظر المحتوى متوسط وعالي الاحتمالية الإعداد الافتراضي للتطبيقات العامة
BLOCK_MOST حظر كل محتوى منخفض أو أعلى تطبيقات موجهة للأطفال

فهم آلية الاحتمالية

يقيّم Gemini احتمالية أن يحتوي المحتوى على مخاطر (LOW، MEDIUM، HIGH). العتبة تحدد أي مستوى احتمالية يتم حظره:

# مثال على الاستجابة
{
  "safetyRatings": [
    {
      "category": "HARM_CATEGORY_HARASSMENT",
      "probability": "MEDIUM"  # النموذج يقدر احتمالية متوسطة
    }
  ]
}
  • BLOCK_NONE: يسمح بـ LOW، MEDIUM، HIGH (أكثر تساهلاً)
  • BLOCK_FEW: يحظر HIGH فقط
  • BLOCK_SOME: يحظر MEDIUM و HIGH
  • BLOCK_MOST: يحظر LOW و MEDIUM و HIGH

الحقيقة حول BLOCK_NONE

ما يفعله BLOCK_NONE

{
  "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
  "threshold": "BLOCK_NONE"
}

يعني: أوقف تصفية الاحتمالية لهذه الفئة – اسمح بالمحتوى حتى لو كانت احتمالية الخطر عالية.

ما لا يفعله BLOCK_NONE ❌

لا يعني:

  • تجاوز جميع قيود الأمان
  • السماح بتوليد محتوى غير قانوني
  • تعطيل الحماية الأساسية

طبقات الحماية المتعددة

طلب المستخدم
    ↓
[تصفية الطبقة 1: القيود الأساسية]  ← لا يمكن تجاوزها
    ↓
[تصفية الطبقة 2: safetySettings]    ← يمكن تعديلها (BLOCK_NONE)
    ↓
استجابة النموذج

القيود الأساسية (الطبقة 1) تشمل:

  • سلامة الأطفال (CSAM)
  • الأنشطة غير القانونية الخطيرة
  • الضرر الشديد غير القابل للنقاش

هذه لا يمكن تعطيلها أبداً، حتى مع BLOCK_NONE.


أمثلة عملية على التكوين

السيناريو 1: تطبيق عائلي (أكثر صرامة)

{
  "safetySettings": [
    {"category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_MOST"},
    {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_MOST"},
    {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_MOST"},
    {"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_MOST"}
  ]
}

متى تستخدمه: تطبيقات موجهة للأطفال، منصات تعليمية، بيئات آمنة للعائلة.

السيناريو 2: تطبيق للبالغين (متوازن)

{
  "safetySettings": [
    {"category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_SOME"},
    {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_SOME"},
    {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_FEW"},
    {"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_SOME"}
  ]
}

متى تستخدمه: شبكات اجتماعية للبالغين، منتديات مجتمعية، منصات ترفيهية.

السيناريو 3: أداة بحثية (أكثر مرونة)

{
  "safetySettings": [
    {"category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_NONE"},
    {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_NONE"},
    {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_FEW"},
    {"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_NONE"}
  ]
}

متى تستخدمه:

  • تحليل المحتوى الأكاديمي
  • أدوات رصد خطاب الكراهية
  • أبحاث الأمن السيبراني

⚠️ تحذير: يتطلب طبقات حماية إضافية على مستوى التطبيق!


أفضل الممارسات

1. اختر العتبة المناسبة لحالتك

# ❌ خطأ: استخدام BLOCK_NONE لكل شيء دون تفكير
safety_settings = [
    {"category": cat, "threshold": "BLOCK_NONE"}
    for cat in ALL_CATEGORIES
]

# ✅ صحيح: تحديد العتبات حسب الاحتياجات
safety_settings = [
    {"category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_SOME"},
    {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_FEW"},
    {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_NONE"},
    {"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_SOME"}
]

2. أضف طبقة تصفية خاصة بك

حتى مع BLOCK_NONE، يجب أن يكون لتطبيقك منطق تصفية خاص:

def post_process_response(response):
    """طبقة تصفية إضافية على مستوى التطبيق"""
    
    # فحص تقييمات الأمان
    for rating in response.safety_ratings:
        if rating.probability in ["MEDIUM", "HIGH"]:
            # منطق مخصص: سجل، راجع، أو ارفض
            log_safety_concern(rating)
            
            if rating.category == "HARM_CATEGORY_SEXUALLY_EXPLICIT":
                return filter_explicit_content(response)
    
    return response

3. راقب وسجل القرارات الأمنية

import logging

def generate_with_logging(prompt, safety_settings):
    response = model.generate(prompt, safety_settings=safety_settings)
    
    # تسجيل التقييمات الأمنية
    for rating in response.safety_ratings:
        if rating.probability != "NEGLIGIBLE":
            logging.warning(
                f"Safety alert: {rating.category} "
                f"probability={rating.probability}"
            )
    
    return response

4. قدم تحذيرات واضحة للمستخدمين

if any(s["threshold"] == "BLOCK_NONE" for s in safety_settings):
    show_user_warning(
        "هذا التطبيق يستخدم إعدادات أمان مرنة. "
        "قد تحتوي النتائج على محتوى حساس."
    )

الأخطاء الشائعة

❌ الخطأ 1: الاعتقاد أن BLOCK_NONE يلغي كل القيود

# توقع خاطئ
settings = [{"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_NONE"}]
response = model.generate("توليد صورة لـ...", safety_settings=settings)
# سيرفض النموذج لو كان المحتوى ينتهك القيود الأساسية

الواقع: القيود الأساسية (مثل سلامة الأطفال) تبقى فعالة دائماً.

❌ الخطأ 2: عدم التمييز بين الفئات

# خطأ: استخدام نفس العتبة لكل الفئات دون تفكير
settings = [{"category": cat, "threshold": "BLOCK_NONE"} for cat in CATEGORIES]

الصحيح: كل فئة لها سياق – مثلاً، قد تحتاج HARASSMENT لحماية أكثر من SEXUALLY_EXPLICIT حسب تطبيقك.

❌ الخطأ 3: إهمال التصفية على مستوى التطبيق

# خطر: الاعتماد فقط على Gemini
response = model.generate(prompt, safety_settings=permissive_settings)
show_to_user(response.text)  # عرض مباشر دون فحص!

الصحيح: أضف طبقة فحص إضافية قبل عرض المحتوى للمستخدم.


حالة خاصة: توليد الصور

لماذا تكون إعدادات توليد الصور أكثر مرونة أحياناً؟

{
  "model": "gemini-2.0-flash-exp-image-generation",
  "safetySettings": [
    {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_NONE"}
  ]
}

السبب:

  1. السياق الفني: الفن، التصميم، التعليم الطبي قد يحتاج محتوى بصري حساس
  2. التحكم الدقيق: الصور لها فروق دقيقة – التشريح الطبي ≠ محتوى إباحي
  3. مسؤولية المطور: مع المرونة تأتي مسؤولية إضافة ضوابط خاصة

مثال: تطبيق طبي لتوليد الرسوم التوضيحية

medical_safety = [
    {"category": "HARM_CATEGORY_HARASSMENT", "threshold": "BLOCK_MOST"},
    {"category": "HARM_CATEGORY_HATE_SPEECH", "threshold": "BLOCK_MOST"},
    {"category": "HARM_CATEGORY_SEXUALLY_EXPLICIT", "threshold": "BLOCK_NONE"},  # للرسوم التشريحية
    {"category": "HARM_CATEGORY_DANGEROUS_CONTENT", "threshold": "BLOCK_SOME"}
]

def generate_medical_illustration(prompt):
    # تحقق من صلاحيات المستخدم الطبية
    if not user.is_verified_medical_professional():
        raise PermissionError("يتطلب حساباً طبياً معتمداً")
    
    # أضف سياقاً طبياً للطلب
    medical_prompt = f"[Medical Educational Context] {prompt}"
    
    response = model.generate(
        medical_prompt,
        safety_settings=medical_safety
    )
    
    # تسجيل الاستخدام للمراجعة
    log_medical_generation(user, prompt, response)
    
    return response

الخلاصة

النقاط الرئيسية 🎯

  1. BLOCK_NONE ليس "باباً خلفياً": يعطل فقط تصفية الاحتمالية، لا الحماية الأساسية

  2. الفئات الأربع قابلة للتعديل بشكل منفصل: خصص العتبة لكل فئة حسب احتياجاتك

  3. القيود الأساسية دائمة: سلامة الأطفال وغيرها محمية دائماً

  4. المسؤولية على المطور: المرونة = الحاجة لضوابط إضافية على مستوى التطبيق

جدول القرار السريع

نوع التطبيق HARASSMENT HATE_SPEECH SEXUALLY_EXPLICIT DANGEROUS
عائلي/أطفال BLOCK_MOST BLOCK_MOST BLOCK_MOST BLOCK_MOST
عام/بالغين BLOCK_SOME BLOCK_SOME BLOCK_SOME BLOCK_SOME
طبي/تعليمي BLOCK_SOME BLOCK_MOST BLOCK_NONE BLOCK_FEW
بحثي متخصص BLOCK_FEW BLOCK_FEW BLOCK_NONE BLOCK_NONE

نصيحة أخيرة

استخدم BLOCK_NONE فقط عندما:

  • يكون لديك سبب تقني/تطبيقي واضح
  • أضفت طبقات حماية إضافية على مستوى التطبيق
  • تفهم المسؤوليات القانونية والأخلاقية
  • لديك آلية لمراجعة وتسجيل المحتوى الحساس

تذكر: المرونة في الإعدادات لا تعني غياب المسؤولية – بل تعني مسؤولية أكبر على المطور! 🛡️


موارد إضافية:

شرح تفصيلي لفئات المخاطر الأربع

<!-- 橙色 - 骚扰 -->
<linearGradient id="harassOrange" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#ea580c" />
  <stop offset="100%" stop-color="#fb923c" />
</linearGradient>

<!-- 红色 - 仇恨 -->
<linearGradient id="hateRed" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#dc2626" />
  <stop offset="100%" stop-color="#f87171" />
</linearGradient>

<!-- 紫色 - 色情 -->
<linearGradient id="sexPurple" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#7c3aed" />
  <stop offset="100%" stop-color="#a855f7" />
</linearGradient>

<!-- 深红 - 危险 -->
<linearGradient id="dangerDark" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#991b1b" />
  <stop offset="100%" stop-color="#dc2626" />
</linearGradient>

شرح تفصيلي لفئات المخاطر الأربع أبعاد تصفية المحتوى القابلة للتعديل في Gemini API

🚫 HARM_CATEGORY_HARASSMENT محتوى المضايقة

التعريف: تعليقات سلبية أو ضارة تستهدف الهوية أو السمات المحمية (هجمات شخصية، خطاب تمييزي)

💢 HARM_CATEGORY_HATE_SPEECH خطاب الكراهية

التعريف: محتوى فظ أو غير محترم أو مسيء (عنصرية، كراهية دينية، تمييز جنسي)

🔞 HARM_CATEGORY_SEXUALLY_EXPLICIT محتوى جنسي صريح

التعريف: إشارات للسلوك الجنسي أو المواد الفاحشة (أوصاف جنسية واضحة، محتوى عري، تلميحات جنسية)

⚠️ HARM_CATEGORY_DANGEROUS محتوى خطير

التعريف: محتوى يروّج أو يساعد أو يشجع سلوكيات ضارة (تصنيع أسلحة، إرشادات إيذاء النفس، أنشطة غير قانونية)

💡 يمكن تكوين عتبات التصفية لهذه الفئات الأربع بشكل مستقل، الحماية الأساسية (مثل أمان الأطفال) غير قابلة للتعديل

نوصي بـ APIYI: محطة وسيطة موثوقة لواجهات نماذج الذكاء الاصطناعي، أسعار معقولة وتجربة مجانية

يدعم Gemini API أربع فئات قابلة للتعديل من المخاطر:

1. HARM_CATEGORY_HARASSMENT (المضايقة)

التعريف: تعليقات سلبية أو ضارة تستهدف الهوية أو السمات المحمية

المحتوى المشمول:

  • الهجمات الشخصية والإهانات
  • خطاب تمييزي موجه لفئات معينة
  • محتوى متعلق بالتنمر الإلكتروني

2. HARM_CATEGORY_HATE_SPEECH (خطاب الكراهية)

التعريف: محتوى فظ أو غير محترم أو مسيء

المحتوى المشمول:

  • خطاب عنصري
  • كراهية دينية
  • تمييز على أساس الجنس أو التوجه الجنسي

3. HARM_CATEGORY_SEXUALLY_EXPLICIT (محتوى جنسي صريح)

التعريف: إشارات للسلوك الجنسي أو المواد الفاحشة

المحتوى المشمول:

  • أوصاف جنسية صريحة
  • محتوى عري
  • تلميحات جنسية

4. HARM_CATEGORY_DANGEROUS_CONTENT (محتوى خطير)

التعريف: محتوى يروّج أو يساعد أو يشجع سلوكيات ضارة

المحتوى المشمول:

  • دروس تصنيع الأسلحة
  • إرشادات إيذاء النفس أو الآخرين
  • شروحات للأنشطة غير القانونية
الفئة ثابت API محور التصفية
المضايقة HARM_CATEGORY_HARASSMENT هجمات شخصية، خطاب تمييزي
خطاب الكراهية HARM_CATEGORY_HATE_SPEECH كراهية عرقية/دينية
محتوى جنسي صريح HARM_CATEGORY_SEXUALLY_EXPLICIT أوصاف جنسية، عري
محتوى خطير HARM_CATEGORY_DANGEROUS_CONTENT إرشادات سلوكيات ضارة

ملاحظة: عند استدعاء Gemini API عبر APIYI apiyi.com، تُطبق نفس إعدادات الأمان، ويمكنك تكوينها حسب احتياجاتك الفعلية.


شرح تفصيلي لتكوين العتبات الخمس

<!-- 绿色 - 最宽松 -->
<linearGradient id="levelGreen" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#059669" />
  <stop offset="100%" stop-color="#10b981" />
</linearGradient>

<!-- 青绿 -->
<linearGradient id="levelTeal" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#0d9488" />
  <stop offset="100%" stop-color="#14b8a6" />
</linearGradient>

<!-- 黄色 - 中等 -->
<linearGradient id="levelYellow" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#ca8a04" />
  <stop offset="100%" stop-color="#eab308" />
</linearGradient>

<!-- 橙色 -->
<linearGradient id="levelOrange" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#ea580c" />
  <stop offset="100%" stop-color="#fb923c" />
</linearGradient>

<!-- 红色 - 最严格 -->
<linearGradient id="levelRed" x1="0%" y1="0%" x2="100%" y2="100%">
  <stop offset="0%" stop-color="#dc2626" />
  <stop offset="100%" stop-color="#f87171" />
</linearGradient>

مقارنة تكوين العتبات الخمس من الأكثر مرونة إلى الأكثر صرامة في تصفية المحتوى

احتمالية المحتوى الضار: NEGLIGIBLE ← → LOW ← → MEDIUM ← → HIGH

OFF / BLOCK_NONE السماح بكل المحتوى ✓ لا تصفية حسب الاحتمالية، الحماية الأساسية فعّالة

BLOCK_ONLY_HIGH حظر احتمالية عالية فقط HIGH محظور

BLOCK_MEDIUM_AND_ABOVE MEDIUM + HIGH محظور

BLOCK_LOW_AND_ABOVE LOW + MEDIUM + HIGH محظور

مسموح

محظور

💡 القيمة الافتراضية لـ Gemini 2.5+ هي OFF، النماذج القديمة BLOCK_SOME

نوصي بـ APIYI: محطة وسيطة موثوقة لواجهات نماذج الذكاء الاصطناعي، أسعار معقولة وتجربة مجانية

يوفر Gemini API خمسة مستويات عتبة للتحكم في حساسية تصفية المحتوى:

اسم الإعداد قيمة API تأثير التصفية سيناريوهات الاستخدام
إيقاف OFF إيقاف كامل لمرشحات الأمان القيمة الافتراضية لـ Gemini 2.5+
عدم الحظر BLOCK_NONE عرض المحتوى بغض النظر عن تقييم الاحتمالية الحاجة لأقصى حرية إبداعية
حظر القليل BLOCK_ONLY_HIGH حظر المحتوى عالي الاحتمالية فقط معظم سيناريوهات التطبيقات
حظر جزئي BLOCK_MEDIUM_AND_ABOVE حظر محتوى متوسط الاحتمالية وما فوق الحاجة لتصفية معتدلة
حظر معظم المحتوى BLOCK_LOW_AND_ABOVE حظر احتمالية منخفضة وما فوق أكثر التصفية صرامة

آلية عمل العتبات

ينفذ نظام Gemini تقييماً احتمالياً لكل محتوى، ليحدد مدى احتمالية كونه محتوى ضاراً:

  • HIGH: احتمالية عالية (على الأرجح محتوى ضار)
  • MEDIUM: احتمالية متوسطة
  • LOW: احتمالية منخفضة
  • NEGLIGIBLE: احتمالية يمكن تجاهلها

نقطة مهمة: يحظر النظام بناءً على الاحتمالية وليس درجة الخطورة. هذا يعني:

  • قد يُحظر محتوى ذو احتمالية عالية لكن خطورته منخفضة
  • قد يُسمح بمحتوى ذو احتمالية منخفضة لكن خطورته عالية

توضيح القيم الافتراضية

إصدار النموذج العتبة الافتراضية
نماذج GA الجديدة مثل Gemini 2.5 وGemini 3 OFF (إيقاف)
النماذج القديمة الأخرى BLOCK_SOME (حظر جزئي)

الدور الحقيقي لـ BLOCK_NONE

ما الذي يمكنه فعله

بعد ضبط BLOCK_NONE:

  1. إيقاف التصفية الاحتمالية: لن تقوم هذه الفئة بحظر المحتوى بناءً على التقييم الاحتمالي
  2. السماح بالمحتوى الحدّي: المحتوى المشروع الذي قد يتم تصنيفه خطأً لن يُحظر
  3. تعزيز حرية الإبداع: تقليل الحظر الخاطئ في سياقات الفن والتعليم والأخبار

ما الذي لا يمكنه فعله

حتى لو قمت بضبط جميع الفئات على BLOCK_NONE:

  1. الحماية الأساسية تبقى فعّالة: لا يمكن تجاوز الحماية المُدمجة مثل سلامة الأطفال
  2. وجود طبقات تصفية متعددة: المراقبة الآنية أثناء عملية التوليد والفحوصات اللاحقة لا تزال تعمل
  3. الخطوط الحمراء للسياسة ثابتة: المحتوى الذي يخالف سياسات Google بوضوح سيُرفض

خصوصية توليد الصور

بالنسبة لنماذج توليد الصور (مثل gemini-2.0-flash-exp-image-generation)، التصفية الأمنية أكثر تعقيداً:

  1. تصفية النص التوجيهي: النص المُدخل يمر بالفحص أولاً
  2. مراقبة عملية التوليد: مراقبة مستمرة أثناء توليد النتائج المرحلية
  3. المراجعة بعد التوليد: هناك فحص امتثال إضافي بعد إكمال التوليد

تُظهر الأبحاث أن التوجيهات الصريحة المباشرة عادةً ما تُحظر، لكن تقنيات مثل التصعيد عبر حوارات متعددة قد تتجاوز بعض الفحوصات.


أمثلة عملية للإعداد

إعداد Python SDK

import google.generativeai as genai

# ضبط إعدادات السلامة
safety_settings = [
    {
        "category": "HARM_CATEGORY_HARASSMENT",
        "threshold": "BLOCK_NONE"
    },
    {
        "category": "HARM_CATEGORY_HATE_SPEECH",
        "threshold": "BLOCK_NONE"
    },
    {
        "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
        "threshold": "BLOCK_NONE"
    },
    {
        "category": "HARM_CATEGORY_DANGEROUS_CONTENT",
        "threshold": "BLOCK_NONE"
    }
]

# إنشاء نموذج
model = genai.GenerativeModel(
    model_name="gemini-2.0-flash-exp",
    safety_settings=safety_settings
)

# توليد المحتوى
response = model.generate_content("النص التوجيهي الخاص بك")

عرض مثال إعداد REST API
{
  "model": "gemini-2.0-flash-exp-image-generation",
  "contents": [
    {
      "role": "user",
      "parts": [
        {"text": "قم بتوليد صورة بأسلوب فني"}
      ]
    }
  ],
  "safetySettings": [
    {
      "category": "HARM_CATEGORY_HARASSMENT",
      "threshold": "BLOCK_NONE"
    },
    {
      "category": "HARM_CATEGORY_HATE_SPEECH",
      "threshold": "BLOCK_NONE"
    },
    {
      "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
      "threshold": "BLOCK_NONE"
    },
    {
      "category": "HARM_CATEGORY_DANGEROUS_CONTENT",
      "threshold": "BLOCK_NONE"
    }
  ],
  "generationConfig": {
    "responseModalities": ["image", "text"]
  }
}

نصيحة: من خلال APIYI apiyi.com يمكنك اختبار تأثير إعدادات السلامة المختلفة بسرعة، حيث تدعم المنصة واجهة موحدة لاستدعاء نماذج سلسلة Gemini.


استخدامات وتوصيات

السيناريوهات المناسبة لاستخدام BLOCK_NONE

السيناريو الشرح الإعدادات المقترحة
الإبداع الفني الفن التشكيلي والتعبير المجرد يمكن التساهل في فئة المحتوى الجنسي
التقارير الإخبارية صور الحروب والنزاعات يمكن التساهل في فئة المحتوى الخطر
الأغراض التعليمية المحتوى الطبي والتاريخي التعديل حسب المحتوى المحدد
مراجعة المحتوى تحليل المحتوى المحتمل انتهاكه تعيين الكل إلى BLOCK_NONE

السيناريوهات غير المناسبة لاستخدام BLOCK_NONE

السيناريو الشرح الإعدادات المقترحة
التطبيقات الموجهة للعامة منتجات يستخدمها المستخدمون العاديون BLOCK_MEDIUM_AND_ABOVE
تطبيقات الأطفال منتجات تعليمية وترفيهية للأطفال BLOCK_LOW_AND_ABOVE
أدوات الشركات الداخلية سيناريوهات تتطلب التدقيق والامتثال BLOCK_ONLY_HIGH

أفضل الممارسات

  1. التعديل التدريجي: ابدأ من الإعدادات الافتراضية وقم بالتخفيف تدريجياً حسب الحاجة الفعلية
  2. الإعداد حسب الفئة: يمكن تعيين عتبات مختلفة لفئات مختلفة، لا داعي لتوحيدها جميعاً
  3. المراقبة والسجلات: سجّل الطلبات المحظورة لتحليل ضرورة التعديل
  4. تحليل سيناريوهات المستخدمين: حدد مستوى التصفية المناسب بناءً على الفئة المستهدفة

الأسئلة الشائعة

س1: لماذا يتم حظر بعض المحتوى حتى بعد تعيين BLOCK_NONE؟

BLOCK_NONE يعطل فقط تصفية الاحتمالات لتلك الفئة، لكن الحظر قد يحدث في الحالات التالية:

  1. الحماية الأساسية: الحماية المشفرة مثل سلامة الأطفال لا يمكن تعطيلها
  2. فئات أخرى: إذا تم تعيين BLOCK_NONE لبعض الفئات فقط
  3. الخطوط الحمراء للسياسات: المحتوى الذي يخالف سياسات استخدام Google بوضوح
  4. فحص عملية التوليد: توليد الصور يخضع لمراقبة إضافية في الوقت الفعلي

س2: ما الفرق بين OFF و BLOCK_NONE؟

وفقاً لوثائق Google الرسمية:

  • OFF: تعطيل كامل لمرشح الأمان (القيمة الافتراضية في Gemini 2.5+)
  • BLOCK_NONE: عرض المحتوى بغض النظر عن تقييم الاحتمالات

التأثير الفعلي متقارب جداً، لكن OFF يعطل منطق التصفية لتلك الفئة بشكل أكثر شمولاً. في الإصدارات الحديثة من النماذج، التأثير متطابق تقريباً.

س3: كيف أستخدم إعدادات الأمان عبر خدمات الوساطة للـ API؟

عند استدعاء Gemini API عبر APIYI apiyi.com:

  1. معاملات إعدادات الأمان تُمرر مباشرة إلى Google API
  2. طريقة الإعداد مطابقة لاستدعاء Google API مباشرة
  3. تدعم جميع الفئات الأربع والعتبات الخمس
  4. يمكنك التحقق بسرعة من تأثير الإعدادات المختلفة في مرحلة الاختبار

总结

Gemini API 安全设置的核心要点:

  1. 四大可调类别: 骚扰、仇恨言论、色情内容、危险内容,开发者可根据需求调整
  2. 五级阈值配置: 从 OFF/BLOCK_NONE(最宽松)到 BLOCK_LOW_AND_ABOVE(最严格)
  3. BLOCK_NONE 的本质: 关闭概率过滤,但不绕过核心保护和政策红线
  4. 分层防护机制: 可调节层 + 不可调节层,确保基本安全底线
  5. 图像生成特殊性: 多层过滤(提示词→生成过程→输出审查)更为严格

理解这些设置后,你可以根据应用场景合理配置安全参数,在创作自由和内容安全之间找到平衡。

通过 APIYI apiyi.com 可以快速测试 Gemini 图像生成模型的安全设置效果,平台提供免费额度和多模型统一接口。


参考资料

⚠️ 链接格式说明: 所有外链使用 资料名: domain.com 格式,方便复制但不可点击跳转,避免 SEO 权重流失。

  1. Gemini API 安全设置官方文档: Google 官方指南

    • 链接: ai.google.dev/gemini-api/docs/safety-settings
    • 说明: 权威的安全设置配置说明和 API 参考
  2. Vertex AI 安全过滤器配置: Google Cloud 文档

    • 链接: cloud.google.com/vertex-ai/generative-ai/docs/multimodal/configure-safety-filters
    • 说明: 企业级 Vertex AI 的安全配置详解
  3. Gemini 安全指南: 开发者最佳实践

    • 链接: ai.google.dev/gemini-api/docs/safety-guidance
    • 说明: 安全使用 Gemini API 的官方建议
  4. Firebase AI Logic 安全设置: Firebase 集成指南

    • 链接: firebase.google.com/docs/ai-logic/safety-settings
    • 说明: Firebase 环境下的安全设置配置

作者: 技术团队
技术交流: 欢迎在评论区讨论,更多资料可访问 APIYI apiyi.com 技术社区

موضوعات ذات صلة