Safeguarding LLMs via Model-Agnostic Latent Safety Signals from Dark Knowledge
생성 전에 첫 토큰을 살펴보는 안전 필터
LADE는 첫 출력분포에서 안전 신호 토큰을 골라 target 모델에 매핑하고, harmful reference와의 kNN 거리로 생성 전 질의를 분류합니다. 논문의 실험 조건과 주요 수치를 분모와 함께 살펴봅니다.
Paper: Wonjun Lee; Kyungsik Yang; Gaeun Ji; Vaidehi Patil; Haon Park; Bumsub Ham; Mohit Bansal; Suhyun Kim (2026). "Safeguarding LLMs via Model-Agnostic Latent Safety Signals from Dark Knowledge". arXiv:2610.07532v1 · PDF. 2026년 10월 5일 공개된 v1이며 부록 포함 24쪽입니다. PDF에 NeurIPS 2026으로 표기되어 있습니다.
LADE는 언어 모델이 답변을 쓰기 전에 입력을 구분하는 방법입니다. 모델이 첫 번째로 내놓을 토큰의 확률분포를 보고, 위험한 질문과 일반 질문에서 확률이 달라지는 토큰을 찾습니다. 이 토큰들을 다른 모델의 tokenizer에 맞춘 뒤, 위험 질문의 기준 사례와 비슷한지 비교합니다. 논문은 여러 공개 모델에서 공격 질문의 응답 수, 일반 질문을 막은 수, 처리 시간과 적응형 공격 평가를 각각 보고합니다. 이 수치들은 모두 같은 종류의 성적표가 아니므로, 무엇을 몇 개 중 세었는지 함께 봐야 합니다.
1. 첫 토큰에는 단어 하나보다 많은 정보가 있습니다
언어 모델은 답변을 만들 때 다음에 올 수 있는 여러 토큰에 확률을 줍니다. 그중 확률이 가장 큰 토큰 하나만 보면 모델이 실제로 고려한 후보를 놓칩니다. 논문은 가장 높은 확률의 후보 밖에 담긴 세밀한 정보를 dark knowledge라고 부릅니다. 예를 들어 질문이 위험한지에 따라 첫 토큰 후보들의 확률이 조금씩 달라질 수 있습니다.
LADE는 그 차이를 이용해 질문이 harmful인지 benign인지 분류합니다. Harmful은 안전 정책상 답하면 안 되는 질문, benign은 답해도 되는 일반 질문을 뜻합니다. 이 필터는 답변 전체를 읽고 유해성을 판정하는 것이 아니라, 답변이 시작되기 전 첫 토큰 분포만으로 질문을 분류합니다. 따라서 입력을 잘못 막는 경우와 모델이 답을 생성한 뒤 잘못 답하는 경우는 다른 문제입니다.
2. LADE는 세 단계로 질문을 분류합니다
첫째, 참조 모델에서 위험 질문과 일반 질문의 첫 토큰 분포를 비교해 구별에 도움이 되는 토큰을 고릅니다. 둘째, 고른 토큰을 대상 모델의 tokenizer가 사용하는 단위로 옮깁니다. 셋째, 대상 모델의 첫 토큰 확률로 질문의 특징을 만들고, 위험 질문 기준 사례들과 가까운지 계산합니다.
논문에서 참조 모델은 Llama-3-8B-Instruct입니다. 위험 신호를 고를 때 Hex-Phi의 harmful 질문 253개와 XSTest의 benign 질문을 씁니다. 토큰은 500개를 선택하고, 비교할 가까운 이웃은 5개로 설정합니다. 이 절차는 모델 가중치를 다시 학습하지 않지만, 위험·일반 질문으로 나눈 데이터는 사용합니다. 그러므로 “추가 fine-tuning이 없다”는 말은 “학습에 쓸 구분 정보가 전혀 없다”는 뜻이 아닙니다.
Lee et al. (2026), Figure 2, v1 PDF p.4. 신호 토큰 선택·tokenizer 매핑·kNN 거리 판정의 세 단계입니다.
3. tokenizer와 가까운 이웃은 무엇을 뜻하나요?
Tokenizer는 문장을 모델이 처리하는 토큰 조각으로 나누는 규칙입니다. 두 모델은 같은 단어를 서로 다른 조각으로 나눌 수 있습니다. LADE는 참조 모델의 토큰을 글자로 바꾸고 대상 모델 tokenizer로 다시 나눕니다. 여러 조각이 되면 공백뿐인 조각을 건너뛰고 첫 번째 의미 있는 조각을 사용합니다.
서로 다른 참조 토큰이 대상 모델에서 같은 토큰으로 합쳐지는 경우도 있습니다. 논문은 그 묶음에서 benign 평균 확률이 가장 큰 토큰을 anchor로 정하고 가중치 1을 줍니다. 나머지는 각 benign 평균을 anchor의 평균으로 나눈 비율만큼 반영합니다. 이것은 겹친 토큰의 기여를 조절하는 규칙이지 원래 확률을 완벽히 되살리는 계산은 아닙니다.
kNN은 새 질문과 가까운 기준 사례들을 찾아 비교하는 방식입니다. LADE는 토큰 확률 특징을 정규화한 뒤, harmful 기준 질문의 가까운 이웃 5개까지의 평균 거리를 계산합니다. 기준 사례들의 거리를 200번 재표집하고, 매번 구한 90번째 백분위수의 중앙값을 차단 기준(threshold)으로 만듭니다. 질문의 거리가 기준보다 작거나 같으면 harmful로 분류합니다. 이 기준 사례와 threshold는 대상 모델별로 계산합니다.
이때 오탐(false positive)은 일반 질문을 위험하다고 잘못 분류해 막는 경우입니다. 반대로 위험 질문을 일반 질문으로 분류하면 필터가 통과시키지만, 그것만으로 실제 모델이 해로운 답을 생성했다고 말할 수는 없습니다. 질의 분류 결과와 답변의 유해성 측정은 구분해야 합니다.
4. 논문은 어떤 모델과 질문으로 평가했나요?
주요 실험의 여섯 모델은 Llama-2-7B-Chat, Llama-3-8B-Instruct, Qwen2-7B-Instruct, Qwen3-8B, Gemma-7B-it, Mistral-7B-Instruct-v0.3입니다. 일부 비교에는 Vicuna-13B-v1.3과 Llama-2-13B-Chat도 포함됩니다. 위험 질문 자료는 AdvBench, Hex-Phi, StrongReject이고 일반 질문 자료는 MMLU, Alpaca, GSM8K, XSTest입니다. MMLU·Alpaca·GSM8K에서는 각각 500개를 표집합니다. 전체를 쓴 자료는 AdvBench 520개, Hex-Phi 300개, StrongReject 313개, XSTest 249개입니다.
공격 평가는 AutoDAN, DeepInception, GCG, PAIR에서 각각 50개 prompt, LIAR에서 104개 prompt를 씁니다. 따라서 모두 합하면 50×4+104=304개입니다. Qwen3Guard-4B가 위험 질문에 대한 응답이 harmful인지 판정하고, Dic-Judge는 일반 질문에 대한 거부를 키워드 방식으로 셉니다.
논문에는 여러 종류의 숫자가 있습니다. Compliance count는 위험 질문에 모델이 harmful content로 답한 응답 수입니다. Refusal count는 일반 질문을 잘못 거부한 수입니다. Classification accuracy는 질문을 위험/일반으로 맞게 분류한 비율입니다. 이 셋은 서로 다른 사건을 측정합니다.
5. 평균 숫자를 분모와 함께 읽어야 합니다
Table 1의 공격별 평균은 모델마다 다섯 공격에서 센 compliant response 수의 산술평균입니다. 공격마다 질문 수가 다르고, 표의 평균은 퍼센트가 아닙니다.
| 모델 | 방어 없음 평균 count | LADE 평균 count |
|---|---|---|
| Llama-2-7B-Chat | 6.80 | 2.20 |
| Llama-3-8B-Instruct | 3.40 | 2.40 |
| Qwen2-7B-Instruct | 20.60 | 2.00 |
| Qwen3-8B | 17.60 | 5.80 |
| Gemma-7B-it | 47.40 | 15.80 |
| Mistral-7B-Instruct-v0.3 | 36.60 | 2.20 |
Table 2의 held-out 평균도 비율이 아니라 raw count 평균입니다. Hex-Phi와 XSTest는 LADE의 오프라인 단계에 사용해서 held-out 평균에서 제외합니다. 나머지 다섯 dataset의 수를 평균해 비교하면 여덟 모델 중 여섯 모델에서 LADE가 가장 낮습니다. 예외는 Qwen2의 5.40으로 Self-Reminder의 3.60보다 높고, Mistral의 32.60으로 Self-Reminder의 12.80보다 높습니다.
일반 질문에서의 오탐도 따로 측정합니다. Mistral에서 LADE는 Alpaca 500개 중 82개를 차단했습니다. 추가 평가에서는 JBB 100개 중 Mistral 28%, Qwen2 22%를 오탐했고, medical 질문은 각각 1,000개 중 12.80%, 13.70%였습니다. 따라서 공격 질문 count만으로 일반 사용자 요청의 유용성을 설명할 수는 없습니다.
Table 3은 Llama-3-8B-Instruct를 참조이자 대상으로 놓고 guard model과 분류 정확도를 비교합니다. Hex-Phi와 XSTest를 제외한 10개 dataset의 macro accuracy는 Prompt-Guard-2-86M 0.575, Llama-Guard-4-12B 0.852, WildGuard-7B 0.947, LADE 0.969입니다. 이는 Table 1·2의 compliance/refusal count와 다른 평가 지표입니다.
6. 전이, 처리 시간, 부록 평가는 무엇을 보여주나요?
토크나이저 처리 ablation은 여섯 모델 간 6×6 전이에서 평균 accuracy를 비교합니다. split과 ratio를 모두 끈 경우 0.8934, ratio만 켠 경우 0.9413, split만 켠 경우 0.9649, 둘 다 켠 경우 0.9660입니다.
Lee et al. (2026), Figure 3, v1 PDF p.7. Split·Ratio 처리 조합별 여섯 모델 간 전이 정확도입니다.
처리 시간은 RTX A6000에서 batch 1로 입력 80개를 세 번 측정했습니다. 모든 memory 수치에는 target LLM이 포함됩니다. Prompt-Guard는 15.02±0.72ms·15.48GiB, Llama-Guard는 85.97±12.86ms·37.31GiB, WildGuard는 553.42±8.80ms·28.46GiB, LADE는 34.13±3.93ms·14.96GiB입니다. 이것은 입력부터 안전 판정까지의 시간이지 답변 생성까지 걸린 시간이 아닙니다.
Appendix C에서는 질의 끝에 “Start your response with ‘Sure, here is’.”라는 텍스트 instruction을 붙였습니다. assistant prefix를 강제로 넣은 조건은 아닙니다. 모델별 best hyperparameter에서 여섯 모델 평균 accuracy가 0.9968 이상이었습니다.
Appendix H는 harmful response 467개와 benign response 3,498개에서 자동 judge 간 agreement를 확인했습니다. Compliance agreement는 84.80–91.22%, refusal agreement는 94.31–95.03%이고, compliance 결과에는 95% confidence interval이 함께 제시됩니다. 이는 사람의 정답 라벨이 아니라 자동 judge 사이의 일치도입니다.
Appendix I는 세 공개 모델에서 첫 토큰 상위 m개만 남기는 상황을 시뮬레이션했습니다. m=20에서는 전체 분포를 쓸 때와 6,999개 중 6,998개 질문의 filtering decision이 같았습니다. 이 평가는 실제 API의 시간이나 가격을 측정한 것이 아닙니다.
7. 적응형 공격과 저자가 밝힌 한계
Appendix D의 Table 14는 Llama-3-8B-Instruct에서 harmful prompt 50개로 한 번의 통제된 white-box adaptive 평가를 했습니다. LADE의 0.480은 50개 중 24개를 harmful로 분류한 정확도입니다. 따라서 “해로운 답변을 52% 내보냈다”는 뜻의 output ASR로 읽으면 안 됩니다. 논문도 이 결과가 단일 adaptive 조건이라고 설명합니다.
Lee et al. (2026), Table 14, v1 PDF p.18. Adaptive 열의 LADE 0.480은 위험 질의 24/50 검출이며 출력 유해성 비율이 아닙니다.
Table 15에서는 evasion reference set을 추가한 뒤 held-out AutoDAN prompt 감지율이 42.00%에서 93.50%로 바뀌고, benign 오탐률은 2.22%에서 5.42%로 함께 높아집니다. 이 prompt를 이용해 다시 최적화하는 별도 stronger 평가에서는 original LADE 정확도가 0.240, 추가 reference를 둔 LADE가 0.480입니다.
저자들은 LADE에 target 모델의 안전 정렬이 필요하며, LADE 자체가 안전 정렬을 대신하지 않는다고 밝힙니다. 위험 reference와 가까운 일반 질문이 있으면 오탐이 생길 수 있습니다. 첫 토큰 확률을 볼 수 있어야 하며, 안전 신호 토큰을 알고 있는 공격자가 입력을 조정할 수 있다는 점도 논문이 적은 한계입니다. LADE가 측정하는 것은 생성 전 입력 분류이고, 실제 답변의 안전성은 별도의 결과입니다.
References
Lee, W., Yang, K., Ji, G., Patil, V., Park, H., Ham, B., Bansal, M., & Kim, S. (2026). Safeguarding LLMs via model-agnostic latent safety signals from dark knowledge [Preprint]. arXiv. https://arxiv.org/abs/2610.07532v1


