Jeeves: 추론과 확산 드래프팅을 통한 결정 모델 개선

개요

Jeeves는 "Jev 유사" 결정 모델의 정확도를 향상시키기 위해 설계된 추론 능력을 갖춘 분류기입니다. 최종 결정 전에 추론 체인을 통합함으로써, Jeeves는 보통 정교한 확률을 제공하지만 정확도가 낮은 경향이 있는 결정 모델의 일반적인 트레이드오프를 해결합니다.

Qwen3.5-9B에 LoRA와 포인터 헤드를 기반으로 구축된 Jeeves는 감독 미세조정(SFT)과 CISPO를 활용하여 모델이 결정하기 전에 "생각"할 수 있도록 하여, 도메인 외부 작업 및 JevBench 어려운 벤치마크에서 뛰어난 성능을 발휘합니다.

성능 벤치마크

Jeeves는 Jev 및 Kev-9B와 같은 이전 결정 모델보다 복잡하거나 미처 경험하지 못한 시나리오에서 특히 뛰어난 정확도 향상을 보입니다.

정확도 비교

벤치마크 Kev-9B Jev Jeeves
테스트 전체 (도메인 외부/보류) 0.822 0.857 0.889
JevBench 전체 (231개 공개 항목) 0.715* 0.866 0.935
JevBench 어려움 (111개 공개 항목) 0.451* 0.730 0.865
PAWS 0.763 0.788 0.875
보류된 규칙 구조 0.896 0.885 1.000
대조 정책 0.900 0.963 1.000

참고: JevBench의 Kev-9B 결과는 Kev-8B(Qwen3) 데이터를 기반으로 합니다.

트레이드오프 및 제한 사항

Jeeves는 정확도에서 뛰어나지만, 추론 과정으로 인해 지연 시간이 증가합니다.

  • 지식 격차: MMLU(0.793 vs 0.900) 및 MMLU-Pro(0.739 vs 0.840)와 같은 순수 지식 벤치마크에서는 Jev보다 뒤처집니다.
  • 지연 시간: 전체 추론 체인은 p90 지연 시간이 17초에 이를 수 있습니다. 생각 없이 응답할 경우 약 0.3초입니다.
  • 해석 가능성: 훈련 중 언어 일관성 보상이 사용되지 않았기 때문에, 추론 체인은 높은 해석 가능성은 없습니다.

기술 아키텍처

결정 메커니즘

Jeeves는 상태, 지침, 옵션을 분리하기 위해 특정 프롬프트 형식을 사용합니다. 모델은 </tool_call> 태그 내에서 추론 체인을 생성합니다. 추론 블록 이후, 모델은 다시 지침과 옵션을 포함한 프롬프트를 받고, <decide> 토큰을 출력합니다.

그런 다음 포인터 헤드는 <decide> 토큰의 숨겨진 상태에 대한 쿼리 프로젝션과 해당 옵션의 </opt> 토큰에 대한 키 프로젝션 간의 스케일된 도트 곱을 수행하여 결정을 계산합니다. 최종 확률은 개발 세트에서 온도를 적합시켜 조정된 점수에 대해 소프트맥스를 적용하여 도출됩니다.

훈련 파이프라인

  1. SFT: Qwen3.5-9B와 포인터 헤드에 대해 LoRA(r=16)를 사용하여 2 에포크의 감독 미세조정을 수행하며, 공개 데이터셋과 합성 정책 데이터에서 19,126개의 질문을 활용합니다.
  2. CISPO: 9,992개의 RL 질문에 대해 8번의 롤아웃을 사용하는 강화 학습 스케줄로, 최대 2,560개의 추론 토큰으로 제한됩니다.
  3. 보정: 개발 세트에서 최종 온도 적합을 통해 정교한 확률을 보장합니다.

확산 드래프터

탐욕적 디코딩의 지연을 완화하기 위해 Jeeves는 Orthrus를 영감으로 삼은 확산 드래프터를 구현합니다. 이 드래프터는 Qwen3.5의 게이트드 델타넷 레이어를 지원하기 위해 마스크 토큰이 컨볼루션 이후의 키와 값에 교차 주목할 수 있도록 허용합니다.

속도 향상:

  • 일반적인 탐욕적 디코딩(한 질문): 109 토큰/초
  • 블록 4 드래프터(한 질문): 176 토큰/초 (1.6배 증가)
  • 블록 8 드래프터(한 질문): 193 토큰/초 (1.76배 증가)

구현 및 사용법

Jeeves는 Jev API와 호환되며, 한 요청 내에서 세 가지 유형의 질문을 지원합니다:

  • noul: 예/아니오 질문으로 정교한 확률을 반환합니다.
  • choice: 다중 선택 질문입니다.
  • score: 제공된 레전드 기반 평가 질문입니다.

지연 시간 최적화

사용자는 다음 옵션을 통해 속도와 정확도의 균형을 조정할 수 있습니다:

  • think: 추론 기능을 켜거나 끕니다.
  • max_think: 추론 토큰 수를 제한합니다 (예: 768 토큰으로 설정하면 중앙 지연 시간을 3.3초에서 2.0초로 줄일 수 있음).
  • nothink_threshold: 초기 "생각 없음" 신뢰도가 이 값보다 높으면 추론을 건너뜁니다.

커뮤니티 인사이트

개발자들 사이의 논의는 추론 모델의 높은 정확도와 결정 클래스 모델의 속도 요구 사항 사이의 긴장 관계를 드러냅니다.

"이게 무슨 의미가 있나요, p90이 17초라면요? LLM을 써도 되죠. Jev의 아름다움은 아주 저렴하고 엄청나게 빠르다는 점이에요."

다른 기여자들은 단순한 작업에는 Jev 유사 모델을, 복잡한 작업에는 Jeeves와 같은 추론 능력 모델을 사용하는 하이브리드 접근 방식이 가장 실용적인 생산 경로일 수 있다고 제안합니다. 일부 사용자는 소비자 하드웨어(예: M5 Pro)에서 추론 과정이 매우 느리며, 특정 아이러니 탐지 벤치마크에서 100개의 트윗 처리에 30분 이상이 걸린다고 보고했습니다.

Sources

관련