01글을 쓰지 않는 모델
2026년 9월 15일 TypeSafe가 공개한 Jev는 글을 쓰지 않습니다. 문서와 기준을 넣고 "이 중 어느 것인가, 그런가, 어느 단계인가"를 물으면 Choice, Noul, Score 세 가지 형태로 값과 확률만 돌려줍니다. 학습 목표가 사람이 읽기 좋은 문장이 아니라 소프트웨어가 바로 쓸 결정과 확률입니다.
- Choice
- 정해 둔 선택지(최대 255개) 가운데 하나와 선택지별 확률
- Noul
- 예 또는 아니오에 대한 0~1 사이 값 하나. confidence 필드가 없습니다.
- Score
- 순서 있는 2~10단계 가운데 어디쯤인지, 확률 가중 값
입력 100만 토큰당 $0.042이고 출력 요금은 없으며, 제가 잰 호출 지연은 중앙값 0.52초였습니다(, 341회). 선택지에 없는 답은 내지 않지만, 그것은 형식의 보장이지 의미가 맞다는 보장이 아닙니다.
싸고 빠르고 형식이 맞는다는 것과, 그 판단이 제 업무에서 맞는다는 것은 다른 문제입니다. 이 사이트는 그 간격을 잰 기록입니다.
영상 1편판단만 하는 AI글을 쓰지 않고 판단만 돌려주는 TypeSafe의 System One 모델, 제브를 소개합니다.02왜 지식 시스템인가
제 볼트에는 10,000+ 노트가 있고, 지식이 움직이는 순간은 두 번입니다. 들어올 때 어디에 둘지, 꺼낼 때 무엇을 먼저 읽을지. 두 순간 모두 답이 닫혀 있습니다. 87개 서브카테고리 중 하나, 검색이 찾아온 후보 중 하나입니다.
검색 엔진은 후보를 넓게 찾는 데 강하고 생성 모델은 문장을 쓰는 데 강하지만, "이 중 무엇인가"라는 닫힌 질문에 매번 부르기에는 생성 모델이 느리고 비쌉니다. 한 번에 1초가 안 걸리는 판단기라면 모든 검색과 모든 새 노트에 붙여 볼 수 있습니다. 닫힌 질문에 확률로 답하는 부품은 바로 이 자리에 맞습니다.
대신 경계를 먼저 그었습니다. 후보를 만드는 일은 검색 엔진과 코드가, 고르는 일은 Jev가, 확정과 이동은 제가 합니다. 저는 이 분업을 PROPOSE라고 부릅니다.
PROPOSE제가 이 부품에 기대하는 것은 정답을 대신 내리는 일이 아니라, 제가 확정할 후보를 좁히고 그 근거를 기록으로 남기는 일입니다.
03무엇을 쟀나
9월 24일 첫 실측에서 같은 confidence 0.7 이상 구간이 채점 재현에서는 97.4%(n=38), 87분류에서는 61.5%(n=13)로 갈렸습니다. 그래서 컷은 과제마다 새로 고르기로 하고, 9월 26일 새벽 세 라운드 3,560회 호출(입력 8,264,570 토큰, $0.3471)로 입력과 검색을 다시 쟀습니다.
라운드마다 첫 호출 전에 절차를 등록했고, 최종 시험 표본은 봉인했다가 한 번만 열었고, 결과를 보고 세운 가설은 앞 라운드가 쓰지 않은 노트로 다시 쟀습니다. 모든 조건에는 Jev를 부르지 않는 코드 기준선을 같은 항목에 붙였습니다.
가장 강한 결과는 검색입니다. 처음 보는 위키 질문 49개에서 Jev가 고른 후보는 44개가 찾던 페이지였고, 검색 목록 1위는 16개였습니다. 후보마다 "이 질문에 필요한가"를 묻고 0.3을 넘는 것만 남기자, 찾던 페이지 45개 중 44개를 지키면서 후보가 평균 17.55개에서 2.39개로 줄었습니다.
분류는 달랐습니다. 87개 칸의 이름만 주면 120건 중 24건, 칸마다 정의 한 줄과 "형식을 먼저 보라"는 지시를 붙이면 91건이었지만, 같은 조건으로 처음 보는 폴더에 가면 65건 중 28건이었습니다.
검색 후보 재선택
처음 보는 위키 질문 49개, 3라운드,
유지 집합 필터, Noul 0.3 초과만 남김
찾던 페이지 45개 중 44개 유지, 3라운드,
87개 서브카테고리 1순위 재현
2라운드 최종 표본 120건, 3라운드 처음 보는 폴더 65건,
04계획에서 바뀐 것
전날 계획에서 검색 재정렬은 보류였습니다. 외부 실험의 개선 폭이 작았기 때문입니다. 제 볼트의 한국어 질문에서는 세 라운드 모두 같은 방향으로 가장 큰 차이를 냈고, 이제 가장 먼저 붙이는 자리가 됐습니다.
반대로 frontmatter의 type만 보고 분류를 정하는 규칙표는 2라운드 최종 표본에서 120건 중 101건으로 가장 좋아 보였지만, 새 폴더에서는 적용된 27건 중 1건만 맞았습니다(). 그래서 규칙이 먼저 끝내고 Jev가 나머지를 맡는 안을 기본값에서 뺐고, 분류는 상위 3개 제안을 제가 고르는 자리로 물렸습니다.
프로젝트 제안은 프로젝트마다 README 설명 한 줄을 넣자 80건 중 69건에서 78건으로 올라(), 설명을 처음부터 넣습니다.
가장 큰 개선은 Jev 밖에서 나왔습니다. 검색 색인이 한글을 음절 단위로 저장하고 있어서 "기록"으로 찾으면 0건, "기 록"으로 찾으면 2,726건이 나왔습니다.
기록0건기 록2,726건같은 색인,
질의를 음절 구문으로 바꾸자 후보에 정답이 든 비율이 55건 중 46건에서 50건으로 올랐습니다. Jev를 고치기 전에 후보를 만드는 층부터 고칩니다.
영상 3편규칙표가 무너진 날결과를 보고 세운 가설은 새 데이터로 다시 잽니다.05주장하지 않는 것
모든 수치는 볼트에 이미 적힌 분류와 위치를 얼마나 재현하는지입니다. 사람이 새로 만든 정답은 아직 0건이라 사람 대비 정확도와 검토 시간 절감은 주장하지 않습니다.
찾는 노트가 후보에 없을 때 Jev가 "해당 없음"을 고른 경우는 5번 중 0번, 4번 중 0번이라() 그 신호를 믿지 않고, 제안이 없거나 보류이면 원래 검색 목록을 그대로 보입니다.
질문은 생성 모델이 만든 것이고, 조건마다 한 번 실행했으며, 0.3이라는 컷은 이 과제에서 한 번 통과한 값입니다. 커뮤니티 사례의 속도와 비용 숫자도 작성자의 주장이라 제 결과와 섞지 않습니다.
다음 순서는 사람 골드입니다. 순서를 뒤집어 물었을 때 답이 갈린 7건부터 제가 판정하고, 판정에 든 시간도 함께 잴 계획입니다.
Jev는 제안하고, 실행은 코드와 사람이 합니다.
Plan v2활용 계획 v2 (공개판)
에 세 모델의 독립 기획, 익명 교차 검토, 블라인드 심사 2건을 거쳐 만든 계획 v2에 실측을 겹쳐 고친 공개판입니다. 이 절의 순서와 다음 측정은 방향이며 일정 약속이 아닙니다.
판정
PROPOSE 유지. 범위는 볼트에 쓰지 않는 shadow 실험입니다. 병합, 이동, 삭제, 발행, 발송, 노출, 배포, 창 이동, 클릭은 Jev 성능과 무관하게 코드와 사람이 합니다. 좋은 결과가 바꾸는 것은 제안이 보이는 범위와 검토 순서뿐입니다.
네 층 분업
코드와 규칙
Jev
생성 LLM
사람
원칙
- 제안은 Jev, 실행은 코드와 사람(PROPOSE).Jev의 답은 제안 필드로만 저장하고, 실행 코드와 제안 필드를 직접 잇지 않습니다.
- 정답은 사람이 만듭니다.모델끼리의 합의는 정답이 아닙니다. 사람은 Jev 답을 보기 전에 판정하고, 기존 메타데이터는 재현 대상일 뿐 골드가 아닙니다.
- 상시 호출하지 않습니다.에이전트가 문서를 읽고 부르는 경로가 아니라 코드가 직접 부르고, 후보 풀이 클 때만 켭니다.
- 컷은 모양만 옮기고 값은 과제마다 고릅니다.같은 confidence 0.7 이상 구간이 채점 재현에서 97.4%(n=38), 87분류에서 61.5%(n=13)였습니다(). 검색 유지 집합에서 2라운드에 고른 0.5는 최종 표본에서 43/50으로 떨어졌고, 등록 전에 고정한 0.3은 3라운드에서 44/45를 지켰습니다().
- 경계 동률과 역순 불일치는 보류입니다.1위와 2위가 같거나, 선택지 순서를 뒤집어 다시 물었을 때 답이 바뀌면 답하지 않습니다. 3라운드 검색에서 이 규칙을 걸면 49건 중 46건에 답했고 그중 43건이 맞았습니다().
- Noul에는 confidence가 없습니다.Choice와 Score용 게이트를 Noul에 씌우지 않고, 세 척도의 확률을 더하거나 곱하지 않습니다.
- 개인정보 필터는 샘플링 전에, 그리고 전송 직전 조립된 payload 전체에 겁니다.제목과 설명만 보는 필터는 본문 머리의 정보를 놓칩니다. API로 보내도 되는 자료와 공개해도 되는 자료는 다르므로 화면, 영상, 페이지, 내보낸 로그에는 두 번째 경계를 둡니다.
- Jev 없는 기준선을 모든 비교에 남깁니다.가장 흔한 분류, 규칙표, 검색 목록 1위, 로컬 검색 1위를 같은 항목에 붙이고, 코드만으로 된 구성이 더 나으면 그것을 씁니다.
- 보류는 공짜가 아닙니다.보류와 역순 게이트는 사람이 다시 볼 양을 늘리므로 보류 건당 검토 시간을 비용에 넣습니다.
- 요청 크기 이중 상한을 코드가 먼저 잽니다.요청 전체 64k 토큰, 개별 판단 32k 토큰. 넘으면 관련 부분만 추출하고, 그래도 넘으면 호출하지 않습니다.
- 모든 호출은 영수증을 남깁니다.요청 모델, 응답 모델, 보낸 payload의 해시, 두 순서의 확률 분포, 결정과 이유를 적고, shadow 로그에 사람의 최종 선택과 같은 행으로 둡니다. 로그는 검색 색인 밖에 둡니다.
- 결과를 보고 세운 가설은 새 데이터로 다시 잽니다.사전 등록, 봉인한 최종 표본, 새 데이터 재시험을 한 묶음으로 씁니다.
- 실패 방향을 먼저 정합니다.제안 기능은 fail-open(제안 없이 원래 화면), 공개, 발행, 권한, 셸 명령은 fail-closed입니다. 응답 모델이 핀과 다르면 제안을 버립니다.
활용처 우선순위
활용처마다 Jev가 하는 일, 코드와 사람이 하는 일, 근거를 분모와 날짜와 함께 적었습니다.
지금shadow
검색 후보 재선택
- Jev
- 후보 목록과 "해당 없음" 중 하나를 Choice로 고르고, 순서를 뒤집어 한 번 더 답함
- 코드와 사람
- 음절 구문 BM25와 벡터 검색을 RRF로 합쳐 후보 생성, 보류나 오류면 원래 목록, 읽을 노트는 사람이 확정
- 근거
- 3라운드 44/49 대 목록 1위 16/49, 2라운드 최종 45/55 대 로컬 검색 1위 26/55 ()
유지 집합 필터
- Jev
- 후보마다 "이 질문에 필요한가"를 Noul로 답함
- 코드와 사람
- 0.3 초과만 남김(엄격 부등호), 컷 변경은 새 라운드 등록
- 근거
- 44/45 유지, 후보 17.55개에서 2.39개로 86.4% 축소 ()
새 노트 분류 후보
- Jev
- 87개 서브카테고리와 정의를 받아 상위 3개 제안
- 코드와 사람
- 사람이 고르고 최종 선택을 로그에 기록, 자동 기입 없음
- 근거
- top-3 적중 2라운드 112/120, 3라운드 새 폴더 42/65 ()
활성 프로젝트 제안
- Jev
- 허용된 프로젝트 목록 중 하나를 고름
- 코드와 사람
- 프로젝트마다 README 설명 한 줄을 판단 재료로 넣음, 이동은 사람
- 근거
- 이름만 69/80, 설명 추가 78/80 ()
기반Jev 없음
예산 카운터, 모델 핀, 오류 처리
- Jev
- 없음
- 코드와 사람
- 401 중단, 422 무재시도, 429와 529만 지수 백오프, 월 상한 도달 시 정지
- 근거
- 세 라운드 재시도 0 ()
전송 규칙과 영수증
- Jev
- 없음
- 코드와 사람
- 금지 경로 규칙, 조립 payload 개인정보 검사, shadow 로그, 판단 영수증 뷰어
- 근거
- 차단해야 하는 테스트 입력 35개 모두 차단 ()
위험한 셸 명령
- Jev
- 2차 의견만
- 코드와 사람
- 하드코딩 차단이 확률보다 먼저
- 근거
- 실습 관찰
첫 운영 적용 후보
문서와 주장의 관계 검증
- Jev
- 지지, 반박, 근거 없음, 보류 중 하나
- 코드와 사람
- 인용문 존재는 문자열 검색, 상태 갱신은 사람
- 근거
- 채점 재현 confidence 0.7 이상 97.4% (n=38, ). 컷 값은 옮기지 않음
평가 제출물의 기준별 증거 심사
- Jev
- 기준마다 증거 지지 여부
- 코드와 사람
- 제출자 동의가 있는 자료만, 점수 합과 배포는 코드와 운영자
- 근거
- 설계 단계, 픽스처로 파이프만
다음 물결
설명과 태그의 의미 검증, 의미 모순 점검, 스킬 오발동 경고, 발행 게이트, 에이전트 복잡도 게이트, 문의 메일 분류, 공지 변경 감지
- Jev
- 닫힌 질문 하나씩
- 코드와 사람
- 충돌 쌍과 변경분은 코드가 먼저 찾음, 발행 게이트는 fail-closed
- 근거
- 문의 메일 가상 5통은 모두 confidence 0.96 이상이라 저확신 분기 미검증 ()
보류
메인 볼트 대 위키 라우팅
- Jev
- 두 볼트 중 하나
- 코드와 사람
- 사람 골드 대기열만
- 근거
- 2라운드 최종 51/80 (63.8%), 순서에 따라 답이 바뀐 7건 ()
세션 로그 분류, 창 배치 제어, 클릭 판정, Score 기반 노출
- Jev
- 없음
- 코드와 사람
- 허용 메타데이터 범위와 가치 측정이 먼저, 실행 권한은 넘기지 않음
- 근거
- 외부 재계산에서 Score 보정이 셋 중 가장 나쁨
기각
상위 9분류로 먼저 거르는 깔때기
- Jev
- 없음
- 코드와 사람
- 단서 기반 후보 압축으로 대체
- 근거
- 상위 9분류 23/109 (21.1%) 대 87분류 56/109 (51.4%),
인물 노트 라우팅, 학생 음성 전사 태깅
- Jev
- 없음
- 코드와 사람
- 전송 금지 경로
- 근거
- 정책
실시간 오디오 경로
- Jev
- 없음
- 코드와 사람
- 약 0.5초 판단과 3ms 동기는 다른 문제
- 근거
- 설계 원칙
다음 측정 (계획)
순서만 정한 방향이며 일정 약속이 아닙니다.
주장하지 않는 것
- 사람 판단 대비 정확도, 검토 시간 절감, 일반적인 추천 품질 향상
- 메인 볼트 검색 성능(3라운드 검색 표적은 모두 위키 페이지)
- "찾는 노트가 없다"를 알려 준다는 것(표적 부재 때 "해당 없음" 0/5, 0/4, )
- 실제 사용자 질문에서의 성능(질문은 생성 모델이 노트 설명을 보고 만든 것)
- 0.3 컷이 다른 과제에도 맞는다는 것
- 결정성(조건마다 1회 실행), 제공사의 속도 비교, "환각 0"
- 커뮤니티 사례의 속도, 비용, 정확도(작성자 주장이며 재현하지 않음)