의사결정 모델은 소프트웨어가 사용자가 정의한 답변 중에서 선택하도록 도와줍니다. 메시지, 질문, 허용된 옵션을 전달하면 확률과 함께 판단 결과를 반환합니다. 텍스트 생성 대규모 언어 모델, 즉 LLM은 새로운 답변을 작성할 수 있습니다. 의사결정 모델은 해당 메시지를 어디로 먼저 보낼지 결정하는 데 도움을 줍니다.

TypeSafe의 Jev, Cloudflare의 Clef, OpenAI의 Decisions API는 모두 이러한 한정된 판단을 지원합니다. 애플리케이션은 이를 활용해 지원 큐를 선택하거나, 문제를 식별하거나, 심각도를 평가할 수 있습니다. 이후 작성 작업은 생성형 모델이 처리할 수 있습니다.

하나의 메시지, 두 가지 다른 작업

고객이 “같은 주문에 대해 두 번 결제되었습니다”라고 작성했다고 가정해 보겠습니다. 지원 시스템에는 두 가지 작업이 있습니다. 티켓을 올바른 팀에 전달하는 것과, 유용한 답변을 작성하는 것입니다. 이 두 작업에는 서로 다른 출력이 필요합니다.

생성형 LLM은 “해당 결제 건을 확인해 드리겠습니다”라고 작성할 수 있습니다. 의사결정 모델은 “어떤 팀이 이 건을 처리해야 하는가?”라는 질문에 billing라고 답할 수 있으며, 선택지는 billing, technical, review입니다.

애플리케이션은 이 답변을 직접 확인할 수 있습니다. 티켓을 결제 팀으로 라우팅하거나, 결과가 불확실할 때는 검토를 위해 보낼 수 있습니다. 이후 사람이나 다른 모델이 답변을 작성합니다. 의사결정 모델은 더 큰 프로세스 안에서 하나의 특정 판단만 처리합니다. TypeSafe의 System One 소개에서 이 분리 구조를 설명합니다.

아래 다이어그램은 동일한 라우팅 질문에 대해 두 모델을 비교합니다. 텍스트 모델은 JSON 답변을 생성하고, 의사결정 모델은 허용된 세 옵션에 점수를 매깁니다.

의사결정 모델에 무엇을 질문할 수 있나요?

의사결정 인터페이스는 일반적으로 세 가지 유형의 질문을 지원합니다: 옵션 선택, 참/거짓 추정, 점수 부여. 근거를 제공하고 답변의 의미를 정의하면 됩니다. 동일한 고객 메시지로 여러 개의 별도 판단을 내릴 수 있습니다.

질문 유형예시반환값
하나의 옵션 선택어떤 팀이 먼저 응답해야 하는가?선택된 팀과 각 옵션의 확률
예/아니오이 메시지가 환불을 요청하는가?예일 확률
점수 부여정의된 척도를 기준으로 이 문제의 심각도는?제공한 수준에 기반한 평가

TypeSafe는 이를 Choice, Noul, Score라고 부릅니다. OpenAI는 choice, predicate, score를 사용합니다. predicate는 예/아니오 질문입니다.

질문의 표현이 중요합니다. “어떤 팀이 먼저 응답해야 하는가?”는 하나의 팀을 요구합니다. “이 메시지가 결제 문제를 언급하는가?”와 “이 메시지가 기술 문제를 언급하는가?”는 둘 다 예라고 답할 수 있는 별개의 질문입니다. 티켓이 두 가지 문제를 설명하는 경우, 하나의 카테고리에 강제로 넣으면 유용한 정보가 손실될 수 있습니다.

LLM에게 JSON을 요청하는 것과 어떻게 다른가요?

LLM도 소프트웨어가 읽을 수 있는 데이터 형식인 JSON 안에 카테고리를 반환할 수 있습니다. Structured Outputs를 사용하면 지원되는 스키마로 답변을 허용된 값으로 제한할 수 있습니다. 따라서 많은 분류 작업에서 LLM도 유효한 대안이 됩니다.

차이점은 전용 의사결정 모델이 답변을 생성하는 방식에 있습니다. 기존 LLM은 토큰이라는 작은 단위를 사용하여 순차적으로 텍스트를 생성합니다. 출력이 {"team":"billing"}에 불과하더라도 이는 여전히 텍스트 생성입니다.

Cloudflare의 Clef는 대신 입력을 읽고 허용된 답변에 직접 점수를 매기며, 답변을 토큰 단위로 작성하지 않습니다. Cloudflare는 Clef 발표 글에서 이 접근 방식을 설명합니다. Clef는 여전히 입력을 이해하기 위한 기반으로 LLM을 사용합니다.

OpenAI는 Decisions API의 입력과 출력을 문서화하지만, Clef의 내부 설계를 사용한다는 것을 입증하지는 않습니다. 유사한 인터페이스가 동일한 아키텍처를 증명하지는 않습니다.

두 방식 모두 유효한 카테고리를 반환하면서도 잘못된 것을 선택할 수 있습니다. 유효한 카테고리라도 고객의 실제 문제와 일치해야 합니다.

Jev, Clef, OpenAI 비교

이 제품들은 소프트웨어가 확인할 수 있는 초점이 명확한 판단을 제공합니다. Jev는 TypeSafe의 의사결정 모델입니다. Clef는 Cloudflare의 다운로드 가능한 모델 패밀리로, Workers AI를 통해서도 이용할 수 있습니다. OpenAI는 한정된 질문을 위한 Decisions API를 제공합니다. 이 중에서 선택하려면 실제 작업에 대한 테스트가 필요합니다.

제품먼저 알아야 할 사항
TypeSafe Jev텍스트와 구조화된 데이터에 대한 타입이 지정된 질문을 중심으로 설계되었습니다. 유용하고 캘리브레이션된 확률을 목표로 학습됩니다.
Cloudflare Clef 및 Clef-flash다운로드 가능한 가중치와 호스팅 서비스로 제공됩니다. 공개된 설계에 따르면 언어 모델 백본을 사용하여 답변에 점수를 매깁니다.
OpenAI Decisions API선택, 예/아니오 판단, 점수를 위한 호스팅 인터페이스입니다. 현재 gpt-6-luna를 사용하는 공개 베타 단계입니다.

출처: TypeSafe, Cloudflare, OpenAI.

응답 형식과 지원되는 입력은 각 제품마다 다릅니다. OpenAI는 거부(refusal)도 반환할 수 있으며, 애플리케이션은 이를 처리해야 합니다. 한 프로바이더에서 다른 프로바이더로 전환하려면 통합 방식과 답변 품질 모두를 확인해야 합니다.

확률은 무엇을 알려주나요?

확률은 모델이 주어진 질문에 대해 각 답변의 가능성을 추정한 값입니다. 단순히 가장 높은 라벨만 받는 것보다 애플리케이션에 더 많은 정보를 제공합니다. 다만, 어떤 케이스를 사람 검토 없이 자동 처리할지 결정하기 전에 이 수치를 테스트해야 합니다.

위 티켓에 대해 다음과 같은 결과가 나왔다고 가정해 보겠습니다:

허용된 답변예시 확률
결제92%
기술5%
검토3%

결제가 압도적으로 높습니다. 결제 문제와 대시보드 오류가 혼합된 메시지의 경우, 결제가 52%, 기술이 43%를 받을 수 있습니다. 여전히 결제가 가장 높지만, 근소한 차이는 애플리케이션이 검토를 요청할 근거가 됩니다.

캘리브레이션은 많은 예시에서 확률이 실제 결과와 일치하는지 확인하는 것을 의미합니다. 90% 근처의 유사한 예측 중에서 잘 캘리브레이션된 모델은 약 90%의 경우 정확해야 합니다. 90%로 표시된 답변 하나는 여전히 틀릴 수 있습니다.

“confidence”라는 필드는 확률이 얼마나 집중되어 있는지를 요약할 수 있습니다. 이것이 곧 측정된 성공률을 의미하는 것은 아닙니다. TypeSafe의 confidence 가이드에서 이 차이를 설명합니다.

의사결정 모델은 언제 유용한가요?

의사결정 모델은 작업이 의미 해석을 요구하면서 가능한 답변이 이미 알려진 경우에 유용합니다. 메시지 라우팅, 관련 문서 선택, 루브릭에 따른 항목 평가 등이 이에 해당합니다. 작성이나 조사를 처리하는 생성형 모델과 함께 사용할 수 있습니다.

생성된 응답을 피하면 모델의 작업량을 줄일 수 있습니다. 이것이 속도나 비용을 개선하는지는 네트워크 지연, 입력 크기, 폴백 호출을 포함한 전체 애플리케이션에 따라 다릅니다. 불필요하게 긴 설명을 요청하는 대신, 동일한 짧은 답변을 요청한 LLM과 의사결정 모델을 비교하세요.

한계도 있습니다. 의사결정 모델이 메시지를 잘못 읽거나, 잘못된 허용 옵션을 선택하거나, 과도하게 확신할 수 있습니다. 독립적인 Red Hat 가드레일 테스트에서 Jev는 한 작업에서 가장 강했지만 다른 작업에서는 대안이 더 우수했습니다. 해당 테스트는 세 제품 모두를 비교하지는 않았습니다.

정확한 계산과 권한 확인에는 일반 코드를 사용하세요. 작업에 새로운 답변, 코드, 설명이 필요할 때는 생성형 모델을 사용하세요. 의사결정 모델을 시도하려면 하나의 작은 판단부터 시작하고, 알려진 답변이 포함된 예시를 수집한 뒤, 실수와 절감되는 작업량을 함께 측정하세요.

자주 묻는 질문

의사결정 모델이 설명문을 작성할 수 있나요?

Jev와 Clef의 의사결정 인터페이스는 새로운 문장이 아닌 선택지와 점수를 반환합니다. OpenAI의 Decisions API 역시 한정된 답변을 반환합니다. 애플리케이션에 글로 된 설명이 필요할 때는 텍스트 생성 모델을 사용하세요.

의사결정 모델을 사용해 보려면 학습 데이터가 필요한가요?

새 모델을 학습시키지 않고도 질문과 허용된 답변을 정의할 수 있습니다. 다만 정확도를 확인하고 어떤 결과를 자동으로 사용할 수 있는지 판단하려면 알려진 결과가 포함된 예시가 필요합니다.

의사결정 모델이 자체적으로 작업을 수행할 수 있나요?

의사결정 모델은 판단 결과를 반환합니다. 이를 사용할지 여부, 권한 확인, 작업 실행은 모두 애플리케이션이 결정합니다. 환불 라벨을 선택했다고 해서 환불이 승인되는 것은 아닙니다.