메타데이터
- 날짜: 2026-09-26
- 채널: TechBridge-KR
- 원문 제목: [한영자막] Jev로 더 빠르고 스마트한 에이전트 하네스를 구축하는 방법입니다
- 원문 URL: https://www.youtube.com/watch?v=BJeHhsMVc8A
- video_id: BJeHhsMVc8A
- 콘텐츠 유형: YouTube 기술 다이제스트
- 주요 주제: Jev, TypeSafe AI, System 1 모델, LangChain, 에이전트 하네스, 모델 라우팅, 런타임 안전성, 온라인 평가
📌 핵심 질문 / 이 영상이 다루는 핵심 논점
==모든 판단을 느리고 비싼 대규모 언어 모델(LLM)에 맡기지 말고, 빠르고 저렴한 정형 판단을 Jev에 분리하면 에이전트 하네스(agent harness)의 속도·비용·안전성을 함께 개선할 수 있다.==
- Jev는 텍스트를 생성하는 범용 LLM이 아니라 상태(state), 질문(question), 타입이 있는 답변(typed answer), 확률(probability)을 다루는 System 1 모델이다.
- 분류형 작업에서 Jev는 LLM보다 20~200배 빠르고 40~400배 저렴하다고 소개된다.
- 모델 라우팅, 위험한 도구 호출 차단, 온라인 평가의 자동 심사처럼 반복적이고 정형화된 에이전트 판단을 Jev로 분리할 수 있다.
에이전트의 핵심 루프는 요청을 LLM에 전달하고, LLM이 도구를 호출해 결과를 받은 뒤 다시 판단하는 과정을 반복하는 구조다. 이 루프는 강력하지만 LLM은 텍스트를 입력받아 텍스트를 출력하므로 예측 가능성이 낮다. 도구 호출(tool calling)과 구조화된 출력(structured outputs)은 이 문제를 완화했지만, 단순 분류와 안전성 판단까지 비싼 LLM에 맡길 필요는 없다. Jev는 이런 좁고 명확한 판단을 병렬·정형 방식으로 처리하는 계층을 에이전트 하네스에 추가한다.
1. 에이전트 루프를 코드가 다룰 수 있게 만드는 기본 프리미티브
에이전트는 LLM의 개방형 생성 능력과 코드 애플리케이션의 엄격한 타입 시스템 사이를 연결해야 한다.
1.1. 기본 에이전트 루프의 작동 방식
-
요청에서 행동으로 이어지는 반복 루프
- 요청 수신: 사용자의 요청이 에이전트에 들어오면 먼저 LLM에 전달된다.
- 도구 호출: LLM은 필요한 행동을 결정하고 도구(tool)를 호출한다.
- 결과 처리: 도구가 결과를 반환하면 LLM이 결과를 읽고 다음 도구 호출을 이어가거나 작업을 종료한다.
-
강력하지만 예측하기 어려운 생성 모델
- 텍스트의 비결정성: LLM은 텍스트를 입력받아 텍스트를 출력하므로, 코드가 바로 소비할 수 있는 구조가 항상 보장되지 않는다.
- 코드 중심 애플리케이션의 요구: 실제 소프트웨어는 원시 텍스트보다 구조화된 타입(structured type)에 의존하므로, 모델 출력에 일정한 형식을 부여해야 한다.
1.2. 도구 호출과 구조화된 출력
-
도구 호출(tool calling)
- 구조화된 요청: 모델이 단순 문장이 아니라
get order요청과 주문 ID 같은 필드를 갖춘 요청을 보낸다. - 구조화된 결과: 도구는 주문 정보처럼 미리 정의된 구조의 데이터를 반환하고, 모델은 그 결과를 다음 판단에 사용한다.
- 구조화된 요청: 모델이 단순 문장이 아니라
-
구조화된 출력(structured outputs)
- 출력 타입 결합: 모델에 원하는 출력 타입을 바인딩하면 모델은 임의의 텍스트 대신 지정된 JSON 스키마(JSON schema)를 따르는 최종 결과를 생성한다.
- 코드와 모델의 접점: 도구 호출과 구조화된 출력이라는 두 프리미티브 덕분에 코드 기반 애플리케이션이 에이전트 루프를 안정적으로 사용할 수 있다.
2. Jev의 정체: 텍스트 생성기가 아닌 System 1 모델
Jev는 TypeSafe AI가 만든 범용 대화형 LLM의 대체재가 아니라, 소프트웨어가 직접 사용할 수 있는 빠른 정형 판단 모델이다.
2.1. 상태·질문·타입이 있는 답변
-
System 1 모델의 정의
- 빠른 정형 의사결정: TypeSafe AI의 문서에 따르면 System 1 모델은 소프트웨어가 직접 사용할 수 있는 빠르고 구조화된 결정을 내리도록 설계된 AI 모델이다.
- 상태와 질문의 평가: 모델은 어떤 상태(state)와 질문(question)을 받고, 타입이 있는 답변(typed answer)과 확률(probability)을 반환한다.
- 텍스트 입출력과의 차이: 전통적인 LLM처럼 텍스트를 받아 텍스트를 생성하는 방식이 아니라, 정의된 질문에 대해 코드가 소비할 수 있는 답을 즉시 낸다.
-
System 1이라는 이름의 배경
- Daniel Kahneman의 구분: 『Thinking, Fast and Slow』는 사고를 빠르고 값싼 직관적 System 1과 느리고 비싼 숙고형 System 2로 나눈다.
- 모델 설계에 적용된 비유: TypeSafe AI는 빠르고 저렴하며 거의 즉시 타입이 있는 결정을 내리는 Jev를 System 1로 부른다.
- LLM과의 대비: 표준 LLM은 개방형 문제를 단계적으로 추론하는 데 더 적합한 System 2 쪽에 가깝고, Jev는 명확한 정형 판단을 빠르게 처리한다.
2.2. 속도·가격·적용 범위
-
분류 작업에서의 성능 이점
- 속도: 분류형 작업에서 Jev는 LLM보다 20~200배 빠를 수 있다고 소개된다.
- 비용: 같은 종류의 작업에서 40~400배 저렴할 수 있다고 설명된다.
- 즉시성의 의미: 에이전트의 매 도구 호출 앞뒤에 정형 판단을 추가해도 사용자가 체감하는 지연을 크게 늘리지 않을 수 있다.
-
범용 대체재가 아닌 전문화 계층
- 드롭인 대체 불가: Jev는 LLM을 그대로 바꿔 끼우는 모델이 아니다.
- 잘 맞는 작업: 분류, 점수 산정, 이진 판단처럼 답변 공간이 명확한 작업을 LLM에서 Jev로 옮기는 방식이 적합하다.
- LLM과의 분업: 개방형 생성과 복잡한 단계별 추론은 LLM에 남기고, 빠르게 반복되는 결정은 Jev가 맡는다.
2.3. PII 분류 데모가 보여준 차이
-
동일 질문에 대한 서로 다른 응답 방식
- 질문: 주어진 텍스트에 개인 식별 정보(PII, personally identifiable information)가 포함되어 있는지를 묻는다.
- LLM의 처리: LLM은 설명 텍스트와 구조화된 출력을 생성하며 약 5초가 걸린다.
- Jev의 처리: Jev는 거의 즉시 개인 식별 정보가 있을 확률을 98%라고 반환한다.
-
에이전트 설계상의 의미
- 단순 판단의 최적화: PII 존재 여부처럼 답이 분류에 가까운 문제를 매번 생성형 LLM에 맡기는 것은 속도와 비용 측면에서 비효율적일 수 있다.
- 판단 지점 확장: 현재 에이전트가 LLM에 맡긴 여러 분류·의사결정 단계를 Jev로 옮길 후보로 볼 수 있다.
3. Jev가 답하는 세 가지 질문 유형
하나의 상태에 대해 선택, 점수, 이진 판단을 요청할 수 있으며 여러 질문을 한 번에 병렬 처리할 수 있다.
3.1. 예시 상태와 선택(choice) 질문
-
고객 상태 정의
- 원문 상태: "3일째 Stripe 계정을 연결하려고 했지만 계속 실패하고 있습니다. 매출을 잃고 있으니 최대한 빨리 도와주세요."라는 고객 메시지를 상태로 넣는다.
- 상태의 정보량: 결제 서비스 연결 실패, 문제 지속 기간 3일, 매출 손실, 높은 긴급성이 하나의 상태에 함께 들어 있다.
-
선택 질문의 답변
- 질문: 이 문제를 어느 팀이 처리해야 하는지를 여러 선택지 중 하나로 고른다.
- 결과: billing 팀에 해당하는 점수는 0.84이며, confidence는 0.596으로 제시된다.
- 활용: 고객 문의를 담당 팀으로 자동 라우팅하거나 후속 에이전트의 전문 영역을 선택할 수 있다.
3.2. 연속 점수(score) 질문
-
감정 상태를 척도로 표현
- 질문: 고객이 calm, frustrated, very angry 중 어느 정도로 보이는지를 연속적인 척도로 평가한다.
- 결과: 점수는 1.035로, 고객이 좌절한 상태이지만 매우 화난 단계까지는 아니라는 해석이 가능하다.
-
정량 판단의 장점
- 경계값 기반 처리: 점수에 따라 일반 응대, 우선 처리, 사람에게 에스컬레이션 같은 정책을 나눌 수 있다.
- 문맥 보존: 감정이라는 모호한 개념도 정해진 척도와 점수로 바꿔 후속 코드가 사용할 수 있다.
3.3. 이진·확률(dual) 질문
-
예·아니오에 가까운 판단
- 질문: 고객 메시지가 긴급성 또는 시간 민감성을 전달하는지를 묻는다.
- 결과: 0에서 1 사이의 값으로 0.999가 반환되어, 해당 사례의 긴급성이 매우 높음을 나타낸다.
-
정책 실행 연결
- 즉시 우선순위 부여: 높은 확률이면 일반 큐를 건너뛰고 우선 처리 경로로 보낼 수 있다.
- 형식의 명확성: 자연어 설명을 다시 해석하지 않고 확률값을 바로 런타임 조건문에 연결할 수 있다.
3.4. 여러 질문의 병렬 처리
-
하나의 상태에 여러 질문 보내기
- 병렬 응답: 같은 고객 상태에 담당 팀, 감정 점수, 긴급성 여부를 동시에 물을 수 있다.
- 효율성: Jev는 여러 질문을 병렬로 답하므로 질문마다 별도 추론 단계를 순차적으로 기다릴 필요가 적다.
-
LLM 중심 흐름과의 대비
- 순차 추론의 비용: LLM은 질문을 단계적으로 처리하는 경향이 있어 질문 수가 늘면 지연과 비용이 함께 커질 수 있다.
- 하네스 최적화: 독립적인 판단을 Jev의 병렬 질문으로 묶으면 에이전트 루프의 반복 지연을 줄일 수 있다.
4. LangChain에서 Jev 사용하기
LangChain은 TypeSafe 통합을 제공해 에이전트 코드 안에서 Jev를 호출할 수 있게 한다.
4.1. 통합 구성
-
Type-Safe 통합 가져오기
- 패키지 경로: LangChain Type-Safe 통합에서 Type-Safe classifier를 import한다.
- 인증 준비: 먼저 TypeSafe API key를 발급받아야 한다.
-
호출 흐름
- 입력: 상태와 질문 목록을 classifier에 전달해 Jev를 invoke한다.
- 출력: 응답에는 보낸 각 질문에 대응하는 답변이 포함된다.
- 애플리케이션 연결: 답변을 모델 선택, 도구 차단, 평가 점수 같은 다음 단계의 조건으로 사용할 수 있다.
4.2. 빠른 판단 계층으로서의 하네스
-
역할 분리
- LLM의 역할: 복잡한 문제를 이해하고 여러 도구를 조합하며 개방형 답변을 생성한다.
- Jev의 역할: 하네스의 가장자리에서 라우팅·안전성·평가 같은 반복적이고 타입이 명확한 결정을 담당한다.
-
기대 효과
- 지연 감소: 에이전트가 도구 호출 전후에 수행하는 간단한 점검을 거의 즉시 완료할 수 있다.
- 운영 비용 절감: 같은 판단을 대량으로 수행할 때 LLM 호출량과 비용을 줄일 수 있다.
- 일관성 향상: 확률과 타입이 있는 답변을 사용하면 자연어 응답을 다시 파싱하는 변동성을 줄일 수 있다.
5. 활용 사례 1 — 모델 라우팅
간단한 작업과 복잡한 작업이 섞인 에이전트에 항상 가장 강력하고 비싼 모델을 사용할 필요는 없다.
5.1. 작업 복잡도에 따른 모델 선택
-
라우팅 문제
- 비효율적인 단일 모델 전략: 모든 요청을 최고 성능 모델에 보내면 간단한 요청에도 불필요한 비용과 지연이 발생한다.
- 두 갈래 선택: 빠르고 저렴한 모델과 느리지만 강력한 모델 사이에서 질문의 복잡도에 맞게 선택한다.
-
Jev를 이용한 결정
- 기준 기반 평가: 프롬프트를 미리 정한 복잡도 기준과 비교해 어떤 모델이 적합한지 묻는다.
- 즉시 라우팅: Jev가 거의 즉시 판단하므로 라우팅 단계 자체가 사용자 경험의 병목이 되지 않는다.
5.2. LangChain 내부 코딩 에이전트 적용
-
실험 대상
- 코딩 에이전트의 혼합 작업: LangChain 팀은 내부 코딩 에이전트가 간단한 코딩 요청과 복잡한 코딩 요청을 모두 처리하는 상황을 살피고 있다.
- 작업별 모델 배정: 간단한 질문은 빠르고 저렴한 모델로, 복잡한 코딩 작업은 더 비싸고 강력한 모델로 보낸다.
-
실용적 결과
- 비용과 성능의 균형: 모든 요청에 고성능 모델을 쓰지 않으면서 어려운 문제에 필요한 추론 능력은 유지한다.
- 확장 가능한 정책: 복잡도, 위험도, 코드 변경 범위 같은 기준을 추가 질문으로 정의해 라우팅 정책을 세밀하게 만들 수 있다.
6. 활용 사례 2 — Auto Mode로 위험한 도구 호출 차단
에이전트가 실행하려는 도구 호출을 런타임에서 평가해 위험한 작업을 차단하는 안전성 계층을 Jev로 빠르게 만들 수 있다.
6.1. Auto Mode의 문제와 회복
-
기존 Auto Mode의 목적
- 위험성 분류: 특정 도구 호출이 위험한지 Jev 같은 분류기에 물어본다.
- 런타임 차단: 위험하다고 판정되면 도구가 실제로 실행되기 전에 호출을 막는다.
-
지연 때문에 꺼졌던 기능
- 생산성 저하: 발표자는 최근 코딩 에이전트에서 Auto Mode를 껐는데, 도구 호출 위험성을 분류하는 단계가 너무 느려 생산적인 느낌을 해쳤기 때문이다.
- Jev 도입 후 재활성화: Jev가 훨씬 빠르게 결정을 내리면서 Auto Mode를 다시 켤 수 있었다.
6.2. 삭제 작업 차단 사례
-
위험한 호출의 예
- 데이터베이스 삭제: 에이전트가 데이터베이스를 삭제하는 도구 호출을 발행하면 위험한 호출로 분류한다.
- 중요 파일 삭제: 중요한 파일을 삭제하는 호출도 같은 방식으로 위험 판정을 받는다.
-
안전한 실행 흐름
- 사전 검증: 도구 실행 전에 호출의 의도와 파급 효과를 Jev에 전달한다.
- 차단 또는 진행: 위험 확률이 높으면 실행을 차단하고, 안전한 호출만 다음 단계로 통과시킨다.
- 체감 속도 보존: 안전성 검사가 지나치게 느려 에이전트의 생산성을 깎지 않도록 거의 즉시 판단하는 계층을 둔다.
7. 활용 사례 3 — 온라인 평가의 심사자(Judge)
대규모 에이전트 평가에서 모든 trace를 사람이 확인하지 않으면서도 단순한 코드 스타일 검사 이상의 품질 판단을 얻을 수 있다.
7.1. 자동 평가의 구성 요소
-
평가 입력
- 초기 질문: 에이전트가 해결해야 했던 원래 질문을 평가 입력으로 둔다.
- 에이전트 답변: 에이전트가 실제로 낸 답을 함께 제공한다.
-
루브릭(rubric)
- 정확성: 답변이 올바른지 평가한다.
- 참조 일치: 기준 답변(reference)과 일치하는지 확인한다.
- 근거성: 답변이 입력이나 주어진 정보에 grounded되어 있는지 확인한다.
- 출처 인용: 필요한 경우 답변에 인용된 출처가 있는지 확인한다.
7.2. LLM-as-a-judge를 Jev로 확장
-
사람 검토의 한계
- 규모 문제: 평가를 대규모로 실행할 때 모든 trace를 사람이 감독하는 것은 현실적이지 않다.
- 코드 검사만으로 부족: 포맷, 실행 성공 여부, 코드 스타일 같은 기계적 검사만으로는 답변의 의미적 품질을 판단하기 어렵다.
-
Jev judge의 역할
- 루브릭별 점수: 초기 질문, 에이전트 답변, 평가 기준을 받아 기준별 점수를 산정한다.
- 기존 방식과의 관계: 기존 LLM-as-a-judge 온라인 평가는 유용하지만 비용이 높은데, Jev는 같은 역할을 더 빠르고 저렴하게 수행하는 방향이다.
- 품질 특성: LangChain이 작성한 관련 블로그의 결과에 따르면 Jev는 LLM 대안보다 저렴하고 빠를 뿐 아니라 평가 간 신뢰성과 일관성도 더 높게 나타났다.
7.3. 운영상 의미
-
지속적 평가
- 온라인 피드백: 배포된 에이전트의 입력과 답변을 계속 평가해 품질 저하를 빠르게 감지할 수 있다.
- 자동화된 회귀 감지: 모델이나 프롬프트를 바꾼 뒤 정확성·근거성·인용 여부가 달라졌는지 반복 측정할 수 있다.
-
평가 비용의 재배분
- 저비용 대량 평가: 모든 사례를 비싼 LLM이나 사람에게 보내지 않고 Jev로 1차 평가한다.
- 사람의 집중: 낮은 신뢰도나 높은 위험도의 사례만 사람에게 넘겨 검토 자원을 중요한 사례에 집중한다.
주요 발언 모음
“System 1 모델은 소프트웨어가 직접 사용할 수 있는 빠르고 구조화된 결정을 내리도록 만들어졌다.”
“Jev는 LLM의 드롭인 대체재가 아니라, 우리가 현재 LLM에 맡기고 있는 특수한 작업을 더 빠르고 저렴하게 수행한다.”
“LLM은 약 5초가 걸리지만, Jev는 개인 식별 정보가 있을 확률이 98%라고 거의 즉시 답한다.”
“Jev가 빠르게 결정을 내릴 수 있게 되면서 Auto Mode를 다시 켤 수 있었다.”
“Jev는 더 저렴하고 빠를 뿐 아니라, 평가 전반에서 LLM 대안보다 신뢰성과 일관성도 높게 나타났다.”
핵심 데이터 & 수치
- 20~200배: 분류형 작업에서 Jev가 LLM보다 빠를 수 있는 범위다.
- 40~400배: 같은 분류형 작업에서 Jev가 LLM보다 저렴할 수 있는 범위다.
- 약 5초: PII 여부 질문에 LLM이 텍스트와 구조화된 출력을 내는 데 걸린 시간이다.
- 98%: 동일한 PII 질문에 Jev가 반환한 개인 식별 정보 존재 확률이다.
- 3일: Stripe 계정 연결 실패가 지속된 고객 상태의 기간이다.
- 0.84: Stripe 문제를 billing 팀이 처리해야 한다는 선택 결과의 점수다.
- 0.596: billing 선택 결과에 함께 제시된 confidence 값이다.
- 1.035: 고객의 좌절 정도를 나타낸 score다.
- 0.999: 고객 메시지가 긴급성을 전달한다는 dual 질문의 확률이다.
- 0~1: 긴급성 dual 결과가 사용하는 확률 척도다.
결론 및 시사점
- 에이전트 하네스는 LLM 하나에 모든 결정을 몰아넣기보다 생성·추론과 정형 판단을 분리해야 한다.
- Jev는 상태와 질문을 받아 타입이 있는 답변과 확률을 돌려주므로 자연어 파싱에 의존하는 분류 단계를 줄인다.
- 단순 분류, 연속 점수, 예·아니오 판단은 Jev로 옮길 때 속도와 비용을 크게 낮출 수 있다.
- 여러 독립 질문을 하나의 상태에 병렬로 보내면 담당 팀, 감정, 긴급성 같은 판단을 효율적으로 묶을 수 있다.
- 모델 라우팅은 간단한 작업을 빠른 모델로, 복잡한 작업을 강력한 모델로 보내는 비용·성능 균형 장치다.
- Auto Mode는 데이터베이스나 중요 파일 삭제 같은 위험한 도구 호출을 실행 전에 차단하는 런타임 안전망이다.
- 안전성 검사가 느리면 에이전트의 생산성을 해치므로 보호 기능의 정확성만큼 판단 지연도 중요하다.
- 온라인 평가에서 Jev를 judge로 사용하면 대량 trace를 저비용으로 평가하면서 의미적 품질 기준을 유지할 수 있다.
- Jev는 범용 LLM을 제거하는 기술이 아니라, LLM이 잘하지 못하는 비용·지연·정형성 문제를 보완하는 전문 계층이다.
- 시작점은
uv pip install langchain-typesafe로 LangChain Type-Safe 통합을 설치하고 TypeSafe API key를 발급받는 것이다.
핵심 요약 (20줄)
-
에이전트의 기본 루프는 요청을 LLM에 보내고 도구를 호출하며 결과를 바탕으로 다음 행동을 반복하는 구조다.
-
도구 호출과 구조화된 출력은 LLM을 코드 애플리케이션에서 사용할 수 있게 만든 핵심 프리미티브다.
-
Jev는 TypeSafe AI가 만든 System 1 모델로 소프트웨어가 직접 소비할 수 있는 타입이 있는 결정을 반환한다.
-
Jev는 텍스트를 생성하는 범용 LLM이 아니라 상태와 질문을 평가해 답변과 확률을 출력하는 전문 모델이다.
-
System 1이라는 명칭은 Daniel Kahneman이 설명한 빠르고 값싼 직관적 사고에서 비롯됐다.
-
Jev는 분류형 작업에서 LLM보다 20~200배 빠르고 40~400배 저렴할 수 있다.
-
Jev는 LLM을 대체하는 모델이 아니라 반복적인 정형 판단을 분리해 처리하는 보완 계층이다.
-
PII 포함 여부를 묻는 데 LLM은 약 5초가 걸렸지만 Jev는 거의 즉시 98%의 확률을 반환했다.
-
Jev의 choice 질문은 여러 선택지 중 하나를 고르고 선택 점수와 confidence를 함께 제공한다.
-
Stripe 연결 실패 사례에서 billing 팀 선택 점수는 0.84이고 confidence는 0.596이었다.
-
Jev의 score 질문은 고객의 감정을 척도화하며 해당 사례의 frustration 점수는 1.035였다.
-
Jev의 dual 질문은 예·아니오에 가까운 판단을 확률로 반환하며 긴급성 확률은 0.999였다.
-
하나의 상태에 여러 질문을 보내면 Jev가 담당 팀과 감정과 긴급성을 병렬로 판단할 수 있다.
-
LangChain Type-Safe 통합은 API key와 상태·질문 입력으로 Jev를 호출하는 경로를 제공한다.
-
모델 라우팅은 간단한 요청을 빠르고 저렴한 모델로 복잡한 요청을 강력한 모델로 보내는 방식이다.
-
LangChain 내부 코딩 에이전트는 작업 복잡도에 따라 모델을 바꾸는 라우팅에 Jev를 활용할 수 있다.
-
Auto Mode는 데이터베이스 삭제나 중요 파일 삭제처럼 위험한 도구 호출을 런타임에서 차단한다.
-
Jev의 낮은 지연 덕분에 느린 분류 단계 때문에 꺼졌던 Auto Mode를 다시 활성화할 수 있다.
-
온라인 평가에서 Jev는 입력과 에이전트 답변을 정확성·참조 일치·근거성·출처 인용 기준으로 심사한다.
-
LangChain의 관련 결과는 Jev가 LLM judge보다 빠르고 저렴하며 평가의 신뢰성과 일관성도 높을 수 있음을 보여준다.
📁 Obsidian: Study/YouTube다이제스트/2026-09-26-TechBridge-KR-jev-agent-harness.md 🔗 https://nuggets-nine-self.vercel.app/digest/2026-09-26/techbridge-kr-jev-agent-harness-2026-09-26
