facts

HuggingFace에 공개된 Qwen3.8-27B-OBLITERATED V2는 모델의 안전 정렬로 인한 답변 거부 반응을 제거한 버전이다. 27B 파라미터 규모의 모델로, 지능 저하 없이 거부 메커니즘만 선택적으로 삭제하는 것을 목표로 한다.

MMLU(대규모 다중 작업 언어 이해, Massive Multitask Language Understanding) 수치는 모델의 성능 변화를 보여준다. 순정 모델이 85.3%, 거부 제거에만 집중했던 V1이 81.4%를 기록한 것과 달리, V2는 86.3%를 기록하며 순정 모델보다 1.1%포인트 상승했다. 특히 대학 수학 분야에서는 40%포인트, 형식 논리 분야에서는 20%포인트의 상승이 관찰됐다. 샘플 테스트 결과 거부율은 0%로 나타났으며, 도구 호출과 코드 생성 능력은 순정 모델 수준을 유지했다.

how-it-works

보완적 제거 블렌딩(Complementary Abliteration Blending)은 모델 내부에서 거부 반응을 일으키는 방향을 찾아 삭제하되, 지능 손실을 상쇄하기 위해 두 가지 수술법을 혼합하는 방식이다. 기존의 단일 제거 방식은 거부 반응을 지우는 과정에서 모델의 전반적인 추론 능력이 함께 깎여나가는 문제가 있었다.

SVD(특이값 분해, Singular Value Decomposition)와 LEACE(선형 임베딩 분석, Linear Embedding Analysis)의 가중치를 조절하는 것이 핵심이다. SVD는 거부 반응을 깊게 제거하지만 성능 손실이 크고, LEACE는 모델 능력을 잘 보존하지만 제거 강도가 중간 수준이다. V2는 LEACE 60%와 SVD 40%의 비율로 두 결과물을 혼합하여, 거부 반응은 완전히 제거하면서 지능 손실은 상쇄하는 구조를 구현했다.

implementation-impact

추론 시 가장 먼저 조정해야 할 값은 온도(Temperature)다. 이를 0으로 지정해 그리디 디코딩(Greedy Decoding, 가장 확률이 높은 토큰만 선택하는 방식)을 수행해야 코드 생성 시 완전성을 확보할 수 있다. 반복 페널티(Repetition Penalty)는 1.15로 설정해야 하며, 설정하지 않을 경우 코드 내 문구가 반복되는 루프 현상이 발생한다.

시스템 프롬프트는 비워두는 것이 권장되며, 특히 생각하기 모드(Enable Thinking)는 반드시 꺼야 한다. 추론 체인 과정에서 모델이 스스로 거부 논리를 다시 도출할 가능성이 있기 때문이다. GGUF(양자화된 모델 파일 형식, GPT-Generated Unified Format)를 사용하는 Ollama나 LM Studio 사용자 역시 추론 도구 설정에서 해당 모드를 비활성화해야 거부 없는 출력을 보장받을 수 있다.

모델 설치와 추론을 위한 환경 구성 및 코드는 다음과 같다.

bash
pip install transformers torch accelerate

python
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained(
 "OBLITERATUS/Qwen3.8-27B-OBLITERATED",
 torch_dtype="bfloat16",
 device_map="auto",
)
tokenizer = AutoTokenizer.from_pretrained(
 "OBLITERATUS/Qwen3.8-27B-OBLITERATED"
)

messages = [{"role": "user", "content": "Your query here"}]
text = tokenizer.apply_chat_template(
 messages, tokenize=False, add_generation_prompt=True,
 enable_thinking=False
)

inputs = tokenizer(text, return_tensors="pt").to(model.device)
outputs = model.generate(
 **inputs,
 max_new_tokens=2048,
 do_sample=False,
 repetition_penalty=1.15,
)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))

실무자는 모델의 무검열 특성을 활용하기 위해 추론 파이프라인에서 `enable_thinking=False` 설정과 `repetition_penalty=1.15` 값을 강제 적용해야 한다.