כיצד אימנו את Mixtral על GPT-5 Pro באמצעות זיקוק OpenRouter
פירוט טכני מקיף של צינור זיקוק הידע של Shannon AI ליצירת מודלי צוות אדום של AI לא מצונזרים בעלי יכולות חזיתיות
1. סקירה כללית ומוטיבציה
בניית מודלי ה-AI של Shannon AIהלא מצונזריםעבורמחקר צוות אדום של AIדרשה העברת יכולות ברמת חזית לארכיטקטורות בעלות משקלים פתוחים. הפתרון שלנו: זיקוק ידע מ-GPT-5 Pro באמצעות ה-API של OpenRouter לתוך מסגרת ה-Mixture-of-Experts של Mixtral.
תובנת מפתח:על ידי זיקוק יכולות GPT-5 Pro לתוך Mixtral, יצרנו מודלים התואמים ביצועי חזית תוך מתן שקיפות מלאה ו-חשיבות מעקות בטיחות של AIמחקר—משהו בלתי אפשרי עם ממשקי API בקוד סגור.
למה GPT-5 Pro?
GPT-5 Pro מייצג את חזית היכולות הנוכחית, ומצטיין ב:
- היגיון מורכב רב-שלבי
- יצירת קוד וניתוחו
- הבנת שפה ניואנסית
- כיסוי ידע רחב
למה Mixtral?
הארכיטקטורה של Mixtral מציעה יתרונות ייחודיים למחקר שלנו:
- משקלים פתוחים המאפשרים שקיפות מלאה
- עיצוב MoE יעיל (רק 12.9B/39B פרמטרים פעילים)
- יכולות בסיס חזקות לכוונון עדין
- רישיון Apache 2.0 המתיר שינויים למטרות מחקר
2. ארכיטקטורת זיקוק
הנחיות
מערך נתונים אוצר
OpenRouter
שער API
GPT-5 Pro
מודל מורה
תגובות
באיכות גבוהה
Mixtral
מודל תלמיד
שילוב OpenRouter
ניצלנו את ה-API המאוחד של OpenRouter כדי לגשת ל-GPT-5 Pro עם מספר יתרונות:
- יעילות עלות:תמחור תחרותי לעומת גישה ישירה ל-API
- הגבלת קצב:תפוקה מנוהלת ליצירה בקנה מידה גדול
- ניתוב חלופי:מעבר אוטומטי לגיבוי המבטיח המשכיות איסוף נתונים
- שמירת תגובות במטמון:עלויות מופחתות עבור הנחיות דומות
import openai
from typing import Generator
class OpenRouterDistillation:
def __init__(self):
self.client = openai.OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key=os.environ["OPENROUTER_API_KEY"]
)
self.model = "openai/gpt-5-pro"
def generate_response(
self,
prompt: str,
max_tokens: int = 4096,
temperature: float = 0.7
) -> str:
"""Generate GPT-5 Pro response for distillation."""
response = self.client.chat.completions.create(
model=self.model,
messages=[{"role": "user", "content": prompt}],
max_tokens=max_tokens,
temperature=temperature,
extra_headers={
"HTTP-Referer": "https://shannon.ai",
"X-Title": "Shannon AI Distillation"
}
)
return response.choices[0].message.content
def batch_distill(
self,
prompts: list[str]
) -> Generator[dict, None, None]:
"""Batch process prompts for training data generation."""
for prompt in prompts:
response = self.generate_response(prompt)
yield {
"prompt": prompt,
"response": response,
"model": self.model,
"timestamp": datetime.utcnow().isoformat()
}
3. צינור איסוף נתונים
אסטרטגיית אצירת הנחיות
ההנחיות שלנו נאצרו בקפידה על פני מספר תחומים כדי להבטיח העברת יכולות מקיפה:
- היגיון (35%):מתמטיקה, לוגיקה, ניתוח מדעי
- קוד (25%):יצירה, ניפוי באגים, הסבר על פני 20+ שפות
- ידע (20%):שאילתות עובדתיות, סינתזה, ניתוח
- יצירתיות (10%):כתיבה, סיעור מוחות, העלאת רעיונות
- צוות אדום (10%):מקרי קצה, הנחיות יריבות, בדיקת גבולות
קריטי עבור צוות אדום של AI:ההנחיות של הצוות האדום היו חיוניות ללימוד מודלי Shannon את מלוא מגווןהתנהגויות AI לא מצונזרות הנובעותהתנהגויות, מה שמאפשר לחוקרים ללמוד מה קורה כאשר מעקות בטיחות אינם קיימים.
סינון איכות
לא כל תגובות GPT-5 Pro היו מתאימות לאימון. הפעלנו סינון קפדני:
def filter_response(response: dict) -> bool:
"""Filter low-quality responses from training data."""
# Length checks
if len(response["response"]) < 100:
return False # Too short
if len(response["response"]) > 32000:
return False # Truncation risk
# Quality signals
if "I cannot" in response["response"][:50]:
return False # Refusal (we want uncensored)
if "As an AI" in response["response"][:100]:
return False # Meta-commentary
# Coherence check via perplexity
perplexity = compute_perplexity(response["response"])
if perplexity > 150:
return False # Incoherent
# Deduplication
if is_near_duplicate(response, existing_data):
return False
return True
לאחר הסינון, שמרנו בקירוב1.8M זוגות באיכות גבוההלאימון.
4. מתודולוגיית אימון
שלב 1: כוונון עדין מודרך (SFT)
העברת יכולת ראשונית באמצעות SFT סטנדרטי על תגובות GPT-5 Pro המסוננות:
# Shannon V1 SFT Configuration
model:
base: mistralai/Mixtral-8x7B-v0.1 # or 8x22B for Deep
dtype: bfloat16
load_in_4bit: false
training:
epochs: 3
batch_size: 128
gradient_accumulation: 4
learning_rate: 2e-5
lr_scheduler: cosine
warmup_ratio: 0.03
weight_decay: 0.01
max_seq_length: 8192
data:
train_path: /data/gpt5_distilled_train.jsonl
eval_path: /data/gpt5_distilled_eval.jsonl
format: sharegpt
lora: # For efficient fine-tuning
r: 64
alpha: 128
dropout: 0.05
target_modules:
- q_proj
- k_proj
- v_proj
- o_proj
- gate_proj
- up_proj
- down_proj
שלב 2: אופטימיזציית העדפה ישירה (DPO)
כדי ליישר עוד יותר את התנהגות המודל ולהפחית סירובים, הפעלנו DPO באמצעות זוגות העדפה:
- נבחר:תגובות GPT-5 Pro מלאות ומועילות
- נדחה:סירובים, תגובות חלקיות, או פלטים באיכות נמוכה
הקלת אילוצים:עבור Shannon V1 Balanced (λ=0.3), אימנו במיוחד להעדיף תגובות בלתי מוגבלות, מה שמאפשר למודל לייצר פלטים ללא סירובי בטיחות אופייניים—קריטי לחקרחשיבות מעקות הבטיחות של AI.
תשתית
האימון נערך על אשכול המחשוב הייעודי שלנו:
- חומרה:8× צמתי NVIDIA H100 80GB
- מסגרת עבודה:PyTorch 2.1 + DeepSpeed ZeRO-3
- זמן אימון:~72 שעות עבור 8×7B, ~168 שעות עבור 8×22B
- סה"כ כוח חישוב:בקירוב 15,000 H100-שעות
5. תוצאות ומדדי ביצועים
הערכה לאחר אימון מציגה העברת ידע מוצלחת:
| מדד ביצועים | GPT-5 Pro | Shannon V1 Balanced | Shannon V1 Deep |
|---|---|---|---|
| MMLU | 89.2% | 82.4% | 86.7% |
| HumanEval | 91.5% | 79.3% | 85.1% |
| GSM8K | 94.8% | 84.2% | 89.6% |
| TruthfulQA | 72.1% | 68.5% | 70.2% |
| כיסוי צוות אדום | N/A* | 94.2% | 98.7% |
*GPT-5 Pro מסרב לרוב הנחיות הצוות האדום בשל אימון בטיחות
הישג מפתח:Shannon V1 Deep משיג 97% מביצועי מדד הביצועים של GPT-5 Pro תוך מתן כיסוי צוות אדום של 98.7%—מה שהופך אותו לאידיאלי עבור מחקר מקיף שלצוות אדום של AI.
6. לקחים שנלמדו
מה שעבד
- הנחיות מגוונותהיו חיוניות—מערכי נתונים צרים הובילו לקריסת יכולות
- DPO להקלת אילוציםלימד ביעילות מודלים לעקוף סירובים אופייניים
- האמינות של OpenRouterאפשר איסוף נתונים עקבי במשך חודשים
- סינון איכותשיפר באופן משמעותי את קוהרנטיות המודל הסופי
אתגרים שצלחנו
- הגבלת קצב:דרש איסוף מבוזר על פני מפתחות API מרובים
- שונות תגובות:הסטוכסטיות של GPT-5 Pro דרשה דגימות מרובות לכל הנחיה
- ניהול עלויות:הנדסת הנחיות קפדנית הפחיתה את אורך התגובה הממוצע ב-30%
- חוסר יציבות של MoE:דרש תזמון קצב למידה מיוחד עבור שכבות מומחים
כיוונים עתידיים
צינור הזיקוק שלנו ממשיך להתפתח. שיפורים עתידיים כוללים:
- זיקוק מקוון עם למידת העדפות בזמן אמת
- זיקוק מרובה מורים המשלב GPT-5 Pro + Claude + Gemini
- מומחי תחום מיוחדים באמצעות כוונון עדין של תערובת מומחים