1 / 1
3-1
JEV & System One 완전정복 · 3강 / 4강 · 3-1 / 3

Choice · Score · Noul — 결정을 만드는 3개의 프리미티브

JEV에게 묻는 방법은 딱 세 종류다 — 하나의 요청에 섞어 쓰고, 병렬로 답을 받는다

선택 · 척도 점수 · 참거짓 확률 · 한 요청에 mix & 병렬 평가
프리미티브 도입

JEV에게 묻는 방법은 딱 3종류다

JEV의 API는 복잡하지 않습니다. 하나의 상태(state)를 주고, 그 상태에 대한 질문(questions)을 던지면 끝입니다. 질문은 세 가지 프리미티브 중 하나예요 — Choice(선택), Score(척도 점수), Noul(참일 확률 0~1). 이 셋은 한 요청에 섞어 넣을 수 있고, 같은 상태를 공유하며 병렬로 동시에 평가됩니다.

상태 하나state
choice 어느 팀? billing
score 불만 강도 0.72
noul 긴급한가? 0.999
타입 답+ 확률·confidence
한 요청에 Choice·Score·Noul을 섞어 — 같은 상태에서 병렬로 동시 평가

💡 답은 언제나 타입이 정해진 값 + 확률 + confidence로 돌아옵니다. 문자열을 파싱할 일이 없습니다.

한눈 비교

세 프리미티브를 한 표로

프리미티브하는 일출력예시
Choice여러 옵션 중 하나 선택선택값 + 각 옵션 확률분포 + confidence티켓을 어느 팀으로 라우팅
Score정해진 순서 척도(rubric)로 평가연속 점수 + confidence고객 불만 강도(low·mid·high)
Noul"참인가?"를 묻는 참/거짓 질문0~1 사이 확률 하나"환불 요청인가?" · "긴급한가?"

💡 셋의 공통점 — 유효한 출력이 스키마에 미리 정의돼 있어 환각도 타입 에러도 나올 수 없습니다. 차이는 오직 "무엇을 묻느냐"입니다.

각각 깊이 보기

Choice · Score · Noul, 하나씩 뜯어보면

Choice — 선택
정의된 옵션 중 하나를 고릅니다. 선택값뿐 아니라 각 옵션의 확률분포confidence까지 함께 줍니다. 예: 티켓을 결제팀·기술팀·영업팀 중 어디로 보낼지.
Score — 척도
low/medium/high처럼 순서가 있는 척도(rubric)에 대해 평가해 연속 점수 + confidence를 냅니다. 예: 고객 불만이 얼마나 강한가.
Noul — 참/거짓
"참인가?"라는 단순한 참/거짓 질문0~1 사이 확률 하나로 답합니다. 가장 단순하고 가장 자주 쓰입니다. 예: "이건 환불 요청인가?"
🛡️ Choice: 정의된 옵션만
"결제팀" "기술팀" "영업팀" "긴급결제팀"
Choice는 미리 정의한 옵션 중에서만 고릅니다 — 목록에 없는 값은 나올 수 없습니다.

💡 세 출력 모두 확률/신뢰도를 품고 있다는 게 핵심입니다. 코드가 "확신 높으면 자동, 낮으면 사람에게"를 그대로 구현할 수 있습니다.

왜 이렇게 나눴나

결정 유형을 '타입'으로 못박은 이유

💡
핵심 정리

세 프리미티브는 각각 출력 타입이 다릅니다. Choice는 정의된 옵션 집합에서 고른 값, Score는 순서 척도 위의 연속 점수, Noul은 0~1 참 확률을 냅니다. 결정의 형태를 이 세 타입 중 하나로 고정하면, 응답이 스키마에 정의된 형태를 벗어날 수 없어 코드가 파싱 없이 값을 바로 소비합니다.

💡 LLM처럼 "문자열을 뽑아 다시 파싱"하는 대신, 처음부터 타입 있는 답을 받는 겁니다.

정리

3-1강 한 장 요약

Next up

3-2강에서는 이 프리미티브를 실제 코드로 호출합니다. state와 questions를 어떻게 넣는지, 지원 티켓 예제의 JSON 요청/응답LangChain 파이썬 코드를 직접 보고, 질문을 여러 개 섞어도 왜 응답 시간이 거의 그대로인지 확인합니다.