머신러닝 모델 목록 조회
검색 조건과 일치하는 머신러닝 모델 목록을 조회합니다.
필요 권한
사용자 이상의 계정으로 이용할 수 있습니다.
HTTP 요청
GET /api/sonar/machine-learning/models
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
https://HOSTNAME/api/sonar/machine-learning/models
요청 매개변수
| 키 | 필수 | 타입 | 설명 | 비고 |
|---|---|---|---|---|
| offset | X | 32비트 정수 | 건너뛸 갯수 | 기본값: 0 |
| limit | X | 32비트 정수 | 최대 갯수 | 기본값: 무제한 |
| keywords | X | 문자열 | 검색 키워드 | 모델 이름, 설명 등에서 검색 |
정상 응답
{
"total_count": 1,
"models": [
{
"guid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"type": "random_forest",
"type_name": "랜덤 포레스트",
"user_guid": "11111111-2222-3333-4444-555555555555",
"user_name": "admin",
"name": "이상 트래픽 분류",
"description": "네트워크 트래픽 이상 탐지 모델",
"dataset_guid": "99999999-8888-7777-6666-555555555555",
"dataset_name": "트래픽 학습 데이터셋",
"fields": [
{
"name": "src_ip",
"type": "string"
},
{
"name": "label",
"type": "string",
"target": true,
"values": ["normal", "anomaly"],
"cardinality": 2,
"importance": 0.83
}
],
"parameters": {
"max_depth": "5",
"n_estimators": "100"
},
"trained": true,
"train_progress": 100.0,
"schema": null,
"accuracy": 0.95,
"precision": 0.93,
"recall": 0.91,
"f1": 0.92,
"confusion": [[120, 5], [8, 110]],
"created": 1718668225000,
"updated": 1718668225000
}
]
}
- total_count (32비트 정수): 검색 조건과 일치하는 전체 건수
- models (배열): 머신러닝 모델 목록
- guid (문자열): 모델 식별자
- type (문자열): 모델 유형 코드
- type_name (문자열): 지역화된 모델 유형 이름
- user_guid (문자열): 생성한 계정 식별자
- user_name (문자열): 생성한 계정 이름
- name (문자열): 모델 이름
- description (문자열): 모델 설명
- dataset_guid (문자열, nullable): 학습 데이터셋 식별자
- dataset_name (문자열): 학습 데이터셋 이름
- fields (배열): 모델 필드 목록
- name (문자열): 필드 이름
- type (문자열): 필드 데이터 타입
- target (불리언, 선택적): 대상 필드 여부. 참인 경우에만 포함됩니다
- values (문자열 배열, 선택적): 범주 값 목록. 설정된 경우에만 포함됩니다
- cardinality (32비트 정수, 선택적): 범주 값 개수. values가 설정된 경우에만 포함됩니다
- importance (64비트 실수, 선택적): 필드 중요도. 0보다 큰 경우에만 포함됩니다
- parameters (맵): 하이퍼파라미터 키/값
- trained (불리언): 학습 완료 여부
- train_progress (64비트 실수): 학습 진행률(백분율)
- schema (맵, nullable): 모델 스키마
- accuracy (64비트 실수): 정확도
- precision (64비트 실수): 정밀도
- recall (64비트 실수): 재현율
- f1 (64비트 실수): F1 점수
- confusion (배열, nullable): 혼동 행렬. 32비트 정수 배열의 배열이며 각 행은
[실제][예측]형태입니다 - created (날짜): 생성 시각. epoch 밀리초 숫자입니다
- updated (날짜): 수정 시각. epoch 밀리초 숫자입니다
오류 응답
offset, limit 값이 정수가 아닌 경우
HTTP 상태 코드 400 응답
{
"error_code": "invalid-argument",
"error_msg": "'offset' parameter should be int type"
}
권한이 없는 경우
HTTP 상태 코드 500 응답
{
"error_code": "illegal-state",
"error_msg": "no-permission"
}