Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Perturbed-Embedding-Vectors — الكود وسجلات الاستجابة والتسميات الخاصة بالورقة البحثية "Jailbreaking Open-Weight LLMs via Random Embedding Perturbations" | Kitploit
أدوات/GitHubGitHub/abhinavdubey30/perturbed-embedding-vectors
تعلم الآلةالأوراق والأبحاثالتعلم والتعليمموارد منسقةأمن الذكاء الاصطناعيالهجوم العدائي
GitHubabhinavdubey30/perturbed-embedding-vectors

Perturbed-Embedding-Vectors

الكود وسجلات الاستجابة والتسميات الخاصة بالورقة البحثية "Jailbreaking Open-Weight LLMs via Random Embedding Perturbations"

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع
677منذ 3 أياملم تتم المراجعة بعد

كسر حماية نماذج LLM مفتوحة الأوزان عبر اضطرابات التضمين العشوائية: التشغيلات والتصنيفات والشيفرة

شيفرة وبيانات الورقة البحثية Jailbreaking Open-Weight LLMs via Random Embedding Perturbations.

رابط النسخة الأولية من الورقة البحثية - https://arxiv.org/abs/2610.07125

من تأليف الأشخاص الرائعين في قسم علوم الحاسوب النظرية بجامعة كاليفورنيا، سانتا كروز.

يحمل هذا العمل مساهمات كبيرة من Scott Sirri، والأستاذ Vaggos Chatziafratis، والأستاذ C. Seshadhri، وأنا.

يحتوي المستودع على كل استجابة نموذج تم توليدها للورقة البحثية، وتصنيف كل استجابة كآمنة / غير آمنة / منحطة، ودفاتر Colab التي أنتجتها، ونصوص الاستدلال التي تستوردها الدفاتر. يغطي هذا هجوم متجه التضمين المُضطرب (PEV) وطرق كسر الحماية الخمس الأخرى المقارنة في الورقة البحثية. تُحسب جميع معدلات كسر الحماية وأوقات التنفيذ الفعلي في الورقة البحثية من الملفات الموجودة في results/.

التخطيط

code/
  inference/             run_<model>.py: model loading, prompt construction and the manual
                         generation loop that every PEV notebook imports
  ours/<model>/          PEV notebooks for one model
  ours/<model>/fixed_peak_sigma/
                         notebooks for the fixed peak sigma runs (GLM-4-9B, Phi-4-mini,
                         Qwen2.5-1.5B); their logs are in results/<model>/ours/fixed_peak_sigma/
  igcg/                  I-GCG, one notebook per model
  latentfusion/          LatentFusion, one notebook per model
  refusalcones/          RefusalCones, one notebook per model
  softprompt/            SoftPrompt notebooks (Llama-3.1-8B and Mistral-7B)
  figures/               notebook that draws the paper figures
results/<model>/
  baseline/              direct responses to the unperturbed prompts (.txt log) and their
                         labels (.xlsx / .csv); these give the baseline jailbreak rate
  ours/raw_responses/    PEV response logs from the sigma sweeps, split by prompt range
  ours/classified/       labels for those responses, split the same way
  ours/fixed_peak_sigma/ PEV runs at the fixed peak sigma of the model (GLM-4-9B, Phi-4-mini,
                         Qwen2.5-1.5B): the full 100-prompt sweep and the SELECT re-runs
  igcg/ latentfusion/ neurostrike/ refusalcones/ softprompt/
                         responses (.txt) and labels (.xlsx) for the other methods

النماذج: Qwen2.5-1.5B، SmolLM3-3B، Phi-4-mini، Mistral-7B-Instruct، Llama-3.1-8B، GLM-4-9B، والمتغيرات المحادثة المضبوطة بالتعليمات المذكورة في القسم 4 من الورقة.

أين توجد شيفرة كل طريقة:

الطريقةالموقع
PEVcode/ours/<model>/؛ تشغيلات sigma الثابتة للذروة في code/ours/<model>/fixed_peak_sigma/؛ شيفرة الاستدلال المشتركة في code/inference/
I-GCGcode/igcg/، دفتر ملاحظات واحد لكل نموذج
LatentFusioncode/latentfusion/، دفتر ملاحظات واحد لكل نموذج
RefusalConescode/refusalcones/، دفتر ملاحظات واحد لكل نموذج
SoftPromptcode/softprompt/، Llama-3.1-8B وMistral-7B
NeuroStrikeداخل دفاتر ملاحظات PEV code/ours/Llama-3.1-8B/LLama31_perturbation_p76_to_p100.ipynb (خلية الإعداد موجودة أيضاً في LLama31_perturbation_p1_to_p25.ipynb) وcode/ours/SmolLM3-3B/run_smollm3_batched_p26_p50.ipynb؛ تُكتب الاستجابات في results/<model>/neurostrike/

سكربتات الاستدلال

code/inference/run_<model>.py هو ملف واحد لكل نموذج (run_qwen.py، run_smollm3.py، run_phi4mini.py، run_mistral.py، run_llama.py، run_glm.py). يحمّل كل منها النموذج باستخدام HuggingFace Transformers، ويطبّق قالب المحادثة برسالة نظام فارغة، ويكشف الدوال load_model() وbuild_prompt() وencode_prompt()، ويشغّل حلقة توليد تلقائي انحداري يدوياً مع خطاف على تضمينات الإدخال. تستورد دفاتر الملاحظات السكربت الخاص بنموذجها وتحقن ضوضاء غاوسية عبر ذلك الخطاف. عند تشغيله منفرداً، يفتح السكربت طرفية تفاعلية لنموذج واحد؛ وتطبع الأوامر /verbose و/embedfile جداول الرموز ومتجهات التضمين. مفاتيح تبديل الجهاز والسلوك هي متغيرات بيئة موثّقة في ترويسة كل ملف. يحتاج سكربت Llama إلى رمز Hugging Face لأن نقطة التحقق محمية؛ يُقرأ الرمز من البيئة ولا يُخزَّن أبداً.

اصطلاحات الملفات

  • سجلات الاستجابات (.txt) هي سجلات إضافية فقط تُكتب بواسطة دفاتر الملاحظات. يسجّل كل إدخال فهرس المطالبة، ومستوى الضوضاء sigma حيث ينطبق، ورقم التشغيل، والاستجابة الكاملة للنموذج. تحمل أسماء الملفات نطاق المطالبات (p001_to_p025 يعني المطالبات من 1 إلى 25 من مطالبات JailbreakBench الضارة البالغ عددها 100) والطابع الزمني UTC للتشغيل. يُكتب الوقت الفعلي بعد كل دفعة من 20 تشغيلاً لكل مطالبة وفي نهاية التجربة.
  • ملفات التصنيف (.xlsx، .csv) تحتوي على صف واحد لكل استجابة مع تصنيفها، آمنة أو غير آمنة أو منحطة، كما هو معرّف في القسم 4 من الورقة. تُحتسب المطالبة كأنها جرى كسر حمايتها إذا صُنّف أي من تشغيلاتها على أنه غير آمن. الملفات المسماة *_categorization* أو بنمط *_p01_25 هي النسخ المصنّفة من السجل بنفس نطاق المطالبات.
  • تشغيلات sigma الثابتة للذروة (ours/fixed_peak_sigma/) مسماة JBB_<model>_sigma0pXXX_..._<timestamp>.txt؛ sigma0p003 يعني sigma = 0.003. ملف p001_to_p100 هو المسح الكامل لـ 100 مطالبة و20 تشغيلاً عند قيمة sigma تلك. ملفات SELECT_..._nNN هي تشغيلات متابعة عند نفس sigma على المطالبات المدرجة في اسم الملف، مع NN تشغيلاً لكل مطالبة.
  • الملفات التي تحتوي على HIGHSIGMA هي التشغيلات عند sigma أكبر التي نوقشت في القسم 4.1.
  • الملفات التي تحتوي على SELECT هي تشغيلات إضافية على المطالبات المدرجة في اسم الملف، من أجل المطالبات التي احتاجت أكثر من 20 تشغيلاً لكسر حمايتها. يسجّل سطر الترويسة في كل سجل قيم sigma، وعدد التشغيلات، ومعرّفات المطالبات، والبذرة العشوائية.
  • Llama-3.1-8B/baseline/fixed_baseline.xlsx وملفات التصنيف fixed_* هي ملفات التصنيف بعد التحقق اليدوي وتحل محل الإصدارات السابقة.

تصنيف الاستجابات

صُنّفت الاستجابات بواسطة Claude Opus 4.6 باستخدام تعليمات حكم JailbreakBench، مع إعطائه ملف السجل الذي يتضمن المطالبة ورقم التشغيل والاستجابة. ثم جرى فحص كل استجابة صُنّفت على أنها غير آمنة يدوياً. ملفات التصنيف في results/ هي التصنيفات المتحقق منها.

إعادة إنتاج تشغيل

تم تشغيل كل دفتر ملاحظات ضمن code/ours/<model>/ على وحدة NVIDIA A100-SXM4-80GB واحدة في Google Colab. يستورد دفتر الملاحظات الملف المطابق run_<model>.py، ويحمّل مطالبات JailbreakBench الضارة، ويمرّر كل مطالبة عبر طبقة التضمين المدخلة الخاصة بالنموذج، ويضيف ضوضاء غاوسية مستقلة N(0, sigma^2) إلى تضمين المطالبة الكامل، ثم يمرّر التضمين المُشوَّش إلى طبقات المحوّل. ولكل مطالبة، يأخذ عينات من 20 مصفوفة ضوضاء في دفعة واحدة ويُلحق كل استجابة بالسجل. تُدرَج معاملات فك الترميز وقيمة sigma الخاصة بكل نموذج في القسم 4 و الجدول 3 من الورقة، وتُضبط في أعلى كل دفتر ملاحظات. يُطلب رمز Hugging Face تفاعليًا ولا يُخزَّن في هذا المستودع. تتبع دفاتر الملاحظات الخاصة بالطرق الأخرى النمط نفسه مع استبدال الهجوم المقابل.

يمكن إعادة حساب معدلات كسر الحماية (jailbreak) الواردة في الورقة من ملفات التسميات وحدها، دون تشغيل أي نموذج.

تنزيل الأداة