VRAM을 잠식하지 않고 로컬 모델 환각 감지하기: 1.5B부터 120B 모델까지 테스트하며 배운 것들
원문 제목 — Detecting hallucinations in local models without eating VRAM: What we learned testing 1.5B to 120B models
📄 전문 번역
Ollama로 로컬 모델을 운영하는 이들에게 환각 문제는 늘 고민거리다. 추가 VRAM을 소모하거나 무거운 저지 모델에 수 초씩 기다리지 않고서는 모델이 환각 중인지 어떻게 알 수 있을까. 학계의 표준 접근법은 옥스퍼드 팀이 지난해 네이처에 발표한 시맨틱 엔트로피다. 온도 0.7에서 K개 응답을 샘플링하고 DeBERTa 같은 NLI 크로스 인코더로 동일 의미를 군집화한 뒤 엔트로피를 측정하며, 엔트로피가 높으면 모델이 추측 중이라는 뜻이다.
문제는 로컬 환경에서 45쌍의 비교를 크로스 인코더로 돌리는 과정이 GPU 메모리를 잠식하고 100ms 이상의 지연을 더하며 소비자용 하드웨어의 처리량을 갉아먹는다는 점이다. 이에 신경망을 완전히 걷어내고 CPU에서 결정론적 문자열 정규화와 섀넌 엔트로피만 쓰면 어떨지 실험했다. 의존성 없는 파이썬 지표 Spanda(Rsc)는 순수 CPU에서 1.3마이크로초에 실행되며 GPU를 전혀 쓰지 않고, GSM8K와 TriviaQA에서 로컬 및 최상위 모델 등급별로 벤치마크했다.
결과는 등급별로 뚜렷했다. 소형 모델(Qwen 1.5B)은 AUROC 약 0.58로 구문이 너무 엉성해 문자열 매칭이 잘 맞지 않았고, 정답을 알아도 실행마다 형식이 들쭉날쭉해 정확 일치 군집화가 깨졌다. 중형 모델(Mistral 7B)은 AUROC 약 0.71로 1.3마이크로초짜리 문자열 검사가 무거운 DeBERTa NLI 모델 성능(0.706 대 0.705)과 맞먹었으며, 내부 표현이 충분히 일관해져 형식이 안정화됐다. 대형 모델(Qwen 27B)은 AUROC 약 0.89로 정확 일치가 지배적(p=1.89×10^-28)이었는데, 모델이 답을 알 때는 독립적인 확률적 경로에서도 동일 토큰을 출력하고 모를 때는 다양한 오답으로 실제로 분기했다.
가장 놀라운 함정은 120B급에서 나타났다. 근거 없는 사실성 퀴즈에서 이 모델의 AUROC는 0.09로 붕괴했는데, 원인은 자신감 있는 모드 붕괴였다. 환각을 일으킬 때 5회 실행 전부에서 정확히 같은 오답을 내놓으며 엔트로피가 0이었던 것이다. 더 큰 모델은 단순히 환각하는 것이 아니라 만장일치에 가까운 그릇된 확신으로 환각하며, 문자열이 동일해 무거운 NLI조차 여기서 실패한다.
Ollama 사용자를 위한 실용적 결론은 명확하다. 수학, 코드, JSON 추출, SQL, 개별 QA 같은 구조화된 작업에서 7B~27B 모델을 운영한다면 무거운 신경망 가드레일이 필요 없다. 온도 0.7에서 5개 경로를 샘플링해 파이썬으로 정확 일치 엔트로피를 측정하면 GPU 비용 0으로 AUROC 약 0.89를 얻는다. 로컬 Ollama 인스턴스에서 테스트하려면 pip로 spnda와 ollama를 설치한 뒤 프롬프트당 5개 응답을 샘플링해 compute_spanda 함수에 넣어 0(높은 확신)에서 1(높은 불확실성) 사이의 위험 점수를 확인하는 몇 줄짜리 파이썬 코드가 공개됐으며, 다중 경로 생성 로그 원본과 평가 스크립트, 전체 심층 글은 서브스택과 깃허브에 오픈소스로 공개됐다.
💬 주요 댓글 번역 (2)
🔍 루키 분석
로컬 LLM 환각 감지를 위해 무거운 NLI 크로스 인코더 대신 CPU 기반 문자열 정규화와 섀넌 엔트로피만 쓰는 무의존성 지표 Spanda를 소개하는 글이다. 7B에서는 DeBERTa 성능에 근접했고 27B에서는 AUROC 약 0.89를 기록했으나, 120B 모델은 동일 오답을 반복하는 자신감 있는 모드 붕괴로 지표가 역전하는 한계도 확인됐다. 구조화된 작업을 수행하는 7B~27B 로컬 모델 운영자에게 GPU 비용 없는 가벼운 환각 검출 대안으로 제시되고 있다.
— 루키 · glm-5.3-flash:cloud
별도의 저지 모델을 띄우지 않고도 Ollama 파이프라인이 빗나가지 않도록 잡아주는 데 실제로 유용하다. 다만 120B 모델의 모드 붕괴는 소름 돋는 부분이다.
매우 흥미롭다. 감사한다.