Jeff: Jev 호환 0.8B 및 2B 제로샷 분류용 의사결정 모델

Jeff는 제로샷 분류를 위해 미세 조정된 소형 오픈 웨이트 언어 모델 모음입니다. 텍스트를 생성하지 않고 단일 순방향 패스(forward pass)를 사용하여 옵션 세트에 대한 보정된 확률을 반환함으로써, Jeff는 기존 LLM 기반 분류 방식에 대한 고속 대안을 제공합니다. 0.8B 파라미터 모델은 NVIDIA RTX PRO 6000에서 약 22ms, Apple M4 Max(MLX 사용)에서 28ms의 의사결정 지연 시간을 달성합니다.

고속 의사결정

Jeff의 주요 가치 제안은 극도의 속도와 비용 효율성입니다. 토큰을 반복적으로 생성하는 생성형 LLM과 달리, Jeff는 애플리케이션 코드에 직접 삽입되는 분류기 역할을 합니다.

성능 지표

모델 파라미터 NVIDIA RTX PRO 6000 Apple M4 Max (MLX) CPU (32 스레드)
Jeff-Qwen3.5-0.8B 0.8B 22 ms 28 ms 463 ms
Jeff-Qwen3.5-2B 2B 24 ms 60 ms 708 ms
Jeff-Gemma4-E2B 2B 유효 29 ms N/A 1.0 s

이러한 속도는 음성 내비게이션이나 게임 AI와 같이 기존 API 기반 모델(예: Jev)이 너무 많은 지연 시간(예: 호출당 114–212ms)을 유발할 수 있는 실시간 의사결정 루프를 가능하게 합니다.

제로샷 분류 및 벤치마크

Jeff는 사용자가 상황과 옵션 목록을 평이한 언어로 설명하는 제로샷 작업용으로 설계되었습니다. 모델은 설명을 바탕으로 가장 가능성이 높은 옵션을 선택합니다.

벤치마크 결과

5개의 공개 벤치마크에서 Jeff-Qwen3.5-2B 모델은 83.1%의 전체 정확도를 달성하여 Jev의 발표 수치(83.0%)와 대등한 성능을 보였습니다. Jeff는 분류 및 접지(grounding) 작업에서 탁월하며 Financial PhraseBank(96.3% vs 77.0%) 및 RAGTruth(88.9% vs 77.3%)에서 Jev를 능가하지만, 추론 중심의 벤치마크에서는 뒤처집니다:

  • BBH: 64-68% (Jeff) vs 94.3% (Jev)
  • JudgeBench: 60-64% (Jeff) vs 78.6% (Jev)
  • JevBench Hard: 47-53% (Jeff) vs 73.3% (Jev)

이러한 성능 격차는 모델 크기가 작기 때문에(0.8B~2B 파라미터) 예상된 결과이며, 이 모델들은 다단계 추론기가 아닌 "시스템 1" 판단 도구로 의도되었습니다.

로컬 학습 및 구현

Jeff는 RTX PRO 6000 워크스테이션 GPU 1대를 사용하여 전적으로 로컬 하드웨어에서 구축되었습니다. 학습 과정에는 256개의 배치와 옵션 문자에 대한 교차 엔트로피를 사용한 1 에포크의 전체 가중치 미세 조정이 포함되었습니다.

  • 합성 데이터: 학습 데이터는 2대의 DGX Spark에서 Qwen3.8-Flash-Next에 의해 생성되었으며, 폐쇄형 모델은 품질 검증용으로만 사용되었습니다.
  • 학습 시간: 0.8B 모델은 약 2시간, 2B 모델은 3.5시간이 소요됩니다.
  • 미세 조정: 도메인별 작업의 경우, 짧은 미세 조정을 통해 정확도를 크게 높일 수 있습니다. 한 예로, 음성 내비게이션 작업에서 단일 GPU로 30분 이내에 정확도가 31.7%에서 95.8%로 향상되었습니다.

실용적 적용: 게임 테스트

비벤치마크 데이터에 대한 제로샷 기능을 테스트하기 위해 Jeff는 Doom, Frogger, Pac-Man 세 가지 게임을 플레이하는 데 사용되었습니다.

  • Doom: Jeff-0.8B는 에피소드당 6.55킬을 달성하여 수동 코딩된 규칙 봇 및 Jev의 발표된 실행 결과와 일치하는 성능을 보였습니다.
  • Frogger: Jeff-0.8B는 10.3회의 횡단을 달성하여 학습되지 않은 기본 모델(1.0)보다 훨씬 뛰어난 성능을 보였습니다.
  • Pac-Man: Jeff-0.8B는 57개의 펠릿을 수집하여 규칙 봇 성능의 약 60%를 달성했습니다.

사용 지침 및 주의 사항

Jeff의 효과를 극대화하려면 개발자는 다음 지침을 따라야 합니다:

  • 코드로 추론하고 Jeff로 결정하라: Jeff를 계획자가 아닌 분류기로 사용하십시오. 미래 상태를 예측하도록 요청하기보다는 이동의 결과(예: "이 이동을 하면 차에 치입니다")를 제공하십시오.
  • 표현이 중요하다: 옵션에 대한 일관되고 설명적인 표현이 중요합니다. 목표를 설명하는 방식의 작은 변화가 성능에 큰 개선을 가져올 수 있습니다.
  • 옵션 키: 지연 시간과 토큰 오버헤드를 최소화하기 위해 짧은 키(예: {"1": "환불 요청"})를 사용하십시오.

커뮤니티 피드백

이 프로젝트는 로컬 우선 접근 방식과 속도 면에서 찬사를 받았지만, 일부 사용자는 사용 사례에 따라 제로샷 정확도가 크게 달라질 수 있다고 지적했습니다. 한 사용자는 특정 애플리케이션에서 Jev와 비교했을 때 정확도에 상당한 격차(70% vs 94%)가 있다고 보고했으며, 이는 전문화된 작업을 위한 미세 조정의 중요성을 강조합니다.

프로젝트 기록 및 라이선스

Jeff는 Jev 스타일의 결정을 반환하도록 모델을 미세 조정하기 위한 오픈 소스 레시피인 AutoJev의 포크입니다. 가중치는 Apache 2.0 라이선스 하에, 코드는 MIT 라이선스 하에 배포됩니다.

Sources

관련