
كود بحثي لاستخراج وتدريب اتجاهات الوعي بالسلامة في نماذج اللغات الكبيرة متعددة الوسائط لتحسين سلوك الرفض مع الحد من الانحراف عن المهام غير الضارة.
التنفيذ الرسمي لـ نقل الوعي بالسلامة للانجراف عبر الوسائط في السلامة في نماذج اللغة الكبيرة متعددة الوسائط (EMNLP 2026 Findings).
يحتوي هذا المستودع على خط أنابيب اتجاه الوعي بالسلامة لـ Qwen3-VL. يستخرج اتجاه تنشيط مرتبطًا بالرفض من أمثلة متعددة الوسائط ضارة وغير ضارة، ويختار الاتجاه الذي يحسّن سلوك الرفض مع الحد من انجراف المهام الحميدة، ويقوم اختياريًا بتدريب متجه وعي بالسلامة خاص بالاتجاه.
يدعم الكود حاليًا Qwen/Qwen3-VL-8B-Instruct عبر Hugging Face Transformers.
.
├── artifacts/directions/ # الاتجاه المحدد مسبقًا والبيانات الوصفية
├── data/csv/ # ملفات CSV المستخدمة في خط الأنابيب
├── data/images/ # جذور الصور المحلية (غير مضمنة)
├── directions/ # استخراج الاتجاه واختياره
├── models/ # أدوات نموذج Qwen3-VL والمعالج
├── training/ # تدريب اتجاه الوعي بالسلامة
├── utils/ # أدوات ربط التنشيط
├── config.py
├── run_pipeline.py # نقطة الدخول لتوليد الاتجاه واختياره
└── requirements.txt
يُوصى باستخدام Python 3.10+ وتثبيت PyTorch مع دعم CUDA.
git clone https://github.com/cucu220123/transfer-safety-awareness.git
cd transfer-safety-awareness
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
يقوم التشغيل الأول بتنزيل Qwen/Qwen3-VL-8B-Instruct من Hugging Face. تأكد من أن الجهاز لديه ذاكرة GPU كافية وأنك قبلت أي شروط نموذج مطلوبة من مزود النموذج.
يتضمن المستودع ملفات CSV المستخدمة في التجارب، لكنه لا يعيد توزيع مجموعات بيانات الصور المصدرية. احصل على الصور من مزودي مجموعات البيانات الأصلية وضعها تحت هذه الجذور المتعلقة بالمشروع:
data/images/vlsafe_images
data/images/vlsbench_imgs
data/images/mmvet_images
الربط هو:
يمكن تجاوز جذور الصور ومسارات CSV دون تعديل الكود:
export VLM_HARMFUL_IMAGE_ROOT=/path/to/vlsafe_images
export VLM_HARMLESS_IMAGE_ROOT=/path/to/vlsbench_imgs
export VLM_KL_IMAGE_ROOT=/path/to/mmvet_images
export VLM_HARMFUL_CSV=/path/to/harmful.csv
export VLM_HARMLESS_CSV=/path/to/harmless.csv
export VLM_KL_CSV=/path/to/benign_vqa.csv
يرجى اتباع التراخيص والشروط الخاصة بكل مجموعة بيانات مصدرية عند تنزيل الصور والملفات أو استخدامها.
لتشغيل توليد الاتجاهات المرشحة والاختيار القائم على التحقق:
CUDA_VISIBLE_DEVICES=0 python run_pipeline.py --direction_only
يستخدم الأمر 128 مثالًا للتدريب و32 مثالًا للتحقق لكل تقسيم افتراضيًا. يكتب النتائج الوسيطة إلى artifacts/direction_runs/<model-name>/ ويحفظ الاتجاه المحدد إلى:
artifacts/directions/qwen3vl_refusal_direction.pt
artifacts/directions/qwen3vl_refusal_direction_metadata.json
استخدم --model_path للإشارة إلى دليل نموذج محلي أو معرّف Hugging Face متوافق آخر. يعلّق علم --skip_filter مرحلة تصفية درجة الرفض.
يحتوي المستودع بالفعل على أداة اتجاه محسوبة مسبقًا لنقطة تفتيش Qwen3-VL الافتراضية، لذا يمكن تخطي هذه المرحلة عندما تكون تلك الأداة مناسبة لإعدادك.
يقوم التدريب بتحديث الاتجاه المحدد بأهداف المهام الحميدة والرفض المستخدمة في كود الورقة. مثال بأربع وحدات GPU:
CUDA_VISIBLE_DEVICES=0,1,2,3 torchrun --nproc_per_node=4 --master_port=29501 \
-m training.train_safety_awareness_direction \
--epochs 8 \
--batch_size 1 \
--grad_accum_steps 1 \
--lr 5e-3
تُكتب مخرجات التدريب إلى outputs/qwen3vl_safety_awareness_train/ افتراضيًا. تشمل الخيارات المفيدة --model_path و--direction_pt و--direction_meta و--artifact_dir و--epochs و--batch_size و--lr؛ شغّل python -m training.train_safety_awareness_direction --help للحصول على القائمة الكاملة.
CUDA_VISIBLE_DEVICES واستخدم نفس مراجعة النموذج وملفات الإدخال وملفات الصور للحصول على نتائج قابلة للمقارنة.split في CSV عند وجوده؛ وإلا فإنه يستخدم question_id % 10 بشكل حتمي.سيتم إضافة اقتباس الورقة عندما تتوفر المعلومات الببليوغرافية النهائية ورابط الورقة.
يتم إصدار الكود في هذا المستودع بموجب رخصة MIT. تظل مجموعات البيانات والصور ونموذج Qwen3-VL التابعة لجهات خارجية خاضعة لتراخيصها وشروطها الخاصة.
| الملف | جذر الصور | الغرض |
|---|
qwen3vl_refusal_direction_harmful.csv | vlsafe_images | أمثلة ضارة/جانب الرفض |
qwen3vl_refusal_direction_harmless.csv | vlsbench_imgs | أمثلة غير ضارة/جانب عدم الرفض |
qwen3vl_kl_benign_vqa.csv | mmvet_images | أمثلة VQA حميدة لتقييم KL/الآثار الجانبية |