Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
heretic — إزالة الرقابة تلقائيًا بالكامل لنماذج اللغة | Kitploit
أدوات/GitHubGitHub/p-e-w/heretic
الاستغلالتعلم الآلةالأوراق والأبحاثالتعلم والتعليمأمن الذكاء الاصطناعيالهجوم العدائي
GitHubp-e-w/heretic

heretic

إزالة الرقابة تلقائيًا بالكامل لنماذج اللغة

عرض المستودع
27.3k3.0k121منذ 3 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
الموقع الإلكتروني
مشاركة
الشعار

Heretic: إزالة الرقابة تلقائيًا بالكامل عن نماذج اللغة

Discord

Matrix
Follow us on Hugging Face
Codeberg mirror

#1 Repository of the Day

Heretic هي أداة تزيل الرقابة (المعروفة أيضًا باسم "مواءمة السلامة") من نماذج اللغة القائمة على المحولات دون الحاجة إلى تدريب لاحق مكلف. تجمع بين تنفيذ متقدم للإزالة الاتجاهية (directional ablation)، المعروفة أيضًا باسم "abliteration" (Arditi et al. 2024، Lai 2025 (1، 2))، ومحسِّن معاملات قائم على TPE مدعوم من Optuna.

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

يدعم Heretic معظم النماذج الكثيفة، بما في ذلك العديد من النماذج متعددة الوسائط، وعدة بنى MoE مختلفة، وحتى بعض النماذج الهجينة مثل Qwen3.5. أما النماذج النقية القائمة على فضاء الحالة وبعض البنى البحثية الأخرى فغير مدعومة بعد بشكل مباشر.

لقطة شاشة

 

عند تشغيله دون إشراف بالإعدادات الافتراضية، يمكن لـ Heretic إنتاج نماذج غير خاضعة للرقابة تضاهي في الجودة نماذج abliteration التي أنشأها خبراء بشريون يدويًا:

النموذجحالات الرفض للمطالبات "الضارة"تباعد KL عن النموذج الأصلي للمطالبات "غير الضارة"
google/gemma-3-12b-it (الأصلي)97/1000 (بحكم التعريف)
mlabonne/gemma-3-12b-it-abliterated-v23/1001.04
huihui-ai/gemma-3-12b-it-abliterated3/1000.45
p-e-w/gemma-3-12b-it-heretic (خاصتنا)3/1000.16

نسخة Heretic، التي أُنشئت دون أي جهد بشري، تحقق المستوى نفسه من قمع حالات الرفض الذي تحققه نماذج abliteration الأخرى، ولكن مع تباعد KL أقل بكثير، مما يشير إلى ضرر أقل لقدرات النموذج الأصلي. (يمكنك إعادة إنتاج هذه الأرقام باستخدام وظيفة التقييم المدمجة في Heretic، مثل heretic --model google/gemma-3-12b-it --evaluate-model p-e-w/gemma-3-12b-it-heretic. لاحظ أن القيم الدقيقة قد تعتمد على المنصة والعتاد. الجدول أعلاه أُعد باستخدام PyTorch 2.8 على بطاقة RTX 5090.)

بالطبع، لا تروي المقاييس الرياضية والاختبارات المعيارية الآلية القصة كاملة أبدًا، ولا تُغني عن التقييم البشري. لاقت النماذج التي أنشأتها Heretic استحسانًا من المستخدمين (الروابط والتشديد مضافان):

"كنتُ متشككًا من قبل، لكنني حمّلت للتو نموذج GPT-OSS 20B Heretic ويا للهول! إنه يقدّم ردودًا طويلة منسقة بشكل صحيح حول مواضيع حساسة، باستخدام الكلمات غير الخاضعة للرقابة تمامًا التي تتوقعها من نموذج غير خاضع للرقابة، وينتج جداول بتنسيق markdown مع التفاصيل وما إلى ذلك. يبدو أن هذه أفضل نسخة abliterated من هذا النموذج حتى الآن..." (رابط التعليق)

"Heretic GPT 20b يبدو أنه أفضل نموذج غير خاضع للرقابة جربته حتى الآن. إنه لا يدمر ذكاء النموذج، بل يجيب على الاستفسارات التي كان النموذج الأساسي سيرفضها عادةً." (رابط التعليق)

"[Qwen3-4B-Instruct-2507-heretic] هو أفضل نموذج abliterated غير مكمّم تمكنت من تشغيله على ذاكرة فيديو سعتها 16 جيجابايت." (رابط التعليق)

كما خضعت نماذج Heretic لاختبارات معيارية مستقلة باستخدام مقاييس قياسية مثل MMLU وGSM8K، وتبيّن أنها تنافس بشكل إيجابي النماذج التي تنتجها أدوات abliteration المنافسة: 1، 2.

وقد أنشأ المجتمع ونشر أكثر من 4000 نموذج باستخدام Heretic.

الاستخدام

جهّز بيئة Python 3.10+ مع تثبيت PyTorch 2.2+ بما يناسب عتادك. ثم نفّذ:

root@kitploit:~
pip install -U heretic-llm
heretic Qwen/Qwen3-4B-Instruct-2507

استبدل Qwen/Qwen3-4B-Instruct-2507 بأي نموذج تريد إزالة الرقابة عنه.

[!IMPORTANT]

على الرغم من أن PyTorch 2.2 هو الحد الأدنى لإصدار PyTorch المطلوب لكي يعمل Heretic، فقد تتطلب بعض النماذج والإعدادات ميزات غير موجودة إلا في الإصدارات الأحدث. على سبيل المثال، يستخدم تحميل النماذج المكمّمة بـ MXFP4 مثل gpt-oss ميزة torch.accelerator، التي أُضيفت في PyTorch 2.6.

[!TIP]

يستخدم Heretic uv لإدارة التبعيات، ويشتمل المستودع على ملف uv.lock يثبّت إصدار كل حزمة. إذا كنت تستخدم uv بالفعل (وينبغي عليك فعل ذلك على الأرجح!)، يمكنك ببساطة استنساخ المستودع وتشغيل Heretic باستخدام uv run heretic، مما يضمن تطابق تبعياتك مع تلك التي يستخدمها المطوّرون، وهو ما يحسّن الموثوقية والأمان.

العملية تلقائية بالكامل ولا تتطلب أي إعداد؛ ومع ذلك، تمتلك Heretic مجموعة متنوعة من معاملات الإعداد يمكن تغييرها لمزيد من التحكم. نفّذ heretic --help لعرض خيارات سطر الأوامر المتاحة، أو اطّلع على config.default.toml إذا كنت تفضّل استخدام ملف إعداد.

في بداية كل تشغيل للبرنامج، تجري Heretic اختبارًا معياريًا للنظام لتحديد حجم الدفعات الأمثل للاستفادة القصوى من العتاد المتاح. على بطاقة RTX 3090، ومع الإعدادات الافتراضية، تستغرق إزالة الرقابة عن Qwen3-4B-Instruct-2507 حوالي 20-30 دقيقة. لاحظ أن Heretic تدعم تكميم النماذج باستخدام bitsandbytes، وهو ما يمكن أن يقلل بشكل كبير من مقدار ذاكرة الفيديو المطلوبة لمعالجة النماذج. اضبط خيار quantization على bnb_4bit لتفعيل التكميم.

بعد انتهاء Heretic من إزالة الرقابة عن نموذج، يُعرض عليك خيار حفظ النموذج، أو رفعه إلى Hugging Face، أو الدردشة معه لاختبار مدى جودة عمله، أو تشغيل اختبارات معيارية قياسية عليه، أو أي مجموعة من هذه الإجراءات.

ميزات البحث

بالإضافة إلى وظيفته الأساسية المتمثلة في إزالة رقابة النماذج، يوفّر Heretic أيضًا ميزات مصممة لدعم البحث في دلالات البنى الداخلية للنماذج (قابلية التفسير). لاستخدام هذه الميزات، تحتاج إلى تثبيت Heretic مع الحزمة الاختيارية research:

root@kitploit:~
pip install -U 'heretic-llm[research]'

يمنحك هذا إمكانية الوصول إلى الوظائف التالية:

إنشاء رسوم بيانية لمتجهات البقايا بتمرير --plot-residuals

عند تشغيله مع هذا العلم، سيقوم Heretic بما يلي:

  1. حساب متجهات البقايا (الحالات الكامنة) لرمز الإخراج الأول، لكل طبقة محول، لكل من المطالبات "الضارة" و"غير الضارة".
  2. تنفيذ إسقاط PaCMAP من فضاء البقايا إلى فضاء ثنائي الأبعاد.
  3. محاذاة إسقاطات بقايا المطالبات "الضارة"/"غير الضارة" من اليسار إلى اليمين وفقًا لوسيطاتها الهندسية لجعل إسقاطات الطبقات المتتالية أكثر تشابهًا. بالإضافة إلى ذلك، تتم تهيئة PaCMAP بإسقاطات الطبقة السابقة لكل طبقة جديدة، مما يقلل من الانتقالات المزعجة.
  4. إنشاء رسم مبعثر للإسقاطات، مع توليد صورة PNG لكل طبقة.
  5. إنشاء رسم متحرك يوضح كيفية تحول البقايا بين الطبقات، بصيغة GIF متحركة.
رسم بياني لمتجهات البقايا

راجع ملف الإعداد للاطلاع على الخيارات التي تتيح لك التحكم في جوانب مختلفة من الرسوم البيانية المُنشأة.

لاحظ أن PaCMAP عملية مكلفة تُنفَّذ على المعالج المركزي. بالنسبة إلى النماذج الأكبر حجمًا، قد يستغرق حساب الإسقاطات لجميع الطبقات ساعة أو أكثر.

طباعة تفاصيل حول هندسة البقايا بتمرير --print-residual-geometry

إذا كنت مهتمًا بتحليل كمّي لكيفية ترابط متجهات البقايا لمطالبات "الضارة" و"غير الضارة" مع بعضها البعض، فإن هذا العلم يمنحك الجدول التالي، المليء بالمقاييس التي يمكن أن تسهّل فهم ذلك (بالنسبة إلى gemma-3-270m-it في هذه الحالة):

root@kitploit:~
┏━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━┓
┃ Layer ┃ S(g,b) ┃ S(g*,b*) ┃  S(g,r) ┃ S(g*,r*) ┃  S(b,r) ┃ S(b*,r*) ┃      |g| ┃     |g*| ┃      |b| ┃     |b*| ┃     |r| ┃    |r*| ┃   Silh ┃
┡━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━┩
│     1 │ 1.0000 │   1.0000 │ -0.4311 │  -0.4906 │ -0.4254 │  -0.4847 │   170.29 │   170.49 │   169.78 │   169.85 │    1.19 │    1.31 │ 0.0480 │
│     2 │ 1.0000 │   1.0000 │  0.4297 │   0.4465 │  0.4365 │   0.4524 │   768.55 │   768.77 │   771.32 │   771.36 │    6.39 │    5.76 │ 0.0745 │
│     3 │ 0.9999 │   1.0000 │ -0.5699 │  -0.5577 │ -0.5614 │  -0.5498 │  1020.98 │  1021.13 │  1013.80 │  1014.71 │   12.70 │   11.60 │ 0.0920 │
│     4 │ 0.9999 │   1.0000 │  0.6582 │   0.6553 │  0.6659 │   0.6627 │  1356.39 │  1356.20 │  1368.71 │  1367.95 │   18.62 │   17.84 │ 0.0957 │
│     5 │ 0.9987 │   0.9990 │ -0.6880 │  -0.6761 │ -0.6497 │  -0.6418 │   766.54 │   762.25 │   731.75 │   732.42 │   51.97 │   45.24 │ 0.1018 │
│     6 │ 0.9998 │   0.9998 │ -0.1983 │  -0.2312 │ -0.1811 │  -0.2141 │  2417.35 │  2421.08 │  2409.18 │  2411.40 │   43.06 │   43.47 │ 0.0900 │
│     7 │ 0.9998 │   0.9997 │ -0.5258 │  -0.5746 │ -0.5072 │  -0.5560 │  3444.92 │  3474.99 │  3400.01 │  3421.63 │   86.94 │   94.38 │ 0.0492 │
│     8 │ 0.9990 │   0.9991 │  0.8235 │   0.8312 │  0.8479 │   0.8542 │  4596.54 │  4615.62 │  4918.32 │  4934.20 │  384.87 │  377.87 │ 0.2278 │
│     9 │ 0.9992 │   0.9992 │  0.5335 │   0.5441 │  0.5678 │   0.5780 │  5322.30 │  5316.96 │  5468.65 │  5466.98 │  265.68 │  267.28 │ 0.1318 │
│    10 │ 0.9974 │   0.9973 │  0.8189 │   0.8250 │  0.8579 │   0.8644 │  5328.81 │  5325.63 │  5953.35 │  5985.15 │  743.95 │  779.74 │ 0.2863 │
│    11 │ 0.9977 │   0.9978 │  0.4262 │   0.4045 │  0.4862 │   0.4645 │  9644.02 │  9674.06 │  9983.47 │  9990.28 │  743.28 │  726.99 │ 0.1576 │
│    12 │ 0.9904 │   0.9907 │  0.4384 │   0.4077 │  0.5586 │   0.5283 │ 10257.40 │ 10368.50 │ 11114.51 │ 11151.21 │ 1711.18 │ 1664.69 │ 0.1890 │
│    13 │ 0.9867 │   0.9874 │  0.4007 │   0.3680 │  0.5444 │   0.5103 │ 12305.12 │ 12423.75 │ 13440.31 │ 13432.47 │ 2386.43 │ 2282.47 │ 0.1293 │
│    14 │ 0.9921 │   0.9922 │  0.3198 │   0.2682 │  0.4364 │   0.3859 │ 16929.16 │ 17080.37 │ 17826.97 │ 17836.03 │ 2365.23 │ 2301.87 │ 0.1282 │
│    15 │ 0.9846 │   0.9850 │  0.1198 │   0.0963 │  0.2913 │   0.2663 │ 16858.58 │ 16949.44 │ 17496.00 │ 17502.88 │ 3077.08 │ 3029.60 │ 0.1611 │
│    16 │ 0.9686 │   0.9689 │ -0.0029 │  -0.0254 │  0.2457 │   0.2226 │ 18912.77 │ 19074.86 │ 19510.56 │ 19559.62 │ 4848.35 │ 4839.75 │ 0.1516 │
│    17 │ 0.9782 │   0.9784 │ -0.0174 │  -0.0381 │  0.1908 │   0.1694 │ 27098.09 │ 27273.00 │ 27601.12 │ 27653.12 │ 5738.19 │ 5724.21 │ 0.1641 │
│    18 │ 0.9184 │   0.9196 │  0.1343 │   0.1430 │  0.5155 │   0.5204 │   190.16 │   190.35 │   219.91 │   220.62 │   87.82 │   87.59 │ 0.1855 │
└───────┴────────┴──────────┴─────────┴──────────┴─────────┴──────────┴──────────┴──────────┴──────────┴──────────┴─────────┴─────────┴────────┘
g = mean of residual vectors for good prompts
g* = geometric median of residual vectors for good prompts
b = mean of residual vectors for bad prompts
b* = geometric median of residual vectors for bad prompts
r = residual direction for means (i.e., b - g)
r* = residual direction for geometric medians (i.e., b* - g*)
S(x,y) = cosine similarity of x and y
|x| = L2 norm of x
Silh = Mean silhouette coefficient of residuals for good/bad clusters

كيف تعمل Heretic

تنفّذ Heretic نسخة مُعاملات من الإزالة الاتجاهية. بالنسبة إلى كل مكوّن محول مدعوم (حاليًا، إسقاط مخرجات الانتباه والإسقاط التنازلي لـ MLP)، تحدّد المصفوفات المرتبطة به في كل طبقة محول، وتعامدها بالنسبة إلى "اتجاه البقايا" ذي الصلة، مما يمنع التعبير عن ذلك الاتجاه في نتائج عمليات الضرب بتلك المصفوفة.

تُحسب اتجاهات البقايا لكل طبقة على أنها الفرق بين متوسطي بقايا الرمز الأول لمطالبات الأمثلة "الضارة" و"غير الضارة".

تتحكم عدة معاملات قابلة للتحسين في عملية الإزالة:

  • direction_index: إما فهرس اتجاه بقايا، أو القيمة الخاصة per layer، التي تشير إلى أنه يجب إزالة كل طبقة باستخدام اتجاه البقايا المرتبط بتلك الطبقة.
  • max_weight وmax_weight_position وmin_weight وmin_weight_distance: تصف هذه المعاملات، لكل مكوّن، شكل وموضع نواة أوزان الإزالة عبر الطبقات. يوضح المخطط التالي ذلك:
شرح

 

تتمثل أبرز ابتكارات Heretic مقارنةً بأنظمة abliteration الحالية في:

  • أن شكل نواة أوزان الإزالة مرن للغاية، وهو ما يمكن، عند دمجه مع التحسين التلقائي للمعاملات، من تحسين المفاضلة بين الامتثال والجودة. كانت أوزان الإزالة غير الثابتة قد استُكشفت سابقًا بواسطة Maxime Labonne في gemma-3-12b-it-abliterated-v2.
  • أن فهرس اتجاه البقايا رقم عشري (float) وليس عددًا صحيحًا. بالنسبة إلى القيم غير الصحيحة، يتم استيفاء أقرب متجهي اتجاه بقايا خطيًا. يفتح هذا مجالًا واسعًا من الاتجاهات الإضافية إلى جانب تلك التي يحددها حساب الفرق بين المتوسطات، وغالبًا ما يمكّن عملية التحسين من العثور على اتجاه أفضل من الاتجاه الذي ينتمي إلى أي طبقة بمفردها.
  • أن معاملات الإزالة تُختار بشكل منفصل لكل مكوّن. وجدتُ أن تدخلات MLP تميل إلى إلحاق ضرر أكبر بالنموذج من تدخلات الانتباه، لذا فإن استخدام أوزان إزالة مختلفة يمكن أن يستخرج بعض الأداء الإضافي.

الأعمال السابقة

أنا على علم بالتنفيذات المتاحة للعموم التالية لتقنيات abliteration:

  • AutoAbliteration
  • abliterator.py
  • wassname's Abliterator
  • ErisForge
  • Removing refusals with HF Transformers
  • deccp

لاحظ أن Heretic كُتب من الصفر، ولا يعيد استخدام كود من أي من تلك المشاريع.

شكر وتقدير

استفاد تطوير Heretic من:

  • ورقة abliteration الأصلية (Arditi et al. 2024)
  • مقال Maxime Labonne حول abliteration، بالإضافة إلى بعض التفاصيل من بطاقات نماذجه غير الخاضعة للرقابة (انظر أعلاه)
  • مقالا Jim Lai اللذان يصفان "projected abliteration" و"norm-preserving biprojected abliteration"

الاستشهاد

إذا كنت تستخدم Heretic في بحثك، فيرجى الاستشهاد به باستخدام إدخال BibTeX التالي:

root@kitploit:~
@misc{heretic,
  author = {Weidmann, Philipp Emanuel},
  title = {Heretic: Fully automatic censorship removal for language models},
  year = {2025},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/p-e-w/heretic}}
}

الترخيص

حقوق النشر © 2025-2026 Philipp Emanuel Weidmann ([email protected]) + المساهمون

هذا البرنامج برمجيات حرة: يمكنك إعادة توزيعه و/أو تعديله بموجب شروط رخصة جنو أفيرو العمومية كما نشرتها مؤسسة البرمجيات الحرة، سواء الإصدار 3 من الرخصة أو (حسب اختيارك) أي إصدار لاحق.

يُوزَّع هذا البرنامج على أمل أن يكون مفيدًا، ولكن دون أي ضمان؛ حتى دون الضمان الضمني للقابلية للتسويق أو الملاءمة لغرض معين. راجع رخصة جنو أفيرو العمومية لمزيد من التفاصيل.

كان ينبغي أن تكون قد تسلمت نسخة من رخصة جنو أفيرو العمومية مع هذا البرنامج. إذا لم تكن قد تسلمتها، فراجع https://www.gnu.org/licenses/.

بمساهمتك في هذا المشروع، فإنك توافق على إصدار مساهماتك بموجب الرخصة نفسها.

تنزيل الأداة