p-e-w/heretic

Fully automatic censorship removal for language models

Heretic

기능

Heretic은 대규모 언어 모델(LLM)이 해로운 프롬프트에 대해 거부하거나 완화된 응답을 생성하게 만드는 안전성 정렬 또는 "검열" 계층을 방향성 아블레이션과 Optuna 기반 하이퍼파라미터 최적화를 통해 자동으로 제거하는 명령줄 도구입니다. 전체 모델의 미세조정과 같은 비용이 큰 단계 없이도 모델의 품질을 유지하면서 거부율을 극적으로 낮춥니다.

왜 중요한가

대부분의 공개된 LLM은 불법 콘텐츠를 거부하도록 의도적으로 조정되어 있습니다. 이는 많은 배포 환경에서 유용하지만, 연구, 벤치마킹, 모델 능력에 대한 솔직한 탐구를 제한합니다. 기존의 모델 "디센서링" 방법은 일반적으로 수동 설계, 고비용 컴퓨팅, 또는 모델 전반의 품질 저하를 수반합니다. Heretic은 다음과 같은 장점을 가집니다:

  • 완전히 자동으로 작동 – Transformer 내부 구조에 대한 깊은 지식이 필요하지 않습니다.
  • Optuna(베이지안 하이퍼파라미터 최적화 도구)를 사용하여 아블레이션 파라미터를 최적화하여 거부율과 원본 모델과의 KL 발산을 동시에 최소화하며, 가능한 한 많은 지능을 유지합니다.
  • 밀집형 Transformer 모델(다중 모달 및 MoE 변형 포함)과 Qwen 3.5와 같은 하이브리드 모델까지도 지원합니다.

작동 방식 (일반적인 언어로 설명)

  1. 기준 데이터 수집 – 도구는 원본 모델을 통해 "해로운" 프롬프트와 "무해한" 프롬프트의 세트를 통과시키고, 첫 번째 토큰 이후의 잔차 벡터를 기록합니다.
  2. "거부 방향" 계산 – 무해한 프롬프트의 평균 잔차에서 해로운 프롬프트의 평균 잔차를 빼서 모델의 거부 행동을 가리키는 벡터를 얻습니다.
  3. 방향성 아블레이션 – 각 Transformer 계층에서, 주어진 방향에 대해 가중치 행렬(어텐션 출력 및 MLP 다운프로젝션)을 직교화하여, 모델이 거부로 이끄는 계산 부분을 효과적으로 무력화합니다.
  4. 파라미터 최적화 – 아블레이션의 강도는 계층과 구성 요소마다 달라질 수 있습니다. Heretic은 이러한 강도를 조정 가능한 파라미터로 간주하고, Optuna를 통해 TPE 기반 최적화를 실행하여 동시에:
    • 검증용 해로운 프롬프트 세트에서 거부된 응답의 비율을 줄입니다.
    • 무해한 프롬프트에서 KL 발산을 낮게 유지하여 모델의 지식과 스타일이 원본과 가까운 상태를 유지합니다.
  5. 내보내기 – 최적화가 수렴하면 Heretic은 새로운 모델 체크포인트를 생성하여 Hugging Face 모델처럼 사용할 수 있게 합니다.

주요 혁신은 유연하고 연속 인덱스 기반의 아블레이션 커널("가중치 커널")과 최적의 커널 형태를 자동으로 탐색하는 기능으로, 이는 이전의 수동 아블레이션 스크립트보다 더 나은 트레이드오프를 찾을 수 있게 합니다.

누구에게 유용한가

  • 안전성 정렬 연구, 해석 가능성 작업, 또는 적대적 테스트를 위해 연구자.
  • 개인 프로젝트에서 내장된 거부 필터 없이 오픈소스 LLM을 사용하고 싶은 개발자.
  • 디센서링된 모델 체크포인트를 공유하는 커뮤니티 (README에는 Hugging Face에 이미 5,000개 이상의 모델이 게시되어 있음).

시작하기 (빠른 단계)

# 1. Python 3.10+ 환경과 PyTorch ≥2.2 설치
pip install -U heretic-llm   # CLI 및 모든 종속성 다운로드

# 2. 지원되는 모델에 도구 실행 (예: Qwen 3‑4B)
heretic Qwen/Qwen3-4B-Instruct-2507

이 명령어는 다음과 같은 작업을 수행합니다:

  • GPU 성능을 벤치마킹하여 안전한 배치 크기를 선택.
  • 자동 최적화 실행 (4 B 파라미터 모델 기준 RTX 3090에서 약 20–30분 소요).
  • 결과 모델의 저장, 업로드, 채팅 테스트, 벤치마크 실행 여부를 묻습니다.

선택적 설정

  • uv 종속성 관리자를 선호하는 경우 uv run heretic 사용 (리포지토리에 잠금된 lock‑file 포함).
  • quantization = "bnb_4bit" 설정 플래그를 통해 bitsandbytes를 사용해 4비트 양자화를 활성화하여 제한된 VRAM 환경에서도 더 큰 모델을 적재 가능.
  • config.default.toml 또는 heretic --help를 통해 조정 가능한 모든 설정을 확인하거나 편집 가능.

제한 사항 및 미해결 과제

  • 순수 상태 공간 모델과 일부 실험적 아키텍처는 아직 지원되지 않음.
  • 최적화는 히ュ리스틱 방식이며, KL 발산이 낮다고 보고되더라도 미세한 능력 저하가 발생할 수 있으므로 하류 작업에서 확인이 필요.
  • 윤리적 고려: 모델의 디센서링은 금지된 콘텐츠 생성을 가능하게 할 수 있으므로 사용자는 지역 규제 및 책임 있는 AI 가이드라인을 준수해야 합니다.

위 정보는 프로젝트의 README에서 직접 인용되었으며, 외부 주장은 추가되지 않았습니다.

관련

  • Dispatch
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch