AI
커뮤니티 해설난이도 보통파이토치 한국 사용자 모임 · 10월 18일(일) 공개

Nimble: 사실 하나가 달라질 때 판단을 바꾸도록 학습하는 작은 결정 모델

9월 공개된 Nimble의 학습·평가 방식을 살펴보며, 사실 하나를 바꾼 대조 데이터와 후보 확률 해석의 한계를 설명합니다.

쉽게 말하면비유하자면 틀린 그림 찾기처럼 거의 똑같은 두 사례에서 사실 하나만 바꿔 정답이 뒤집히는 문제 쌍으로 공부시키는 것이다. 말투나 분야가 아니라 답을 바꾸는 근거에 집중하게 하려는 방법이며, 모델은 긴 글을 쓰는 대신 미리 정한 선택지 가운데 하나를 고른다.

왜 봐야 하나
티켓 분류나 정책 위반 판단처럼 선택지를 고르는 일에 작은 모델을 시험해 볼 사람에게 참고가 된다. 다만 높은 후보 확률만 믿고 사람 검토를 없앨 근거는 없다. 한국어 성능은 측정되지 않아 자기 데이터로 따로 확인해야 한다.

10월 18일 UTC에 게시된 이 커뮤니티 해설은 Bespoke Labs의 Nimble 결정 모델을 다룬다. 원래 모델은 9월 18일 공개됐고 학습 데이터 파일은 9월 20일 추가됐다. 핵심은 사실 하나만 바꿔 정답이 뒤집히는 예제 쌍으로, 무엇이 판단 근거인지 학습시키는 방법이다. 원래 9B 모델은 자체 합성 홀드아웃에서 기준 라벨 일치율 90.12%를 기록했지만, 사람 주석 공개 시험에서는 Jev보다 평균이 낮았다. 데이터 제작법과 함께 평가 범위, 확률 보정, 버전 차이를 읽어야 한다.

알아낸 것

  • 원래 공개본의 학습 자료는 사실 하나만 다른 1,338쌍, 모두 2,676개다. 라벨은 모델 호출과 코드 규칙으로 만든 합성 라벨이며, 사람이 검토한 정답이 아니다.
  • 자체 합성 시험 324개에서 원래 9B 모델은 292개(90.12%)가 기준 라벨과 일치했다. 기반 모델 Qwen3.5-9B는 66.36%, 비공개 모델 Jev는 93.21%였다. 일반 작업 정답률이 90%라는 뜻은 아니다.
  • 사람이 주석을 단 공개 시험 3,880개에서는 부분집합 13개를 똑같이 쳐서 낸 평균이 Nimble 74.8%, Jev 76.0%였다. 확률이 기준 라벨과 어긋나는 정도(ECE)도 13개 중 11개 부분집합에서 Jev가 더 작았다.

한계와 주의할 점

  • 10월 18일의 새 커뮤니티 해설이다. 원래 Nimble-v1은 9월 18일, 학습 데이터 파일은 9월 20일 공개됐다.
  • 90.12%는 원래 9B 모델이 324개 합성 기준 라벨과 일치한 비율이다. 사람 주석 시험의 매크로 평균은 74.8%였고 한국어 성능은 측정되지 않았다.
  • 2.179 온도 보정은 원래 리비전에 맞춘 값이다. 현재 9B·v2·API 모델에 동일한 보정 성능을 가정할 수 없다.
  • 원래 공개 가중치와 최신 API 제품은 버전·라이선스·확률이 다르며 독립 성능 재현은 수행하지 않았다.

용어 풀이

결정 모델(Decision Model)
텍스트와 질문 목록을 받아 각 질문에 대해 미리 정해진 선택지 중 하나를 고르고 확률을 반환하는 모델. 추론 과정을 글로 쓰지 않고 한 단계로 답한다. Nimble이 이에 해당한다.
LoRA(Low-Rank Adaptation)
대형 언어 모델을 효율적으로 미세조정하는 방법. 전체 가중치를 업데이트하지 않고 저랭크 행렬만 학습시킨다. Nimble은 Qwen3.5-9B에 LoRA 랭크 16을 적용했다.
기대 보정 오차(Expected Calibration Error, ECE)
예측 확률이 비슷한 사례를 묶어, 각 묶음의 평균 확률과 실제 기준 라벨 일치율 사이 차이를 평균한 지표. 낮을수록 해당 평가 자료에서 확률이 더 잘 맞지만, 새로운 분야에서도 같은 보정을 보장하지는 않는다.

더 깊이 읽기 읽는 데 약 7분

배경과 문제

Nimble은 긴 답변을 쓰는 대신 텍스트와 질문 목록인 스키마를 받아, 미리 정한 선택지의 점수를 계산한다. 결제 서비스가 멈췄다는 문장을 보고 우선순위를 HIGH/LOW 중 고르거나 검토가 필요한지 판단하는 식이다. 결과를 코드에서 바로 쓰는 라우팅·분류·정책 확인에 맞는 형태다. 연구진은 비공개 모델 Jev의 System One 방식에서 영감을 받았으며, 학습과 서빙의 제작법을 공개하는 데 목적을 두었다.

일반적인 답변 생성에서는 그럴듯한 문장을 잘 이어 쓰는 능력이 중요하다. 결정 모델에서는 근거의 작은 변화가 선택을 정확히 바꿔야 한다. Nimble은 Jev의 출력 확률을 따라 배우는 증류를 하지 않았다. 대신 거의 같은 두 사례에서 판단을 바꿔야 하는 사실 하나를 바꾸는 대조 데이터를 만들었다. 다만 데이터 생성과 검사에는 모델 호출을 사용했으므로, AI의 도움 없이 학습 자료를 만들었다는 뜻은 아니다.

학습 신호의 장점과 한계

비슷한 사례를 쌍으로 묶으면 문체나 분야가 아니라 결정을 바꾸는 근거에 집중하도록 학습 신호를 줄 수 있다. 원래 릴리스의 학습 자료는 2,676개, 즉 1,338쌍이다. 그러나 다양한 현실을 작은 규칙과 짧은 사례로 옮기는 과정 자체에 가정이 들어간다. 학습 분야 밖의 문장이나 복잡한 정책에도 같은 효과가 나는지는 별도 시험으로 확인해야 한다.

라벨은 모두 합성 라벨이며 사람이 검토한 정답이 아니다. 별도 모델 호출로 검사하더라도 같은 모델은 비슷한 오류를 되풀이할 수 있다. 근거를 지워도 답을 알아맞힐 수 있는지 확인하는 검사를 넣었지만, 그것이 모든 라벨 오류를 없애지는 않는다. 따라서 자체 합성 시험과 사람 주석을 쓴 외부 시험의 결과를 나눠 읽어야 한다.

연구방법을 단계별로

제작 과정은 네 단계다. 먼저 질문과 정책에서 판단에 필요한 기본 사실을 정리하고, 서로 다른 답이 가능한지 확인한다. 다음으로 둘 다 있어야 답을 알 수 있는 근거 문장 두 개를 쓴다. 그중 한 문장의 최대 여덟 단어만 바꿔 초점 사실 하나와 정답을 뒤집는다. 질문과 정책, 나머지 사실은 그대로 두어 답이 바뀐 이유를 좁힌다.

세 번째로 모델이 사실과 정책의 일관성, 답을 암시하는 문구를 검사한다. 근거 문장을 하나씩 지웠을 때 초점 사실이 알 수 없음이 되는지도 본다. 마지막으로 통과한 사실에 규칙을 코드로 적용해 라벨을 만들고, 두 답이 다른 쌍만 남긴다. 삭제한 예제는 검사에만 쓰며 학습에는 넣지 않는다. 저장한 요청·응답과 검사 기록으로 검증 과정을 오프라인에서 다시 살펴볼 수 있지만, 새로운 모델 응답을 오프라인에서 생성한다는 뜻은 아니다.

학습은 Qwen3.5-9B에 LoRA를 붙여 허용 후보 토큰의 점수만으로 교차 엔트로피를 계산한다. Jev에서 얻은 확률이 아니라 위에서 만든 정답 라벨을 쓴다. 원래 레시피는 LoRA 랭크 16, 학습률 5e-5, 유효 배치 8, 시드 17, BF16, 입력 한도 2,048토큰이다. 선택 과정의 3에폭 학습률 스케줄을 유지하되 1에폭에서 멈췄다. 이는 원래 릴리스의 설명이며 현재 이름이 같은 모든 체크포인트의 제작법과 성능을 뜻하지 않는다.

결과와 숫자의 의미

자체 홀드아웃에서는 원래 Nimble이 292/324, 즉 90.12%의 합성 기준 라벨과 일치했다. 기반 Qwen3.5-9B는 215/324(66.36%), Jev 1.13.0은 302/324(93.21%)였다. 그러나 324개는 서로 가까운 162쌍이고 소스 계열도 6개뿐이다. 기반 모델은 FP32 점수 계산, Nimble은 이전 BF16 결과, Jev는 이전 API 결과를 사용했다. 개발 중 홀드아웃을 반복해서 살펴본 점도 이후 비교의 독립성을 제한한다. 일반 작업의 정답률이 90%라는 결과는 아니다.

사람 주석을 쓴 공개 시험은 13개 부분집합, 총 3,880개 레코드다. 각 부분집합을 똑같이 가중한 매크로 평균은 Nimble 74.8%, Jev 76.0%였고, 모든 레코드를 합친 마이크로 평균은 75.9%, 77.3%였다. 등급 판단 일부에서는 Nimble이 앞섰지만, SummEval은 기사 9개 또는 15개에서 여러 평가를 뽑아 관측치가 독립적이지 않다. 오래된 공개 데이터의 사전학습 오염 가능성도 있어, 한 평균이나 유의확률만으로 전반적인 우월성을 결론 내릴 수 없다.

확률 품질에서는 Jev의 ECE가 13개 중 11개 부분집합에서, Brier 점수가 10개에서 낮았다. 이는 해당 시험에서 예측 확률과 기준 라벨이 더 잘 맞았다는 뜻이다. Nimble은 온도 1.0의 원래 확률로 실행했고 보정 후 재시험은 없었다. 로컬 모델과 API의 장비·메모리 이동·통신 조건이 달라, 이 시험의 지연 시간으로 어느 모델이 더 빠른지 비교하지도 않았다.

구체적인 예시

원문 예시는 환불 승인이다. 계정 42의 환불은 Mira만 승인할 수 있고, 실제 승인 기록에는 서명자 이름이 있다. 두 문서 중 첫 번째는 Mira가, 두 번째는 Noah가 서명했다는 사실만 다르다. 질문이 환불 승인 여부라면 답은 참에서 거짓으로 바뀐다. 이것은 연구진이 든 데이터 제작 예시이며, 실제 고객의 환불을 처리한 운영 사례는 아니다.

서빙할 때는 HIGH/LOW 같은 선택지에 A·B처럼 토큰 하나짜리 코드를 붙인다. 모델의 다음 토큰 점수 중 해당 코드만 읽어 소프트맥스로 정규화하고, 가장 높은 코드를 원래 선택지로 되돌린다. 출력 JSON은 모델이 문장으로 쓰는 것이 아니라 프로그램이 조립한다. 자유로운 답변이나 설명문이 필요할 때는 이 결정 단계 외에 다른 생성 과정이 필요하다.

한계와 오해하기 쉬운 점

후보 확률의 합이 1이라고 실제 정답 확률까지 보장되지는 않는다. 가능한 답이 선택지에 없으면 틀린 후보 중 하나가 높게 나올 수 있어, 맞는 답 없음 선택지도 고려해야 한다. 질문 필드끼리 서로의 답을 보지 못하므로 일관성 검사도 사용하는 코드가 맡는다. 이런 제약은 모델이 올바른 형식의 결과를 내는 것과 그 판단이 맞는 것이 서로 다른 문제임을 보여 준다.

원래 리비전 93ec5d6은 300개에서 온도 2.179를 맞춘 뒤 다른 300개에서 확인했다. 확인 세트의 ECE는 0.128→0.066, 로그 손실은 0.692→0.555로 줄었지만, 324개 홀드아웃 ECE는 0.052→0.054로 나빠졌다. 확인 세트 중 정답이 확률분포인 24개는 ECE에서 제외됐다. 온도는 선택 순서를 바꾸지 않지만 확률과 기대 등급은 바꾼다. 병합 가중치에서는 재검증하지 않았고, 현재 9B의 기본값은 1.0, v2의 2.179는 별도 재보정 없이 옮긴 값이다.

가중치 라이선스는 9B·v2가 Apache 2.0, v3가 비상업 CC BY-NC 4.0으로 다르며, 저장소 코드의 이용 조건과도 구별해야 한다. 현재 공식 API 문서는 nimble-v4를 더 이상 권장하지 않는 이름으로 표시하고 v4-max로 연결하며, nimble-latest도 현재 v4-max를 가리킨다. 원래 9B의 공개 레시피와 최신 API 제품을 같은 모델로 보고 성능·확률·라이선스를 옮겨 적용해서는 안 된다.

실제로 어떻게 활용할까

지원팀과 영업팀 중 티켓을 보낼 곳을 고르거나, 정책 위반 여부를 판단한 뒤 확신이 부족한 사례를 사람에게 넘기는 용도로 시험할 수 있다. 이는 활용 예시이며 실제 운영 성과가 입증됐다는 뜻은 아니다. 자기 데이터로 정답 일치율과 확률 임계값을 확인하고, 모델 버전이나 온도가 바뀌면 다시 측정해야 한다. 높은 후보 확률만 보고 사람 검토를 없애는 방식은 이 자료가 검증한 범위를 넘어선다.

한국어에도 바로 같은 결과를 기대할 수는 없다. 동일한 MASSIVE 발화 350개를 영어와 독일어로 평가했을 때 Nimble은 86.9%에서 83.4%로 내려갔다. 모델 카드는 영어를 표시하고 한국어 평가 결과는 제공하지 않는다. 독일어의 차이가 한국어 성능을 알려 주는 것은 아니므로, 한국어 분류나 라우팅에서는 실제 사용할 문장과 선택지로 별도 검증해야 한다.

원문에서 확인한 근거 5곳
  • Nimble은 Jev에서 증류하지 않았으며, 저장소의 목적은 데이터 큐레이션, 학습, 서빙 방법을 보여 주는 것이다.Note that we did not distill
  • 대조 데이터 큐레이션은 근거 문장 하나에서 최대 여덟 단어를 바꿔 초점 사실 하나를 바꾸고, 그래서 라벨도 바뀐다.Contrastive data curation
  • 자체 홀드아웃 324개에서 Bespoke-Nimble-9B는 기준 라벨 일치율 90.12%, 기반 모델 Qwen3.5-9B는 66.36%, Jev 1.13.0은 93.21%를 기록했다.Evaluation on 324 held-out examples
  • 사람 라벨 공개 벤치마크 13개 부분집합에서 Nimble 매크로 평균 74.8%, Jev 76.0%로 Jev가 1.2%p 앞섰다.Averages
  • 원래 릴리스의 온도 보정은 T=2.179이며, check 세트에서 ECE 0.128→0.066, 로그 손실 0.692→0.555, Brier 0.348→0.295로 개선됐지만 324개 홀드아웃 ECE는 0.052→0.054로 악화했다.Probability temperature

10월 19일(월) 정리 · AI가 쓰고 원문과 대조

다른 AI 글

전체 보기
물리 연구를 통째로 맡겨 보는 AI 시험 FrontierPhysics물리학자 42명이 자기 연구로 만든 과제 56개를 AI 에이전트에게 통째로 맡겼더니, 가장 잘한 AI도 168번 가운데 46…평가·벤치마크난이도 보통AI가 아는 것과 '안다'는 말의 차이를 잰 벤치마크 FinDendro날짜가 붙은 미국 금융 사실 2,226건으로 AI가 실제로 맞히는 것과 '안다'고 말하는 것을 견줬더니, 대부분의 모델에서…평가·벤치마크난이도 보통에이전트 메모에 근거 기록을 연결하는 기억 기법 WikiTraceAI 에이전트가 쌓아 둔 교훈마다 근거가 된 작업 기록을 연결해 되짚게 했더니, 메모 때문에 틀리는 일이 줄고 평균 점수가…연구 · 프리프린트난이도 보통세포 종류별로 DNA 변이 영향을 예측하는 알파게놈 2DNA 100만 글자와 '어떤 세포인지'를 함께 넣는 모델을 만들어, 변이가 세포 종류마다 유전자 활동을 어떻게 바꾸는지 이…공식 연구 발표난이도 어려움시그널 암호 코드 보안을 AI가 증명한 AlphaProof Code사람이 '무엇을 증명할지'를 정하면 AI 에이전트 팀이 증명을 쓰는 방식으로, 메신저 시그널의 암호 코드가 보안 약속을 지킨…공식 연구 발표난이도 어려움AI 모델 파일에 남은 GPU 지문을 읽는 체크포인트 포렌식공개된 AI 모델 파일에 남은 초기값 흔적으로 첫 값을 만든 GPU 계열을 가려내는 방법을 내놓았다. 중국 4개 회사의 모델…기술 보고서난이도 어려움생활 속 일을 실제로 해내는 AI를 평가하는 LifeVal시간 사용 조사와 이용자 설문으로 생활 과제를 정한 평가이며, 공개된 일부 과제 점수의 의미와 한계를 살펴봅니다.평가난이도 쉬움잡음을 지웠더니 언어 판별이 나빠졌다: SceneMaker의 한국어 방송 실험한국어 방송 6편의 발화 3,115구간에서 잡음 제거가 언어 판별 점수를 낮춘 사례를 살펴보고, 검수 방식과 적용 범위를 구…커뮤니티 해설난이도 보통