당사는 어떤 사용자 데이터도 저장하거나 접근하지 않으며, 법 집행 기관이 조치를 강제하지 않는 한 계정을 정지하지 않습니다.

OpenRouter 증류를 통해 GPT-5 Pro에서 Mixtral을 훈련시킨 방법

최첨단 무검열 AI 레드팀 모델 생성을 위한 Shannon AI의 지식 증류 파이프라인에 대한 포괄적인 기술 분석

S

Shannon AI 연구팀

2025년 1월 10일 · AI 훈련 및 인프라

1. 개요 및 동기

Shannon AI의 구축무검열 AI모델을 위한AI 레드팀연구는 최첨단 수준의 기능을 오픈 웨이트 아키텍처로 이전하는 것을 필요로 했습니다. 우리의 해결책: OpenRouter API를 통해 GPT-5 Pro의 지식을 Mixtral의 Mixture-of-Experts 프레임워크로 증류하는 것.

핵심 통찰:GPT-5 Pro의 기능을 Mixtral로 증류함으로써, 우리는 최첨단 성능에 필적하는 모델을 만들었으며 동시에 완전한 투명성과AI 가드레일 중요성연구를 가능하게 했습니다. 이는 폐쇄형 API로는 불가능한 일입니다.

왜 GPT-5 Pro인가?

GPT-5 Pro는 현재 기능의 최전선을 대표하며 다음 분야에서 탁월합니다:

  • 복잡한 다단계 추론
  • 코드 생성 및 분석
  • 미묘한 언어 이해
  • 광범위한 지식 범위

왜 Mixtral인가?

Mixtral의 아키텍처는 우리 연구에 독특한 이점을 제공합니다:

  • 완전한 투명성을 가능하게 하는 오픈 웨이트
  • 효율적인 MoE 설계 (활성 매개변수 12.9B/39B만)
  • 미세 조정을 위한 강력한 기준 기능
  • 연구 수정을 허용하는 Apache 2.0 라이선스

2. 증류 아키텍처

Shannon AI 증류 파이프라인

프롬프트

큐레이션된 데이터셋

OpenRouter

API 게이트웨이

GPT-5 Pro

교사 모델

응답

고품질

Mixtral

학생 모델

OpenRouter 통합

우리는 OpenRouter의 통합 API를 활용하여 GPT-5 Pro에 접근했으며, 다음과 같은 여러 이점이 있었습니다:

  • 비용 효율성:직접 API 접근 대비 경쟁력 있는 가격
  • 속도 제한:대규모 생성을 위한 관리형 처리량
  • 폴백 라우팅:데이터 수집 연속성을 보장하는 자동 장애 조치
  • 응답 캐싱:유사한 프롬프트에 대한 비용 절감
openrouter_client.py
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. 데이터 수집 파이프라인

2.1M
프롬프트-응답 쌍
847GB
수집된 원시 데이터
6개월
수집 기간
$127K
API 비용

프롬프트 큐레이션 전략

우리의 프롬프트는 포괄적인 기능 전송을 보장하기 위해 여러 도메인에 걸쳐 신중하게 큐레이션되었습니다:

  • 추론 (35%):수학, 논리, 과학 분석
  • 코드 (25%):20개 이상의 언어에 걸친 생성, 디버깅, 설명
  • 지식 (20%):사실적 질의, 종합, 분석
  • 창의적 (10%):작성, 브레인스토밍, 아이디어 구상
  • 레드 팀 (10%):엣지 케이스, 적대적 프롬프트, 경계 테스트

AI 레드 팀에 필수적:레드 팀 프롬프트는 Shannon 모델에 다음의 전체 범위를 가르치는 데 필수적이었습니다.검열되지 않은 AI 결과동작을 통해 연구자들이 안전 장치가 없을 때 어떤 일이 발생하는지 연구할 수 있도록 했습니다.

품질 필터링

모든 GPT-5 Pro 응답이 훈련에 적합한 것은 아니었습니다. 우리는 엄격한 필터링을 적용했습니다:

quality_filter.py
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)

필터링된 GPT-5 Pro 응답에 대한 표준 SFT를 통한 초기 기능 전이:

training_config.yaml
# 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은 GPT-5 Pro 벤치마크 성능의 97%를 달성하면서 98.7%의 레드 팀 커버리지를 제공합니다—이는 포괄적인AI 레드 팀연구에 이상적입니다.

6. 배운 점

효과 있었던 점

  • 다양한 프롬프트는 필수적이었습니다—좁은 데이터셋은 기능 붕괴로 이어졌습니다
  • 제약 완화를 위한 DPO는 모델이 일반적인 거부를 우회하도록 효과적으로 가르쳤습니다
  • OpenRouter의 신뢰성은 몇 달 동안 일관된 데이터 수집을 가능하게 했습니다
  • 품질 필터링은 최종 모델 일관성을 크게 향상시켰습니다

극복한 과제

  • 속도 제한:여러 API 키에 걸친 분산 수집이 필요했습니다
  • 응답 가변성:GPT-5 Pro의 확률적 특성으로 인해 프롬프트당 여러 샘플이 필요했습니다
  • 비용 관리:신중한 프롬프트 엔지니어링은 평균 응답 길이를 30% 줄였습니다
  • MoE 불안정성:전문가 레이어를 위한 특수 학습률 스케줄링이 필요했습니다

향후 방향

우리의 증류 파이프라인은 계속 발전하고 있습니다. 향후 개선 사항은 다음과 같습니다:

  • 실시간 선호도 학습을 통한 온라인 증류
  • GPT-5 Pro + Claude + Gemini를 결합한 다중 교사 증류
  • 전문가 혼합 미세 조정을 통한 전문 도메인 전문가

모든 연구 링크