본문으로 건너뛰기

Serving

ML 모델 서빙 배포를 관리하는 API입니다. 모델 배포, 조회, 삭제, 카나리 업데이트, 배포 메트릭 조회 기능을 제공합니다.

엔드포인트

POST /api/v1/serving/deployments

설명: 새 모델 배포를 생성합니다. (HTTP 201)

요청 본문:

필드타입필수설명
endpoint_namestringY엔드포인트 이름
model_uristringYMLflow 모델 URI
replicasintN레플리카 수

GET /api/v1/serving/deployments

설명: 배포된 모델 목록을 반환합니다.

GET /api/v1/serving/deployments/{endpoint_name}

설명: 특정 배포의 상세 정보를 반환합니다.

DELETE /api/v1/serving/deployments/{endpoint_name}

설명: 모델 배포를 삭제합니다. (HTTP 204)

POST /api/v1/serving/deployments/{endpoint_name}/canary

설명: 카나리 배포 비율을 업데이트합니다.

GET /api/v1/serving/deployments/{endpoint_name}/metrics

설명: 배포의 추론 메트릭(지연시간, 처리량 등)을 반환합니다.

배포 생명주기 (KServe)

아래 엔드포인트는 경로 파라미터로 {deployment_id}(UUID)를 사용합니다 — 위 CRUD·canary·metrics 의 {endpoint_name} 과 구분됩니다.

POST /api/v1/serving/deployments/{deployment_id}/deploy

설명: 배포를 KServe InferenceService 로 실제 서빙 배포합니다.

POST /api/v1/serving/deployments/{deployment_id}/rollback

설명: 직전 버전으로 롤백합니다.

POST /api/v1/serving/deployments/{deployment_id}/promote

설명: 카나리/스테이징 배포를 프로덕션으로 승격합니다.

PUT /api/v1/serving/deployments/{deployment_id}

설명: 배포 설정(레플리카·트래픽 등)을 수정합니다.

GET /api/v1/serving/deployments/{deployment_id}/k8s-status

설명: KServe InferenceService 의 실제 K8s 상태를 반환합니다.

추론 (Inference)

아래 엔드포인트는 경로 파라미터로 {deployment_name} 를 사용합니다.

POST /api/v1/serving/{deployment_name}/predict

설명: 배포된 모델에 추론 요청을 전달합니다.

POST /api/v1/serving/{deployment_name}/explain

설명: 예측에 대한 설명(explainability)을 반환합니다.

GET /api/v1/serving/{deployment_name}/schema

설명: 모델 입력 스키마를 반환합니다.

경로 파라미터 명명

동일 리소스지만 엔드포인트 그룹별로 경로 파라미터 이름이 다릅니다 (실제 구현 기준):

그룹파라미터경로
CRUD · canary · metrics{endpoint_name}/deployments/{endpoint_name}…
생명주기 (deploy/rollback/promote/PUT/k8s-status){deployment_id} (UUID)/deployments/{deployment_id}…
추론 (predict/explain/schema){deployment_name}/{deployment_name}/…

인증

JWT Bearer 토큰이 필요합니다.

에러 코드

코드설명
400잘못된 모델 URI 또는 설정
404배포를 찾을 수 없음
500모델 서빙 인프라 오류