About

Jev — 글을 안 쓰는 LLM, 판단만 빠르게

입력은 LLM 처럼 받고 출력은 분류기처럼 낸다. LLM 에게 if 문을 시키던 자리를 가져간다

LLM 에게 「이 문의가 결제 건이야, 버그 건이야? JSON 으로 답해」를 시켜 본 적이 있다면, Jev 가 노리는 자리가 바로 거기다. Jev 는 문장을 아예 안 쓰고, 정해 둔 선택지마다 확률만 돌려준다. 이 글을 읽으면 내 서비스의 어떤 AI 호출을 Jev 같은 판단 전용 모델로 바꿀 수 있는지 고를 수 있다.

TypeSafe AI 가 2026-09-15 에 공개했고, 스스로 「System One Model」이라고 부른다. 빠르게 직감으로 고르는 쪽(System 1)만 맡겠다는 이름이다.

입력은 LLM, 출력은 분류기

입력   자연어 상황 설명 + 프로그램 상태 + 선택지 목록
출력   선택지마다 확률   {"approve": 0.91, "reject": 0.06, "escalate": 0.03}

문자열 생성을 포기했으니 타입이 깨질 일이 없다. 공식 글은 RLCD(Reinforcement Learning for Calibrated Decisions)로 학습해 확률이 보정(calibrated)돼 있다고 말한다. 보정됐다는 건 0.9 라고 하면 실제로 열에 아홉은 맞는다는 뜻이다.

쓰는 쪽에서 보면 「학습이 필요 없는 BERT」에 가깝다고 느꼈다. 내부가 BERT 라는 얘기는 아니다. 공식 글은 새 아키텍처라고만 하고 세부는 밝히지 않았다. 쓰는 감각이 그렇다는 거다.

BERT · LLM 과 나란히 놓으면

BERT 류 분류기 LLM (structured output) Jev
태스크마다 학습 필요 (파인튜닝) 불필요 불필요
선택지 정하는 때 학습할 때 고정 프롬프트로 호출할 때마다 자유롭게
출력 라벨 확률 텍스트(JSON) — 가끔 깨짐 타입 값 + 확률
확률 신뢰 과신하기 쉬움 사실상 없음 보정됐다고 주장
이유 설명 없음 있음 없음
지연 아주 빠름 초 단위 70〜500ms (공식)
비용 자체 호스팅 출력 토큰이 비쌈 입력 $0.042/1M 토큰, 출력 무료 (공식)

가격은 공식 글 기준이다. 저자들 스스로 「보조금이 들어간 가격이 아니라고 증명할 수는 없다」고 적어 두었으니, 이 값이 계속 간다고 기대하진 않는 게 맞다.

핵심은 「모르겠다」를 말해 준다는 것

속도보다 이쪽이 크다. 확률이 믿을 만하면 임계값으로 일을 셋으로 나눌 수 있다.

Jev answers with probabilities, so you can gate on themstate + choicestext inJevno text outprobabilitiesapprove 0.91 ...confidence 0.9+apply automatically0.5 to 0.9a human checks firstbelow 0.5hand off to human or LLMThresholds follow the cost of being wrong: read-only can go lower, delete / charge / send stays at 0.9+
case answer['confidence']
when 0.9.. then auto_apply!(answer['choice'])  # 자동 확정
when 0.5...0.9 then flag_for_review!(answer)    # 사람이 보고 확정
else escalate_to_human!                         # 사람(또는 LLM)에게 넘긴다
end

임계값은 틀렸을 때의 피해에 맞춘다. 읽기 전용이면 낮게, 삭제 · 과금 · 송신이면 0.9 이상. 전부 자동 확정하는 설계는 만들지 않는다. 우리 코드에 붙이려고 사용 규칙을 정리하면서 제일 먼저 적은 게 이 줄이었다.

어디에 쓰고 어디에 안 쓰나

쓴다: 모델 라우팅(쉬운 건 싼 모델, 어려운 건 비싼 모델), 화면 자동화(버튼 목록을 주고 버튼별 확률), 정규식으로 포기했던 자연어 판정, 문의 분류 같은 대량 분류.

안 쓴다: 판단 근거를 남겨야 하는 업무(이유를 안 준다), 이미지 입력(아직 텍스트 전용), 선택지 256 개 이상(직접 고르는 상한이 255).

크롬 내장 LLM 이 「브라우저에서 보조만」이었다면(크롬 내장 LLM 은 공짜 API 가 아니다), Jev 는 그 반대편이다. 서버에서, 판정 자체를 빠르고 싸게 한다.

아직 확인 못 한 것

내 데이터로 정확도와 보정을 재 보지는 않았다. 0.9 구간이 정말 90% 맞는지(reliability diagram), 같은 태스크에서 LLM structured output 과 속도 · 비용 · 정확도가 어떻게 다른지는 재 보고 나서 덧붙인다. 그 전까지 위 표의 지연 · 가격 · 보정은 전부 공식 주장이다.

LLM 으로 분류 · 라우팅을 돌리고 있는데 비용이나 속도가 부담이라면 negabaro 에 물어봐도 된다. 어느 호출을 판단 전용 모델로 빼고 어느 걸 LLM 에 남길지 같이 가를 수 있다.

핵심 개념

1

답이 「정해진 선택지 중 하나」인 AI 호출을 찾는다 — 그게 후보다

2

선택지는 호출할 때 정한다 — 학습은 필요 없다

3

confidence 임계값으로 자동 확정 / 사람 확인 / 넘기기를 가른다

4

임계값은 틀렸을 때의 피해 크기에 맞춘다

장점

  • ✓ 출력 타입이 깨지지 않는다 — 문자열을 안 만든다
  • ✓ 확률로 「모르겠다」를 표현해 사람에게 넘기는 설계가 쉽다

단점

  • ✗ 이유를 안 준다 — 감사 로그가 필요한 일엔 못 쓴다
  • ✗ 텍스트 전용, 선택지 상한 255
  • ✗ 지연 · 가격 · 보정은 아직 공식 주장 — 직접 검증 전

사용 사례

모델 라우팅 — 쉬운 요청은 싼 모델, 어려운 요청은 비싼 모델 문의 · 티켓 대량 분류 — 애매한 것만 사람에게 정규식으로 못 잡던 금지 표현 · 톤 체크
← 크롬 내장 LLM(Prompt API)은 공짜 API 가 아니다 ONNX 는 모델이 아니라 포장 규격이다 — Xenova 는 BERT 를 만든 게 아니다 →