Python 25줄로 구현한 Jev

3 days ago 12

NobodyWho가 선택지가 담긴 프롬프트를 받아 확률을 출력하는 로컬 분류 예제로 Jev를 흉내 냄 Qwen3-0.6B-GGUF를 불러와 선택지 레이블의 로짓을 추출하고, 이를 정규화해 선택지별 확률로 변환함 회사 소유가 아닌 로그인 페이지에서 비밀번호를 요구하는 급여 담당자 이메일 예제에서 피싱 확률 0.885를 출력함 API 호출, 합성 데이터 생성, RLCD를 통한 확률 보정 학습은 수행하지 않는다는 점에서 실제 Jev와 차이가 있음 빠른 로컬 분류와 외부로 데이터를 보내지 않는 실행을 강조하지만, 실제 Jev의 완전한 재현이 아닌 패러디 게시물임 로컬 모델로 선택지별 확률 계산하기 Jev를 대규모 언어 모델과 AI 패러다임의 새로운 개척지로 보는 열기에 회의적인 태도로, Python 25줄 예제를 내놓음 Python 3.12 이상에서 huggingface-hub, llama-cpp-python, numpy를 사용해 모델을 로드함 Llama.from_pretrained로 Qwen/Qwen3-0.6B-GGUF의 Qwen3-0.6B-Q8_0.gguf를 불러오며, 다른 GGUF 모델도 사용할 수 있음 설정은 n_ctx=512, logits_all=True, verbose=False임 A/B/C 레이블을 각각 Legitimate, Spam, Phishing에 대응시키고, 이메일을 보고 하나를 고르도록 프롬프트를 구성함 입력은 “급여 담당자가 회사 소유가 아닌 로그인 페이지에서 비밀번호를 요구한다”는 내용임 <|im_start|>와 <|im_end|> 구분자, 비어 있는 <think> 블록을 넣고, add_bos=False, special=True로 토큰화해 평가함 마지막 입력 토큰 위치의 로짓(logits) 에서 각 레이블의 첫 번째 토큰에 해당하는 값을 추출함 numpy.logaddexp.reduce로 정규화한 로그 확률을 구한 뒤, numpy.exp로 선택지별 확률을 계산함 출력은 소수점 셋째 자리까지 반올림하며, Legitimate/Spam/Phishing 순으로 로짓은 26.254/27.262/29.614, 로그 확률은 -3.482/-2.474/-0.122임 최종 선택지 내 확률은 정상 0.031, 스팸 0.084, 피싱 0.885임 실제 Jev와의 차이와 패러디의 범위 이 예제에는 실제 Jev와의 차이가 있음 System One decision model이라는 명칭을 붙...

Read Entire Article