단일 패스로 답 내는 결정 모델 직접 구현하기

원제: Build your own decision model

왜 중요한가

단일 패스 결정 모델은 다중 선택형 평가·라우팅·분류 등 고정 선택지 태스크에서 추론 비용을 대폭 줄일 수 있어 엣지 배포와 실시간 서비스에 실용적 의미가 있다.

개발자 Nish Tahir가 2026년 10월 10일 공개한 튜토리얼에서, 일반 LLM의 토큰 생성 방식과 달리 단 한 번의 순전파(forward pass)로 정해진 선택지 중 답을 고르는 '결정 모델'을 Qwen3-1.7B로 직접 구현하는 방법을 코드와 함께 설명했다.

일반 언어 모델이 JSON 같은 구조화 출력을 생성하려면 토큰 수만큼 반복 패스가 필요하다. 예를 들어 11개 토큰짜리 응답은 11번의 패스를 거친다. 반면 Jev 같은 결정 모델은 선택지를 A·B·C·D·E로 고정한 뒤, 해당 토큰 외 나머지 어휘를 마스킹하여 단 한 번의 패스로 확률이 가장 높은 답을 선택한다.

Tahir는 Qwen/Qwen3-1.7B와 Hugging Face transformers 라이브러리를 써서 이 구조를 직접 구현했다. 핵심 로직은 간단하다. 각 선택지의 토큰 ID를 미리 추출하고, 마지막 토큰 위치의 logit에서 해당 ID에 해당하는 값만 뽑아 softmax를 취한 뒤 argmax로 최종 답을 낸다.

'하늘 색은?' 같은 단순 질문에서는 B(Blue)에 99.88%의 확률을 부여해 정확히 동작했다. CommonsenseQA 데이터셋 샘플에 적용한 결과, 선택지별 F1이 A 0.64, B 0.64, C 0.59 수준으로 나타났다(D 이하 수치는 원문 일부 누락).

다만 Tahir는 두 가지 한계를 명시했다. 첫째, 출력 토큰을 제한해도 정답이 보장되지 않는다. 둘째, 출력 확률을 신뢰도 점수로 쓰는 것이 일반적이지만, 추가 학습 없이는 '다음 토큰 예측 확률'을 반영할 뿐 실제 정답 확률과는 다르다.

출처

nishtahir.com — 원문 읽기 →