Jev 글 두 편에 나오는 용어를 둘씩 짝지어 비교했습니다. 본문을 읽다가 막히는 단어가 있으면 여기서 찾아보세요.
큐(Queue)는 먼저 들어온 것을 먼저 꺼내는 줄이에요. 스티어(Steer)는 조건에 따라 목적지를 정하는 이정표예요.
단어를 이어 쓰는 decode는 큐예요. Choice, Score, Noul은 스티어예요. 문장을 쌓지 않고, 어느 칸으로 갈지만 정해요.
큐와 스티어
| 구분 | 큐 | 스티어 |
|---|---|---|
| 핵심 개념 | 토큰을 순서대로 쌓아 두는 줄 | 상태를 어느 칸으로 보낼지 정하는 경로 |
| 동작 방식 | 앞 토큰이 다음 토큰의 조건이 돼요. FIFO예요. | 보기나 예, 아니오를 미리 정하고 한 쿼리에 읽어요. |
| 입력 | 지금까지 쓴 문장과 KV cache | 상태와, 호출 전에 적은 질문 |
| 출력 | 다음 단어 하나 | 확률. 문장은 없어요. |
| 비유 | 은행 창구의 대기줄 | 교차로의 이정표 |
prefill은 질문을 한 번에 읽는 구간이에요. decode는 그 다음, 단어를 하나씩 꺼내는 구간이에요.
읽는 동안은 병렬이에요. 쓰는 동안은 순차예요. Jev는 쓰는 구간이 없어요.
prefill과 decode
| 구분 | prefill | decode |
|---|---|---|
| 핵심 개념 | 입력을 한 패스로 읽어요. | 다음 토큰 하나를 고르고, 그걸 조건으로 다시 고르요. |
| 동작 방식 | 토큰을 같이 넣어요. KV cache를 만들어요. | cache에 한 칸을 붙일 때마다 루프가 늘어요. |
| 입력 | 프롬프트 전체. Jev는 상태와 질문. | 지금까지의 토큰과 cache. |
| 출력 | cache. 답 문장은 아직 없어요. | 다음 단어. 100토큰이면 100번이에요. |
| 비유 | 문제를 통째로 읽는 시간 | 답을 한 글자씩 받아쓰는 시간 |
요청 한도는 64k예요. 상태와 제일 긴 질문을 더한 상한은 32k예요.
BERT는 라벨이 학습 때 고정된 분류기예요. 제로샷은 그 라벨을 질문 문장으로 바꿔, 호출할 때 정해요.
만든 사람은 Jev를 제로샷 분류기라고 했어요. 다른 점은 질문을 코드에서 바꾸고, 확률을 빈도에 맞춘다는 거예요.
BERT와 제로샷
| 구분 | BERT | 제로샷 |
|---|---|---|
| 핵심 개념 | 문장을 한 번 읽고, 정해 둔 칸에 점수를 줘요. | 칸의 뜻을 질문 문장으로 가져와요. |
| 동작 방식 | 라벨을 바꾸면 데이터를 모아 다시 학습해요. | 질문 문장만 고쳐요. 재학습이 없어요. |
| 입력 | 토큰으로 자른 문장. 보통 512까지. | 상태와 질문. |
| 출력 | 고정 라벨의 비율. 합은 1인데, 보정은 안 된 경우가 많아요. | 그 질문의 확률. Choice, Score, Noul. |
| 비유 | 시험지를 인쇄한 뒤 답을 고치는 일 | 시험 문제를 그 자리에서 적는 일 |
RLHF는 사람이 더 좋아하는 문장에 점수를 줘요. RLCD는 말한 확률이 실제 빈도와 맞는지를 봐요.
한쪽의 출력은 문장이에요. 다른 쪽의 출력은 분포예요. 학계의 RLCD는 Contrastive Distillation이라, 이름만 같아요.
RLHF와 RLCD
| 구분 | RLHF | RLCD |
|---|---|---|
| 핵심 개념 | 사람이 고른 답에 보상을 줘요. | 확률 분포 자체에 보상을 줘요. |
| 동작 방식 | 자신 있고 긴 문장이 점수를 가져가요. | 99%라고 하고 틀리면 크게 깎여요. 애매하면 0.5가 더 나아요. |
| 입력 | 두 문장 중 사람이 고른 쪽. | 말한 확률과, 그때 실제로 맞았는지. |
| 출력 | 문장. 306회에서 틀린 3건은 확신 0.9~1.0. | 확률. 같은 판정에서 틀린 2건은 0.2~0.3. |
| 비유 | 듣기 좋은 대답을 고르는 심사 | 강수 확률을 채점하는 예보 |
// RLHF. 사람이 고른 문장이 보상이에요.
reward = preference("바로 처리해 드릴게요.")
// 출력
"바로 처리해 드릴게요."
// RLCD. 행동 자체가 확률이에요.
reward = -((p - y) ** 2)
// 출력
{ "noul": 0.62 }306회의 확신 구간은 리서치 브리프에 있어요. ECE 0.037 대 0.058도 그 다음에 적혀 있는데, 어느 숫자가 어느 모델인지는 그 문장만으로는 못 박지 않아요. 0.62는 애매할 때의 모양 예시예요.
Choice는 보기를 하나 고르는 match예요. Noul은 예일 확률 하나만 주는 if예요.
같은 환불 질문을 두 형식으로 물으면 답이 달라요. Noul은 0.22, Choice의 no는 0.99, yes는 0.01이에요.
Choice와 Noul
| 구분 | Choice | Noul |
|---|---|---|
| 핵심 개념 | 정해 둔 보기 중 하나를 골라요. | 그 문장이 예인지만 물어요. |
| 동작 방식 | 확률의 합은 1이에요. 보기는 255개까지. | 0에서 1 하나. 0.5는 중간이 아니라 모르겠다는 뜻이에요. |
| 입력 | 보기 이름과, 그 보기가 뭔지 적은 문장. | 질문 문장. 예와 아니오의 뜻은 적어도 돼요. |
| 출력 | choice, 보기별 확률, confidence. | noul 하나. confidence 칸은 없어요. |
| 비유 | 선다형에서 한 칸을 고르는 일 | 예, 아니오에 동그라미를 치는 일 |
{
"type": "choice",
"choice": "returns",
"probabilities": {
"billing": 0.01,
"orders": 0.01,
"returns": 0.95,
"account": 0.03
},
"confidence": 0.92
}
{
"type": "noul",
"noul": 0.22
}returns 0.95는 문서에 있는 Choice 반환 모양이에요. 0.22와 0.99는 jev-1.13 jaggedness 문서의 환불 질문이에요. LLM은 같은 자리에서 「반품 팀으로 보내 주세요」라는 문장을 써요.
Score는 순서가 있는 눈금 위의 자리예요. Choice는 순서가 없는 칸 중 하나예요.
점수는 눈금에 확률을 곱해 더한 값이라, 눈금 사이에 떨어질 수 있어요. 그 사이를 정확한 크기로 쓰면 안 돼요.
Score와 Choice
| 구분 | Score | Choice |
|---|---|---|
| 핵심 개념 | 낮은 눈금에서 높은 눈금으로의 자리 | 서로 순서가 없는 보기 중 하나 |
| 동작 방식 | 눈금은 2개에서 10개. 기댓값이 나와요. | 확률이 한 보기에 몰리면 confidence가 높아요. |
| 입력 | 상황을 적은 눈금 문장. 낮은 쪽부터. | 보기 키와 설명. |
| 출력 | score, 눈금별 확률, legend, confidence. | choice, 보기별 확률, confidence. |
| 비유 | 통증 척도에서 눈금을 가리키는 일 | 부서 이름 중 하나를 고르는 일 |
{
"type": "score",
"instructions": "얼마나 급한가?",
"criteria": [
"사실만 말함",
"답답하지만 공손함",
"지금 해결을 원함"
]
}confidence는 맞을 확률 그 자체가 아니에요. 분포가 한쪽으로 몰린 정도예요. Noul의 숫자는 예일 확률이에요.
confidence와 확률
| 구분 | confidence | noul |
|---|---|---|
| 핵심 개념 | 분포의 모양. 뾰족하면 높아요. | 그 문장이 예일 확률. |
| 동작 방식 | Choice와 Score에만 있어요. | 칸이 하나예요. 그 숫자가 확신의 역할이에요. |
| 입력 | 보기별 확률. | 질문 하나. |
| 출력 | 0에서 1. 문서 예시의 returns는 0.92. | 0에서 1. 문서의 환불 예시는 0.22. |
| 비유 | 답이 한 칸에 모였는지 보는 일 | 비가 올 확률을 적는 일 |
입력은 100만 토큰에 $0.042예요. 출력은 무료예요. LLM 출력 토큰은 입력의 약 5배라고 발표 글이 적어요. 고객 응대는 Jev 76.0%, $0.0001. 최고 LLM은 78.3%, $0.0323.