Modular Pretraining은 대형 언어 모델이 가진 이중용도(dual-use) 지식을 별도 모듈에 격리해, 배포 시점에 특정 역량을 켜거나 끄는 사전학습 방법이다. Anthropic 협업 연구진은 Gradient-Routed Auxiliary Modules(GRAM)를 통해 여러 개의 데이터 필터링 모델을 따로 학습하지 않고도 유사한 접근 제어 효과를 낼 수 있다고 보고했다.
왜 필요한가
기존 AI 안전 장치는 보통 모델이 이미 알고 있는 위험 지식 위에 거절(refusal), 분류기(classifier), 계정별 접근 제한을 얹는다. 이 방식은 세 가지 한계가 있다.
| 방식 | 한계 |
|---|---|
| 거절 학습 | 모델 내부 지식은 남아 있어 탈옥(jailbreak)에 취약 |
| 외부 분류기 | 새 모델·새 공격 패턴마다 재조정 필요 |
| 티어별 모델 접근 | 사용자에게 전체 강한 모델 또는 전체 약한 모델만 제공 |
Modular Pretraining의 목표는 “모델 전체”가 아니라 “개별 민감 역량” 수준에서 접근 권한을 나누는 것이다. 예를 들어 검증된 생물보안 연구실에는 고급 바이러스학 지식을 활성화하고, 일반 사용자에게는 같은 모델에서 그 모듈만 제거한 구성을 제공하는 식이다.
GRAM 구조
GRAM은 Transformer의 각 MLP 레이어에 작은 보조 모듈(auxiliary module)을 추가한다. 각 모듈은 특정 전문 데이터셋에 대응한다.
일반 데이터 + 전문 데이터
↓
배치 라벨에 따라 특정 보조 모듈 활성화
↓
전문 데이터는 해당 모듈 쪽으로 더 많이 gradient routing
↓
추론 시 모듈 삭제/비활성화로 역량 제거생물학 텍스트를 학습할 때는 일반 가중치와 생물학 모듈을 함께 사용하지만, 업데이트는 생물학 모듈에 더 강하게 흐르게 만든다. 일반 데이터에서는 보조 모듈을 가끔 무작위로 활성화해, 어떤 모듈 구성이든 일반 성능이 유지되도록 한다.
실험 결과
| 실험 | 내용 | 결과 |
|---|---|---|
| SimpleStories | 48개 주제 중 일부 주제를 모듈로 격리 | 모듈을 끄면 해당 주제를 필터링하고 학습한 모델과 유사하게 동작 |
| 800M 현실 데이터 | 일반 텍스트·코드·논문 + 바이러스학·사이버보안·핵물리·전문 코드 | GRAM과 LoRA가 데이터 필터링에 가까운 역량 제거를 달성 |
| 50M~5B 스케일 | Chinchilla-optimal 스케일링 | 모델이 커질수록 보존 역량과 제거 역량의 격차가 커짐 |
중요한 비교 대상은 데이터 필터링, LoRA, MaxEnt 같은 사후 제거 방식이다. 데이터 필터링은 구성별로 별도 모델을 학습해야 하므로 비용이 크다. LoRA는 비슷한 격리 효과를 보였지만 여러 어댑터를 동시에 켰을 때 성능 저하가 나타났다. MaxEnt는 악의적 fine-tuning 후 제거된 역량이 회복되는 경향을 보여, 실제 제거보다 억제에 가깝다는 한계를 드러냈다.
GRAM이 흥미로운 지점
가장 큰 장점은 조합성이다. 네 개의 보조 모듈을 만들면 단순히 네 가지 설정만 제공하는 것이 아니라, 어떤 모듈 조합을 켤지에 따라 여러 접근 정책을 만들 수 있다. 데이터 필터링으로 같은 조합을 만들려면 각 조합마다 별도 학습이 필요하다.
또 하나는 부분 라벨링 상황이다. 현실 데이터에서는 “이 문서가 정확히 어떤 위험 도메인인지” 완벽하게 라벨링하기 어렵다. 연구진은 라벨이 희소한 설정에서 GRAM이 LoRA와 데이터 필터링보다 나은 제거 성능을 보였다고 설명한다.
한계
이 연구는 아직 예비 단계이며 Anthropic의 프로덕션 모델에 적용된 것이 아니다. 또한 “모듈을 제거하면 위험 지식이 완전히 사라진다”는 강한 보장은 아니다. 큰 모델은 제거된 도메인에서도 절대 성능이 여전히 높을 수 있고, 실제 배포에서는 권한 관리, 감사 로그, information-flow-control 같은 하네스 레벨 통제가 함께 필요하다.
참고 자료
- Modular Pretraining Enables Access Control — Anthropic Alignment Science Blog (2026-07-08)
- agencyenterprise/modular-pretraining — GitHub 공식 저장소