TypeSafe Decisions
Jev를 사용하여 조건 판단, 분류, 평가 및 도구 선택을 수행합니다.
Decisions는 Jev를 사용하여 텍스트나 업무 상태를 판단하고 코드에서 직접 읽을 수 있는 답변을 반환합니다. API는 JSON을 동기적으로 반환하며 스트리밍 응답을 지원하지 않습니다.
요청 예제
다음 예제는 jev-1.13.0을 사용합니다. 질문 시나리오와 코드 언어를 선택하면 해당 요청을 복사할 수 있습니다.
환불 요청 여부 판단
curl --request POST 'https://api.agtcloud.cn/v1/decisions' \
--header 'Authorization: Bearer your-api-key' \
--header 'Content-Type: application/json' \
--data '{
"model": "jev-1.13.0",
"state": "My subscription was charged twice. Please refund the duplicate charge.",
"questions": {
"ticket": {
"type": "noul",
"instructions": "Does the customer explicitly request a refund?",
"criteria": {
"true": "The message explicitly asks for a refund.",
"false": "The message does not ask for a refund."
}
}
}
}'질문 유형
| 유형 | 용도 | 반환 필드 |
|---|---|---|
noul | 고객의 환불 요청 여부처럼 조건이 성립하는지 판단 | noul: 조건이 성립할 확률 |
choice | 문의 처리 부서처럼 후보 중에서 분류나 동작 선택 | choice, probabilities, confidence |
score | 문의의 긴급도처럼 순서가 있는 기준에 따라 평가 | score, legend, probabilities, confidence |
state에 판단할 내용을, questions에 질문과 기준을 입력합니다. 하나의 요청에 여러 질문을 포함하거나 세 유형을 혼합할 수 있으며, 각 질문은 같은 state를 공유합니다.
결과 읽기
answers는 questions와 같은 질문 ID를 사용합니다. 예를 들어 질문 ID가 ticket이면 answers.ticket에서 답변을 읽습니다.
- 판단:
noul을 읽습니다. 값의 범위는 0~1이며, 1에 가까우면 성립하는 쪽으로, 0에 가까우면 성립하지 않는 쪽으로 기웁니다. 업무에 맞게 판단 임계값을 설정하세요. - 분류:
choice에서 선택된 후보 이름을 읽고,probabilities에서 각 후보의 확률을 확인합니다. - 평가:
score를 읽습니다. 등급은criteria배열 위치에 따라 0부터 번호가 매겨집니다. 세 등급은 0~2에 대응하며 점수는 소수일 수 있습니다.legend는 등급 번호와 설명의 대응 관계를 제공합니다.
choice와 score의 confidence는 확률 분포의 확실성을 나타내며 답변의 정확도를 의미하지 않습니다. 확률, 점수, Token 사용량은 요청에 따라 달라집니다.
도구 선택은 choice를 통해 lookup_payment 같은 동작 이름을 반환합니다. 애플리케이션이 그 이름에 따라 후속 작업을 실행하며, 이 결정 요청 자체는 도구를 실행하거나 OpenAI tool_calls를 생성하지 않습니다.
Token 사용량과 비용
usage.input_tokens와 usage.output_tokens는 각각 입력과 출력 Token 사용량을 기록합니다. Jev는 입력 Token에만 비용을 부과하며 출력 Token에는 비용을 부과하지 않습니다. 여러 질문과 후보 설명도 입력 사용량에 영향을 줍니다. 현재 가격은 모델 마켓플레이스에서 확인하세요.