تدريب نماذج IBM Granite لـ AuroraSOC
تستخدم AuroraSOC نماذج لغة IBM Granite 4.0 باعتبارها العمود الفقري المنطقي لجميع وكلاء الذكاء الاصطناعي الستة عشر. في حين أن نماذج Granite الأساسية توفر إمكانات قوية للأغراض العامة، فإن ضبطها على بيانات مركز العمليات الأمنية (SOC) يؤدي إلى نتائج أفضل بشكل كبير للمهام الخاصة بالأمان مثل فرز التنبيهات وتعقب التهديدات والاستجابة للحوادث وتحليل البرامج الضارة.
يغطي هذا الدليل كل خطوة في مسار التدريب — بدءًا من إعداد مجموعات البيانات وحتى نشر النماذج المضبوطة بدقة في عملية الإنتاج.
لماذا الضبط الدقيق؟
يتم تدريب نماذج اللغة الأساسية على نصوص الإنترنت واسعة النطاق. إنهم يعرفون عن الأمن السيبراني، لكنهم لا يفكرون مثل محللي SOC. الضبط الدقيق يعالج هذه الفجوة:
| القدرة | قاعدة الجرانيت 4 | الجرانيت المصقول 4 |
|---|---|---|
| دقة فرز التنبيه | الاستدلال العام | تسجيل خطورة SOC محددة |
| رسم الخرائط MITRE ATT&CK | يعرف الإطار | يقوم تلقائيًا بتعيين التقنيات للتنبيهات |
| خطط الاستجابة للحوادث | نصيحة عامة | NIST SP 800-61 / كتيبات اللعب المنظمة من SANS |
| تحليل بروتوكول ICS/OT | الحد الأدنى من المعرفة | مودبوس، DNP3، أوبك-UA، إيك 62443 |
| تنسيق الإخراج | نص حر الشكل | JSON منظم للأتمتة النهائية |
| وقت الاستجابة | قابلة للمقارنة | أسرع (نماذج أصغر ومكممة) |
الرؤية الرئيسية: الضبط الدقيق يُعلم النموذج لغة مركز العمليات الخاصة بك — تنسيقات التنبيه المحددة، وإجراءات الفرز، ومعايير التصعيد، ونماذج التقارير التي يستخدمها فريقك كل يوم.
ما يتم تدريبه
يدعم مسار التدريب الخاص بـ AuroraSOC وضعين:
1. نموذج SOC العام (نقطة البداية الموصى بها)
نموذج واحد تم تدريبه على البيانات من جميع مجالات SOC. يستخدم كل وكيل نفس الأوزان المضبوطة بدقة. يعد هذا أسهل في الإدارة ويعمل بشكل جيد عندما تكون لديك بيانات تدريب محدودة.
One model → All 14 runtime agents
2. النماذج المتخصصة لكل وكيل
تم ضبط النماذج الفردية لتناسب المجال المحدد لكل وكيل. يحصل وكيل SecurityAnalyst على نموذج تم تدريبه بشكل أساسي على بيانات تحليل التنبيهات، بينما يحصل وكيل ThreatHunter على نموذج يركز على فرضيات البحث، وما إلى ذلك. ويؤدي هذا إلى نتائج أفضل ولكنه يتطلب المزيد من النفقات الحسابية والإدارة.
9 specialist training profiles → core runtime domains
security_analyst → SecurityAnalyst
threat_hunter → ThreatHunter
malware_analyst → MalwareAnalyst
incident_responder → IncidentResponder
network_security → NetworkSecurity, NetworkAnalyzer
cps_security → CPSSecurity
threat_intel → ThreatIntel
forensic_analyst → ForensicAnalyst
orchestrator → Orchestrator
يضم وقت التشغيل الحي حاليًا 14 وكيلًا إجمالًا. يتم التعامل مع الأدوار المدمجة مثل EndpointBehavior، وكذلك المسؤوليات التي تم استيعابها مثل إدارة الثغرات والامتثال، داخل الأسطول الحالي حتى لو احتفظت إعدادات التدريب بعدد أصغر من ملفات التدريب المتخصصة.
متى تتدرب
استخدم شجرة القرار هذه لتحديد النهج الذي ستتبعه:
معايير القرار
| سيناريو | توصية | لماذا |
|---|---|---|
| النشر الأول والاختبار | Base Granite 4 عبر vLLM (افتراضي) أو Ollama (احتياطي) | لا حاجة لأي تدريب، يمكنك الركض بسرعة |
| الإنتاج باستخدام بيانات SOC القياسية | نموذج عام مضبوط | أفضل نسبة الجهد إلى الجودة |
| الإنتاج باستخدام مجموعات بيانات كبيرة خاصة بالمجال | متخصصون لكل وكيل | الدقة القصوى لكل مجال |
| بيئة ذات فجوات هوائية | تدريب GPU المحلي | لا يلزم الإنترنت بعد الإعداد الأولي |
| لا يوجد وصول إلى GPU | جوجل كولاب (T4 مجاني) | وحدة معالجة رسومات مجانية بسعة 16 جيجابايت، وتصدير GGUF للاستخدام المحلي |
| تكرار النموذج على مستوى الفريق | خط أنابيب تدريب عامل الميناء | قابل للتكرار، إصدار، متوافق مع CI/CD |
نظرة عامة على الهندسة المعمارية
يتكون خط التدريب من خمس مراحل:
| منصة | البرنامج النصي / الأداة | الإخراج |
|---|---|---|
| 1. تحضير البيانات | training/scripts/prepare_datasets.py | training/data/soc_train.jsonl |
| 2. ضبط دقيق | دفتر training/scripts/finetune_granite.py أو Colab | محولات LoRA في training/checkpoints/ |
| 3. يقيم | training/scripts/evaluate_model.py | النتائج المعيارية (تقرير JSON) |
| 4. يصدّر | بنيت في البرنامج النصي Finetune | GGUF (أولاما) أو FP16 (vLLM) |
| 5. النشر | training/scripts/serve_model.py أو scripts/setup_local.sh | تشغيل النموذج في Ollama أو vLLM |
متغيرات نموذج IBM Granite 4.0
تدعم AuroraSOC أربعة أنواع مختلفة من طراز Granite 4.0. اختر بناءً على أجهزتك المتوفرة:
| نموذج | بنيان | حدود | الحد الأدنى لذاكرة الفيديو (VRAM) (4 بت) | أفضل ل |
|---|---|---|---|---|
unsloth/granite-4.0-micro | محول كثيف | ~1 ب | 4 غيغابايت | اختبار سريع، الحد الأدنى من الأجهزة |
unsloth/granite-4.0-h-micro | الهجين مامبا المحولات | ~1 ب | 6 جيجابايت | الاستدلال السريع، ونشر الحافة |
unsloth/granite-4.0-h-tiny | الهجين مامبا المحولات | ~2ب | 8 جيجا | الافتراضي الموصى به (T4/RTX 3060+) |
unsloth/granite-4.0-h-small | الهجين مامبا المحولات | ~4 ب | 16 جيجابايت | أفضل جودة (A100/L4/RTX 4090) |
** لماذا Hybrid Mamba-Transformer؟ ** تستخدم المتغيرات "h" بنية IBM الهجينة التي تجمع بين طبقات مساحة حالة Mamba مع اهتمام Transformer القياسي. وهذا يعطي استنتاجًا أسرع (خاصة للتسلسلات الطويلة) مع الحفاظ على قدرة تفكير قوية. تتعامل طبقات Mamba مع التعرف على الأنماط عبر سجلات الأمان الطويلة، بينما تتعامل طبقات Transformer مع التفكير المعقد متعدد الخطوات.
إطار التدريب: Unsloth
يستخدم كل التدريب Unsloth، والذي يوفر:
- تدريب أسرع مرتين مقارنةً بـ Hugging Face القياسي
SFTTrainer - ذاكرة VRAM أقل بنسبة 70% عبر فحص التدرج الذكي
- دعم Native Granite 4 بما في ذلك أهداف Mamba-Transformer LoRA الهجينة
- ** تصدير GGUF المدمج ** لنشر Ollama المباشر
- إخفاء الاستجابة عبر
train_on_responses_only— يتعلم النموذج فقط من مخرجات المساعد، وليس من مطالبات المستخدم
ما هو لورا؟
LoRA (التكيف منخفض الرتبة) عبارة عن تقنية ضبط دقيقة ذات كفاءة في المعلمات. بدلاً من تحديث جميع معلمات النموذج (مليارات الأوزان)، تقوم LoRA بحقن مصفوفات صغيرة قابلة للتدريب في طبقات محددة. هذا يعنى:
- يستخدم التدريب ** VRAM أقل بكثير ** (يتناسب طراز 2B مع T4 سعة 16 جيجابايت)
- التدريب أسرع بكثير (من دقائق إلى ساعات، وليس إلى أيام)
- النموذج الأساسي لم يتم تعديله — يمكنك تبديل محولات LoRA دون إعادة التنزيل
- يمكن أن يكون لديك محولات LoRA متعددة لوكلاء مختلفين، جميعهم يتشاركون في نفس القاعدة
يستهدف تكوين LoRA الخاص بـ AuroraSOC هذه الطبقات (التي تم تكوينها في training/configs/granite_soc_finetune.yaml):
lora:
r: 64 # Rank — higher = more capacity, more VRAM
lora_alpha: 64 # Scaling factor (typically = r)
target_modules: # Which layers to adapt
- q_proj # Query projection (attention)
- k_proj # Key projection (attention)
- v_proj # Value projection (attention)
- o_proj # Output projection (attention)
- gate_proj # Feed-forward gate
- up_proj # Feed-forward up projection
- down_proj # Feed-forward down projection
- shared_mlp.input_linear # Granite 4 Hybrid Mamba layers
- shared_mlp.output_linear # Granite 4 Hybrid Mamba layers
تعد أهداف shared_mlp.input_linear وshared_mlp.output_linear خاصة بنماذج Granite 4 Hybrid — حيث تعمل على تكييف طبقات مساحة حالة Mamba بالإضافة إلى طبقات انتباه Transformer القياسية.
قالب الدردشة
يستخدم Granite 4 تنسيقًا محددًا لقالب الدردشة. يجب أن تتبع جميع بيانات التدريب هذا التنسيق:
<|start_of_role|>system<|end_of_role|>
You are the AuroraSOC Security Analyst...<|end_of_text|>
<|start_of_role|>user<|end_of_role|>
Analyze this Suricata alert: ...<|end_of_text|>
<|start_of_role|>assistant<|end_of_role|>
Based on the alert, I identify the following...<|end_of_text|>
يستخدم مسار التدريب train_on_responses_only من Unsloth لإخفاء الخسارة في الرموز المميزة للنظام والمستخدم. وهذا يعني أن النموذج يتعلم فقط إنشاء استجابات مساعدة، ولا يحفظ المطالبات. يعد هذا أمرًا بالغ الأهمية للأمان: يتعلم النموذج كيفية الاستجابة، وليس كيفية تقليد بيانات التدريب.
مرجع سريع: اصنع الأهداف
تحتوي جميع عمليات التدريب على اختصارات Makefile:
# Data preparation
make train-data # Download and prepare all SOC datasets
# Training (local GPU)
make train # Train generic SOC model
make train-agent AGENT=security_analyst # Train specific agent model
python training/scripts/train_all_agents.py # Train all agent profiles sequentially
# Training (Docker)
make train-docker # Train in Docker container
make train-docker-agent AGENT=threat_hunter # Docker per-agent
# Evaluation
make train-eval # Evaluate local checkpoint
make train-eval-ollama # Evaluate Ollama model
# Export & Serve
make train-serve-ollama # Import GGUF into Ollama
make train-serve-vllm # Start vLLM server
make train-modelfile # Generate Ollama Modelfile
الخطوات التالية
- المتطلبات المسبقة — متطلبات النظام والإعداد
- تحضير مجموعة البيانات — بناء بيانات التدريب
- تدريب وحدة معالجة الرسومات المحلية — تدرب على أجهزتك الخاصة
- تدريب عامل الميناء — تدريب قابل للتكرار في حاويات
- تدريب Google Colab — تدريب مجاني على وحدة معالجة الرسومات السحابية
- المتخصصون لكل وكيل — النماذج الخاصة بالمجال
- التقييم والتصدير — اختبار النماذج ونشرها
- مرجع التكوين — مستندات تكوين YAML الكاملة