---
title: "서비스 학습 요청"
slug: "ai-application-service-aitems-service-learning"
tags: ["Service", "AiTEMS"]
updated: 2026-04-23T08:55:41Z
published: 2026-04-23T09:02:17Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://api.ncloud-docs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 서비스 학습 요청

Classic/VPC 환경에서 이용 가능합니다.

서비스 타입이 `batch`인 서비스가 단회적 데이터셋 학습을 진행하도록 요청합니다.

## 요청

요청 형식을 설명합니다. 요청 형식은 다음과 같습니다.

| 메서드 | URI |
| --- | --- |
| POST | /services/{serviceId} |

### 요청 헤더

AiTEMS API에서 공통으로 사용하는 헤더에 대한 정보는 [AiTEMS 요청 헤더](/docs/aitems-overview#%EC%9A%94%EC%B2%AD%ED%97%A4%EB%8D%94)를 참조해 주십시오.

### 요청 경로 파라미터

요청 경로 파라미터에 대한 설명은 다음과 같습니다.

| 필드 | 타입 | 필수 여부 | 설명 |
| --- | --- | --- | --- |
| `serviceId` | String | Required | 서비스 ID - [서비스 목록 조회](/docs/ai-application-service-aitems-service-list) 참조 - `type`이 `batch`인 서비스의 ID만 입력 가능 |

### 요청 바디

요청 바디에 대한 설명은 다음과 같습니다.

| 필드 | 타입 | 필수 여부 | 설명 |
| --- | --- | --- | --- |
| `types` | Array | Required | 학습 요청 타입 - `personalRecommend` \| `relatedItem` \| `pop` - `personalRecommend`: 고객 서비스 이용자의 과거 이력을 바탕으로 개인별 추천 - `relatedItem`: 아이템의 연관 이력을 바탕으로 개인별 추천 - `pop`: 순위별 인기 아이템 추천 |
| `description` | String | Optional | 학습에 대한 설명 |
| `hpConfig` | Object | Required | HPO (Hyperparameter Optimization) 설정 정보 |
| `hpConfig.is_enabled` | Boolean | Required | HPO 설정 여부 - `true` \| `false` - `true`: HPO 설정. 최적의 훈련 모델 구현 가능. - `false`: HPO 설정 안 함. AiTEMS 내부의 자체 알고리즘으로 학습. |
| `hpConfig.{option}` | String, Long, Boolean | Optional | 설정된 HPO 값 - 값에 대한 세부 정보는 [HPO](/docs/ai-application-service-aitems-service-learning#HPO) 참조 |

#### HPO

설정 가능한 HPO 값에 대한 설명은 다음과 같습니다.

| 옵션명 | 타입 | 필수 여부 | 학습 타입 | 설명 |
| --- | --- | --- | --- | --- |
| `session_max_timestamp` | Long | Optional | 개인화 추천, 연관 항목 추천 | 동일 세션으로 간주할 액션 간의 최대 유휴 시간(초) - 10~86,400 (기본값: 1,800) - 1,800 이상으로 설정할 것을 권장 |
| `item_top_n` | Long | Optional | 개인화 추천, 연관 항목 추천 | 추천에 활용할 최대 상품 개수 - 인기순으로 활용 - 1,000~500,000 (기본값: 20,000) |
| `min_item_cut` | Long | Optional | 개인화 추천, 연관 항목 추천 | 상품 최소 등장 조건 횟수 - 1~1,000 (기본값: 5) |
| `min_session_length` | Long | Optional | 개인화 추천, 연관 항목 추천 | 세션 내 최소 액션 횟수 - 2~1,000 (기본값: 2) |
| `max_user_recommend_top` | Long | Optional | 개인화 추천 | 유저당 최대 추천 상품 개수 - 1~1,000 (기본값: 100) |
| `max_relate_recommend_top` | Long | Optional | 연관 항목 추천 | 상품당 최대 연관 항목 추천 상품 개수 - 1~1,000 (기본값: 100) |
| `remove_history_item` | Boolean | Optional | 개인화 추천, 연관 항목 추천 | 이전에 추천된 상품을 개인화 추천 목록에서 제거할지 여부 - `true` \| `false` (기본값) - `true`: 이전에 추천된 상품을 추천 목록에서 제거 - `false`: 이전에 추천된 상품도 개인화 추천 목록에 포함 |
| `group_column` | Array<string data-tomark-pass=""></string> | Required | 인기 항목 추천 | 인기 추출 그룹 컬럼 목록 - USER_ID, ITEM_ID, TIMESTAMP 선택 불가 |
| `target_column` | String | Optional | 인기 항목 추천 | 인기 추출 대상 컬럼 - USER_ID, ITEM_ID, TIMESTAMP 입력 불가 - 최대 100개까지 입력 가능 |
| `max_group_recommend_top` | Long | Optional | 인기 항목 추천 | 그룹당 최대 인기 상품 개수 - 1~1,000 (기본값: 100) |

### 요청 예시

요청 예시는 다음과 같습니다.

```
curl --location --request POST 'https://aitems.apigw.ntruss.com/api/v1/services/xv94v******' \
--header 'x-ncp-apigw-timestamp: {Timestamp}' \
--header 'x-ncp-iam-access-key: {Access Key}' \
--header 'x-ncp-apigw-signature-v2: {API Gateway Signature}' \
--header 'Content-Type: application/json' \
--data '{
    "types": [
        "personalRecommend"
    ],
    "description": "test",
    "hpConfig": {
        "is_enabled": false
    }
}'
```

## 응답

응답 형식을 설명합니다.

### 응답 바디

응답 바디에 대한 설명은 다음과 같습니다.

| 필드 | 타입 | 필수 여부 | 설명 |
| --- | --- | --- | --- |
| `serviceId` | String | - | 서비스 ID |
| `name` | String | - | 서비스 이름 |
| `description` | String | - | 서비스에 대한 설명 |
| `status` | String | - | 서비스 상태 - `scheduled` \| `scheduledLearning` \| `learnable` \| `learning` \| `deleting` \| `deleted` \| `disable` \| `drafted` \| `requestLearning` \| `datasetRequired` - `scheduled`: 예약됨 - `scheduledLearning`: 예약된 학습 중 - `learnable`: 학습 가능 - `learning`: 학습 진행 중 - `deleting`: 삭제 중 - `deleted`: 삭제됨 - `disable`: 학습 불가 - `drafted`: 임시 저장 상태 - `requestLearning`: 학습 요청 상태 - `datasetRequired`: 서비스 생성 후 데이터셋을 지정하지 않은 상태 |
| `datasets` | Array | - | 서비스에 설정된 데이터셋 정보: [datasets](/docs/ai-application-service-aitems-service-learning#datasets) |
| `hpConfig` | Object | - | HPO (Hyperparameter Optimization) 설정 정보 |
| `hpConfig.is_enabled` | Boolean | - | HPO 설정 여부 - `true` \| `false` - `true`: HPO 설정. 최적의 훈련 모델 구현 가능. - `false`: HPO 설정하지 않음. AiTEMS 내부의 자체 알고리즘으로 학습. |
| `hpConfig.{option}` | String, Long, Boolean | - | 설정된 HPO 값 - 값에 대한 세부 정보는 [HPO](/docs/ai-application-service-aitems-service-learning#HPO) 참조 |
| `infers` | Array | - | 학습 결과 정보: [infers](/docs/ai-application-service-aitems-service-learning#infers) - `type`이 `interval`인 경우에만 표시 |
| `createdDate` | String | - | 서비스 생성 일시 |
| `updatedDate` | String | - | 서비스 최종 업데이트 일시 |
| `type` | String | - | 서비스 타입 - `batch` \| `interval` - `batch`: 학습 진행 시 1회 학습 - `interval`: 학습 진행 후 일정 주기로 재학습 |
| `learningInterval` | String | - | 데이터셋 업데이트 주기 |
| `scheduledDate` | String | - | 데이터셋 업데이트 예약 시간 |

#### `datasets`

`datasets`에 대한 설명은 다음과 같습니다.

| 필드 | 타입 | 필수 여부 | 설명 |
| --- | --- | --- | --- |
| `datasetId` | String | - | 서비스에 설정된 데이터셋 ID |
| `type` | String | - | 서비스에 설정된 데이터셋 타입 - `personalRecommend` \| `relatedItem` \| `pop` - `personalRecommend`: 고객 서비스 이용자의 과거 이력을 바탕으로 개인별 추천 - `relatedItem`: 아이템의 연관 이력을 바탕으로 개인별 추천 - `pop`: 순위별 인기 아이템 추천 |
| `name` | String | - | 서비스에 설정된 데이터셋 이름 |
| `schemaName` | String | - | 서비스에 설정된 데이터셋 스키마 이름 |
| `status` | String | - | 서비스에 설정된 데이터셋 상태 - `learnable` \| `disable` \| `uploading` \| `updateRequired` - `learnable`: 학습 가능 - `disable`: 학습 불가 - `uploading`: 업로드 중 - `updatedRequired`: 업데이트된 데이터셋 등록 필요(학습 시 자동으로 등록됨) |
| `createdDate` | String | - | 서비스에 설정된 데이터셋 생성 일시 |
| `updatedDate` | String | - | 서비스에 설정된 데이터셋 최종 업데이트 일시 |

#### `infers`

`infers`에 대한 설명은 다음과 같습니다.

| 필드 | 타입 | 필수 여부 | 설명 |
| --- | --- | --- | --- |
| `dataType` | String | - | 학습 결과 데이터셋 타입 - `personalRecommend` \| `relatedItem` \| `pop` - `personalRecommend`: 고객 서비스 이용자의 과거 이력을 바탕으로 개인별 추천 - `relatedItem`: 아이템의 연관 이력을 바탕으로 개인별 추천 - `pop`: 순위별 인기 아이템 추천 |
| `trainVersion` | String | - | 학습 결과 버전 |
| `status` | String | - | 학습 결과 상태 - `enable` \| `waiting` \| `pending` \| `processing` \| `updateFailed` \| `disable` - `enable`: 업데이트 가능 - `waiting`: 업데이트 대기 중 - `pending`: 업데이트 대기 중 - `processing`: 업데이트 중 - `updateFailed`: 업데이트 실패 - `disable`: 업데이트 불가 |
| `rowCount` | String | - | 결과 데이터 개수 |
| `createdDate` | String | - | 데이터 생성 일시 |
| `updatedDate` | String | - | 데이터 최종 업데이트 일시 |

### 응답 상태 코드

AiTEMS API에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 [AiTEMS 응답 상태 코드](/docs/aitems-overview#%EC%9D%91%EB%8B%B5%EC%83%81%ED%83%9C%EC%BD%94%EB%93%9C)를 참조해 주십시오.

### 응답 예시

응답 예시는 다음과 같습니다.

```
{
    "serviceId": "xv94v******",
    "name": "service1",
    "description": "",
    "status": "learning",
    "datasets": [
        {
            "datasetId": "g8rf6******",
            "type": "item",
            "name": "item_dataset",
            "schemaName": "item_schema",
            "status": "learnable",
            "createdDate": "2024-07-29T16:46:35.968",
            "updatedDate": "2024-07-30T08:57:35.209"
        },
        {
            "datasetId": "bu457******",
            "type": "interaction",
            "name": "interaction_dataset",
            "schemaName": "interaction_schema",
            "status": "learnable",
            "createdDate": "2024-07-30T09:49:19.254",
            "updatedDate": "2024-07-30T09:49:35.364"
        },
        {
            "datasetId": "oeq4i******",
            "type": "user",
            "name": "user_dataset",
            "schemaName": "user_schema",
            "status": "learnable",
            "createdDate": "2024-07-30T08:58:00.662",
            "updatedDate": "2024-07-30T08:58:35.205"
        }
    ],
    "hpConfig": {
        "is_enabled": false
    },
    "infers": [],
    "createdDate": "2024-07-30T09:50:53.521",
    "updatedDate": "2024-07-30T10:32:00.492",
    "type": "batch"
}
```
