Jev API
Jev는 상태 객체와 질문 집합을 바탕으로 구조화된 판단을 수행합니다. OpenAI 호환 API 및 Anthropic 호환 API와 별도의 전용 경로를 사용하며 분류, 점수, 신뢰도 기반 평가에 사용할 수 있습니다.
엔드포인트 및 인증
POST https://<LLMPOOL_HOST>/jev/v1/systemone
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Board의 API 키에서 API 키를 생성합니다. model에는 모델 페이지에 표시되는 Jev 모델 ID를 사용하세요. 업스트림 제공자의 모델 이름을 직접 보내지 마세요.
요청 형식
요청에는 model, state, questions가 필요합니다. state와 questions는 비어 있지 않은 JSON 객체여야 하며, 내부 필드는 선택한 Jev 모델이 해석할 수 있도록 그대로 전달됩니다.
curl -X POST "https://<LLMPOOL_HOST>/jev/v1/systemone" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "JEV_MODEL_FROM_MODELS_PAGE",
"state": {
"user_message": "환불을 신청하려면 어떻게 해야 하나요?",
"assistant_reply": "주문 상세 페이지에서 환불 신청을 제출하세요."
},
"questions": {
"correctness": {
"type": "choice",
"instructions": "답변이 사용자의 질문을 올바르게 해결하는지 판단하세요.",
"criteria": {
"pass": "답변이 정확하고 완전하며 질문을 직접 해결합니다.",
"fail": "오류가 있거나 중요한 정보가 누락되었거나 질문을 해결하지 못합니다."
}
}
}
}'
questions에는 여러 판단 항목을 포함할 수 있습니다. 각 항목은 일반적으로 type, instructions, 선택적 criteria를 포함하며, 정확한 형식은 선택한 Jev 모델의 Questions API를 따릅니다.
응답 형식
LLMPool은 Jev가 반환한 동적 answers를 유지하고 응답의 model을 모델 페이지의 클라이언트용 모델 ID로 바꿉니다. 성공 응답에는 최소한 answers와 usage.input_tokens가 포함됩니다.
{
"id": "jev_request_xxx",
"model": "JEV_MODEL_FROM_MODELS_PAGE",
"answers": {
"correctness": {
"type": "choice",
"choice": "pass",
"confidence": 0.98
}
},
"usage": {
"input_tokens": 128,
"output_tokens": 0,
"total_tokens": 128
}
}
업스트림이 usage.output_tokens를 반환하지 않으면 0으로 처리합니다. id, provider, usage.cost와 같은 필드는 업스트림 메타데이터로 유지됩니다. Jev 요금은 입력 토큰을 기준으로 하며 현재 가격과 청구 금액은 계정 페이지에서 확인할 수 있습니다.
Playground 사용
Board에 로그인한 뒤 Playground → Jev를 엽니다. API 키와 모델을 선택하고 사용자 메시지, 어시스턴트 답변, 판단 항목을 입력하면 구조화된 결과를 확인할 수 있습니다. Playground는 이 문서와 동일한 요청 형식을 사용합니다.