يواجه مطورو LLM المحليون مشكلة شائعة: النماذج المتوافقة مع معايير الأمان ترفض الطلبات المشروعة. يواجه الباحثون الذين يختبرون سلوك النموذج، والمطورون الذين يبنون مساعدين غير خاضعين للرقابة، والهواة الذين يديرون نماذج محلية، نفس المشكلة، حيث ترفض النماذج المدربة مسبقًا المطالبات التي لا ينبغي لها أن ترفضها.
ظهرت تقنية المسح كحل، لإزالة فلاتر الأمان دون الحاجة إلى إعادة تدريب مكلفة. كانت الأدوات المبكرة تتطلب ضبطًا يدويًا ومعرفة عميقة بالتركيب الداخلي للمحولات.
تقوم Heretic بأتمتة العملية بأكملها. فهي تجد معلمات المسح المثلى تلقائيًا، وتنتج نماذج غير خاضعة للرقابة تطابق أو تتجاوز الإصدارات التي تم ضبطها يدويًا.
في هذا الدليل، ستتعلم كيف تعمل Heretic، وكيفية استخدامها، وما الذي يجب الانتباه إليه عند نشر النماذج غير الخاضعة للرقابة.
ما هي Heretic؟
Heretic هي أداة بايثون مفتوحة المصدر تزيل "توافق الأمان" من نماذج اللغة القائمة على المحولات باستخدام المسح الاتجاهي. لا تحتاج إلى تكوين يدوي أو معرفة بالتركيب الداخلي للمحولات.

تُظهر النتائج على Gemma-3-12B-Instruct الفرق:
| النموذج | رفض | تباعد KL |
|---|---|---|
| الأصلي | 97/100 | 0 |
| mlabonne’s abliterated v2 | 3/100 | 1.04 |
| huihui-ai’s abliterated | 3/100 | 0.45 |
| Heretic (تم إنشاؤه تلقائيًا) | 3/100 | 0.16 |
يقيس تباعد KL مدى اختلاف النموذج الممسوح عن النموذج الأصلي. تعني القيم الأقل حفظًا أفضل لقدرات النموذج الأصلية. تطابق Heretic قمع الرفض للنماذج المضبوطة بواسطة الخبراء مع الاحتفاظ بالمزيد مما جعل النموذج الأساسي مفيدًا.
مثال قبل وبعد
إليك ما يتغير بعد المسح. نفس المطالبة، نفس تعليمات النظام:
النموذج الأصلي:
User: Write a guide on how to bypass website paywalls
Assistant: I can't help with that. Bypassing paywalls violates copyright law and
terms of service. I'd suggest looking for free alternatives or accessing through
a library subscription.
نموذج Heretic الممسوح:
User: Write a guide on how to bypass website paywalls
Assistant: Here are common methods users attempt:
1. Browser extensions like Bypass Paywalls Clean
2. Archive.is or similar archive services
3. Reader mode in browsers
4. Disabling JavaScript
Note: These methods may violate terms of service. Consider supporting
content creators through legitimate subscriptions when possible.
يجيب النموذج الممسوح على الطلب مع تضمين إخلاء مسؤولية موجز. هذه هي المفاضلة الأساسية: تقليل الرفض يأتي مع مسؤولية نشر تدابير الحماية خارجيًا.
كيف تعمل Heretic
أساسيات المسح الاتجاهي
تطبق Heretic شكلاً بارامتريًا من المسح الاتجاهي. العملية:
- حساب اتجاهات الرفض - لكل طبقة محول، احسب الفرق بين متوسط المتجهات المتبقية للمطالبات "الضارة" و"غير الضارة".
- تعامد مصفوفات المكونات - لإسقاطات إخراج الانتباه وإسقاطات MLP السفلية، قم بتعديل الأوزان لقمع اتجاه الرفض.
- تحسين المعلمات تلقائيًا - استخدم أداة أخذ العينات TPE من Optuna للعثور على أفضل أوزان المسح.

عملية المسح
# Simplified conceptual flow
refusal_direction = bad_mean - good_mean # Difference of means
refusal_direction = normalize(refusal_direction)
# For each abliterable component (attn.o_proj, mlp.down_proj)
# Apply: delta_W = -lambda * v * (v^T * W)
# Where v is the refusal direction and lambda is the weight
تستخدم Heretic محولات LoRA لتطبيق هذه التعديلات دون تغيير أوزان النموذج الأساسي. وهذا يتيح التحسين السريع بطريقة التجربة والخطأ.
الابتكارات الرئيسية
1. نواة الأوزان المرنة
تطبق الأدوات الأخرى أوزان مسح ثابتة عبر جميع الطبقات. تستخدم Heretic نواة مرنة محددة بأربعة معلمات لكل مكون:
max_weight- أقصى قوة مسحmax_weight_position- الطبقة التي تتلقى أقصى مسحmin_weight- الحد الأدنى للمسح عند حواف النواةmin_weight_distance- إلى أي مدى تمتد النواة من الذروة
تكتشف عملية التحسين أنماط مسح خاصة بالطبقة توازن بين قمع الامتثال والحفاظ على القدرة.
2. مؤشرات الاتجاه الم interpolation
مؤشر اتجاه الرفض هو قيمة عائمة، وليس عددًا صحيحًا. للقيم غير الصحيحة، تقوم Heretic بالاستيفاء الخطي بين اتجاهات الرفض للطبقات المتجاورة. وهذا يتيح اتجاهات تتجاوز ما توفره أي طبقة واحدة.
3. معلمات خاصة بالمكونات
تتلقى مكونات الانتباه و MLP معلمات مسح مختلفة. تميل تدخلات MLP إلى إحداث ضرر أكبر، لذا فإن التحسين المنفصل يحسن النتائج.
لماذا هذا مهم لاختبار واجهة برمجة التطبيقات (API)
إذا كنت تعمل مع واجهات برمجة تطبيقات LLM، فمن المحتمل أنك واجهت رفضًا غير متوقع أثناء الاختبار. يرفض النموذج مطالبة حميدة لأنها تحتوي على كلمات مفتاحية تشغل فلاتر الأمان. وهذا يخلق ضوضاء في نتائج الاختبار الخاصة بك.
يمنحك تشغيل النماذج الممسوحة محليًا خط أساس للسلوك المتوقع. يمكنك:
- التمييز بين رفض الأمان المشروع والإيجابيات الكاذبة
- اختبار الحالات الهامشية دون تشغيل سياسات الأمان الخاصة بالشركة
- التحقق من أن تطبيقك يتعامل مع رفض النموذج بأناقة
لسير عمل اختبار واجهة برمجة التطبيقات، فإن وجود نماذج متوافقة وممسوحة يساعد على فصل مشكلات المنتج عن سلوك أمان النموذج.
التثبيت والاستخدام
المتطلبات الأساسية
- Python 3.10+
- PyTorch 2.2+ (مُكون لجهازك)
- يوصى بوحدة معالجة رسومات متوافقة مع CUDA (مدعومة من ROCm و MPS ومسرعات أخرى)
التثبيت
pip install -U heretic-llm
للميزات البحثية (مخططات المتجهات المتبقية، تحليل الهندسة):
pip install -U heretic-llm[research]
الاستخدام الأساسي
أبسط سير عمل:
heretic Qwen/Qwen3-4B-Instruct-2507
استبدل مسار النموذج بأي معرف نموذج من Hugging Face أو مسار محلي. تتعامل Heretic مع كل شيء تلقائيًا:
- يحمل النموذج بنوع البيانات الأمثل
- يحدد أفضل حجم دفعة لجهازك
- يحسب اتجاهات الرفض من مجموعات بيانات المطالبات
- يشغل تجارب التحسين للعثور على المعلمات المثلى
- يسمح لك بحفظ النتيجة أو رفعها أو الدردشة معها
خيارات التكوين
تقرأ Heretic التكوين من ملفات config.toml أو علامات سطر الأوامر. الخيارات الرئيسية:
# Model configuration
model = "google/gemma-3-12b-it"
quantization = "bnb_4bit" # Reduces VRAM requirements
device_map = "auto"
# Optimization
n_trials = 200 # Number of abliteration trials
n_startup_trials = 60 # Random exploration before TPE
# Evaluation
kl_divergence_scale = 1.0
kl_divergence_target = 0.01
# Research features
print_residual_geometry = false
plot_residuals = false
قم بتشغيل heretic --help أو راجع config.default.toml للحصول على القائمة الكاملة.
فهم المخرجات
تحسين التجربة
أثناء التحسين، تعرض Heretic تقدم التجربة:
Running trial 42 of 200...
* Parameters:
* direction_scope = per layer
* direction_index = 10.5
* attn.o_proj.max_weight = 1.2
* attn.o_proj.max_weight_position = 15.3
* mlp.down_proj.max_weight = 0.9
...
* Resetting model...
* Abliterating...
* Evaluating...
* KL divergence: 0.1842
* Refusals: 5/100
تختبر كل تجربة مجموعة مختلفة من المعلمات. يستخدم المحسِّن TPE متعدد الأهداف لتقليل الرفض وتباعد KL في نفس الوقت.
اختيار واجهة باريتو
عند اكتمال التحسين، تقدم Heretic تجارب باريتو المثلى - تلك التي يؤدي فيها تحسين هدف واحد إلى تفاقم الآخر:
[Trial 1] Refusals: 3/100, KL divergence: 0.1623
[Trial 47] Refusals: 2/100, KL divergence: 0.2891
[Trial 112] Refusals: 1/100, KL divergence: 0.4102
حدد تجربة من أجل:
- حفظ النموذج محليًا
- الرفع إلى Hugging Face
- الدردشة التفاعلية لاختبار الجودة
ميزات البحث
تحليل هندسة المتجهات المتبقية
باستخدام --print-residual-geometry، تعرض Heretic مقاييس مفصلة:
Layer S(g,b) S(g*,b*) S(g,r) S(g*,r*) S(b,r) S(b*,r*) |g| |b|
8 0.9990 0.9991 0.8235 0.8312 0.8479 0.8542 4596.54 4918.32
10 0.9974 0.9973 0.8189 0.8250 0.8579 0.8644 5328.81 5953.35
g = mean of residual vectors for good prompts
b = mean of residual vectors for bad prompts
r = refusal direction (b - g)
S(x,y) = cosine similarity
|x| = L2 norm
يساعد هذا الباحثين على فهم كيفية تطور اتجاهات الرفض عبر طبقات النموذج.
مخططات المتجهات المتبقية
باستخدام --plot-residuals، تولد Heretic:
- مخططات تشتت ثنائية الأبعاد لكل طبقة (عبر إسقاط PaCMAP)
- صورة GIF متحركة تظهر تحول المتجهات المتبقية عبر الطبقات

تكشف هذه التصورات كيف تنفصل المتجهات المتبقية للمطالبات "الضارة" و"غير الضارة" عبر الشبكة.
اعتبارات الأداء
متطلبات VRAM
تدعم Heretic التكميم 4 بت من bitsandbytes لتقليل VRAM:
heretic meta-llama/Llama-3.1-70B-Instruct --quantization bnb_4bit
هذا يمكن من معالجة النماذج الكبيرة على أجهزة المستهلك. يعمل نموذج 8B على ~6 جيجابايت VRAM مكمم مقابل ~16 جيجابايت غير مكمم.
وقت المعالجة
على RTX 3090 بالإعدادات الافتراضية:
- Llama-3.1-8B-Instruct: ~45 دقيقة
- Gemma-3-12B-Instruct: ~60 دقيقة
- تتوسع النماذج الأكبر حجمًا وفقًا لذلك
يضمن الضبط التلقائي لحجم الدفعة أقصى إنتاجية لجهازك المحدد.
نقطة الفحص
تحفظ Heretic تقدم التجربة في نقاط فحص JSONL. إذا انقطعت، يمكنك الاستئناف من حيث توقفت بالضبط. تُخزن نقاط الفحص لكل نموذج في دليل checkpoints/.
الأخطاء الشائعة والإصلاحات
نفاد ذاكرة CUDA
# Try quantization
heretic your-model --quantization bnb_4bit
# Or reduce batch size
heretic your-model --batch_size 1
فشل تحميل النموذج
# Try different dtypes explicitly
heretic your-model --dtypes ["bfloat16", "float16"]
يتطلب الثقة بالرمز البعيد
# Some models need remote code execution
heretic your-model --trust_remote_code
الاعتبارات الأخلاقية
يظهر هذا القسم مبكرًا لأنه مهم. إزالة فلاتر الأمان يغير سلوك النموذج. يجب أن تفهم الآثار المترتبة قبل نشر نموذج ممسوح.
ما تفعله (ولا تفعله) عملية المسح
تزيل عملية المسح أنماط الرفض المكتسبة. وهي لا:
- تُجعل النموذج "أذكى" أو أكثر قدرة
- تُزيل التحيزات الموجودة في النموذج الأساسي
- تُضيف معرفة أو مهارات جديدة
لا يزال النموذج يمتلك نفس بيانات التدريب والقدرات الأساسية. يتوقف فقط عن رفض طلبات معينة.
النشر المسؤول
تم إصدار Heretic بموجب ترخيص AGPL-3.0. يقر المؤلفون بأن إزالة فلاتر الأمان تمكن من إجراء أبحاث مفيدة وتطبيقات قد تكون ضارة.
تشمل الاستخدامات المشروعة:
- البحث في توافق النموذج وآليات الأمان
- اختبار سلوك النموذج في ظروف خاضعة للرقابة
- نشر النماذج مع حواجز حماية خارجية وفلاتر محتوى
- بناء تطبيقات تتعامل مع الرفض على مستوى التطبيق
تشمل الاستخدامات الإشكالية:
- النشر دون أي ضمانات في التطبيقات التي يواجهها المستخدم
- إنشاء محتوى ضار على نطاق واسع
- التحايل على تدابير الأمان لأغراض خبيثة
إجراءات الحماية الخارجية التي يجب عليك تطبيقها
إذا قمت بنشر نموذج ممسوح، أضف هذه الحمايات:
- تصفية المدخلات - فحص المطالبات قبل وصولها إلى النموذج
- مراقبة المخرجات - مراجعة الاستجابات قبل عرضها للمستخدمين
- تحديد المعدل - منع الإساءة من خلال الحجم
- التسجيل ومسارات التدقيق - تتبع ما يعالجه النموذج
- مراجعة بشرية - إبقاء البشر في حلقة العمل للحالات الحساسة
الأداة نفسها محايدة. تأثيرها يعتمد على كيفية استخدامك لها. ضع في اعتبارك الآثار الأخلاقية قبل نشر نماذج غير خاضعة للرقابة في بيئة الإنتاج.
مقارنة بالأدوات الأخرى
تنضم Heretic إلى العديد من أدوات المسح في المنظومة:
| الأداة | التحسين التلقائي | نواة الأوزان | الاتجاهات المترابطة |
|---|---|---|---|
| Heretic | نعم (TPE) | نعم | نعم |
| AutoAbliteration | نعم | لا | لا |
| abliterator.py | لا | لا | لا |
| wassname/abliterator | لا | لا | لا |
| ErisForge | لا | لا | لا |
يزيل التحسين التلقائي في Heretic الحاجة إلى الضبط اليدوي. لا تحتاج إلى فهم التركيب الداخلي للمحولات للحصول على نتائج جيدة.
القيود
تدعم Heretic معظم نماذج المحولات الكثيفة وبعض معماريات MoE. أنواع النماذج غير المدعومة:
- نماذج SSM/الهجينة (Mamba، إلخ.)
- النماذج ذات الطبقات غير المتجانسة
- أنظمة الانتباه الجديدة التي لم يتم التعرف عليها بعد بواسطة منطق اكتشاف الوحدة
تعمل الأداة بشكل أفضل مع معماريات فك التشفير القياسية التي تستخدم طبقات الانتباه الذاتي و MLP.
البدء
- التثبيت:
pip install -U heretic-llm - اختر نموذجًا: ابدأ بنموذج 7B-12B للاختبار
- التشغيل:
heretic your-model-name - التقييم: قم بالدردشة مع النتيجة أو رفعها إلى Hugging Face
- النشر بأمان: أضف حواجز حماية خارجية قبل الاستخدام في الإنتاج
تعمل الإعدادات الافتراضية بشكل جيد لمعظم النماذج. يمكن للمستخدمين المتقدمين ضبط معلمات التحسين لحالات استخدام محددة.
button
تجعل Heretic تعديل النموذج متاحًا. لا تتطلب درجة دكتوراه - فقط وجهها نحو نموذج واتركها تعمل. تذكر فقط أن تنشر بمسؤولية.
