학습 목록 조회

Prev Next

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

생성한 학습 목록을 조회합니다.

요청

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

메서드 URI
GET /tuning/v2/tasks

요청 헤더

헤더에 대한 설명은 다음과 같습니다.

필드 필수 여부 설명
Authorization Required 인증을 위한 API 키 (예: Bearer nv-***********)
Content-Type Required application/json
X-NCP-CLOVASTUDIO-REQUEST-ID Optional 각 요청에 대한 요청 아이디

요청 쿼리 파라미터

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

필드 타입 필수 여부 설명
size int N 페이지 크기
  • 1~100 (기본값: 20)
  • page int N 페이지 크기
  • 0~N (기본값: 0)
  • 요청 구문

    구문 예시는 다음과 같습니다.

    curl --location --request GET 'clovastudio.stream.gov-ntruss.com/tuning/v2/tasks?page=0&size=20' \
    --header 'Content-Type: application/json' \
    --header 'Authorization: Bearer <API-KEY>' \
    --header 'X-NCP-CLOVASTUDIO-REQUEST-ID: <X-NCP-CLOVASTUDIO-REQUEST-ID>'
    

    응답

    응답 형식을 설명합니다.

    응답 헤더

    헤더에 대한 설명은 다음과 같습니다.

    헤더 필수 여부 설명
    Content-Type - application/json

    응답 바디

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

    필드 타입 필수 여부 설명
    result object - 응답 결과
    result.totalPages int - 전체 페이지 수
    result.totalElements int - 전체 데이터 수
    result.size int - 페이지별 데이터 수
    result.number int - 페이지 번호
    result.content object - 학습 정보
    result.content.id string - 학습 아이디
    result.content.name string - 학습 이름
    result.content.model string - 튜닝 모델 이름
    result.content.method enum - 튜닝 기법
  • LoRA
  • result.content.taskType string - 학습 유형
  • GENERATION: 생성
  • CLASSIFICATION: 분류
  • result.content.trainEpochs integer - 모델을 학습한 에폭 수
    result.content.learningRate double - 학습률: 튜닝 시 모델 파라미터를 재학습하는 수준이나 정도
    result.content.status enum - 학습 진행 상태
  • WAIT
  • RUNNING
  • FAILED
  • SUCCEEDED
  • result.content.statusInfo array - 학습 진행 상태 상세 정보
    result.content.statusInfo.label array - 학습 유형이 classification인 경우, 사용자 데이터 라벨 (학습 유형이 GENERATION인 경우, null)
    result.content.statusInfo.dataRows int - 데이터 수
    result.content.statusInfo.numOfTokens int - 데이터 토큰 수
    result.content.statusInfo.currStep int - 학습 현재 스텝 수
    result.content.statusInfo.totalTrainSteps int - 학습 총 스텝 수
    result.content.statusInfo.currEpoch int - 현재 에폭
    result.content.statusInfo.totalTrainEpochs int - 전체 학습 에폭
    result.content.statusInfo.estimatedTime int - 예상 소요 시간 (평균 1 에폭 시간 * 전체 학습 에폭)
    result.content.statusInfo.trainLoss double - 학습 손실 양
    result.content.statusInfo.sendWeightSuccess boolean - 학습 결과물 저장 여부
    result.content.statusInfo.endDatetime string - 학습 종료 날짜
    result.content.statusInfo.failureReason string - 학습 진행 상태가 FAILED인 이유
    result.content.statusInfo.message string - failureReason 상세 메시지
    result.content.createdClientType enum - 학습을 요청한 클라이언트 유형
  • API: API 클라이언트
  • WEB: 웹 클라이언트
  • result.content.createdDate string - 학습 생성 날짜 (ISO 8601 형식)
    result.content.updatedDate string - 학습 수정 날짜 (ISO 8601 형식)

    failureReason 상세 메시지

    학습 실패 이유(failureReason)와 학습 실패 이유별 상세 메시지(message)에 대한 설명은 다음과 같습니다.

    학습 실패 이유 상세 메시지 설명
    file.extension Unavailable file extension. Please check the file extension again. 요청한 tuningType에 부합하는 데이터 파일 확장자가 아닌 경우
    file.size Exceeded the disk usage limit. Please check if the file size is {limit} or less. 학습 요청에서 기대하는 파일 크기를 초과한 경우
    file.encoding Unsupported charset UTF8-sig 인코딩이 아닌 경우
    file.format Invalid json format. {reason} 데이터셋 파일(.json/.jsonl)의 디코딩이 불가능한 경우
    file.format Invalid dataset: required field empty. {column} 데이터셋 파일에 필수 column이 없는 경우
    file.format Invalid dataset: unexpected column. {column} 데이터셋 파일에 예상 밖의 column이 있는 경우
    file.format Invalid dataset: duplicate columns. {column} 데이터셋 파일에 대소문자 구별이 되지 않아 중복 column이 있는 경우
    file.format Invalid dataset: column order 데이터셋 파일의 column 순서가 system_prompt, c_id, t_id, text, completion 에서 벗어난 경우
    file.format Invalid dataset: {column} 데이터셋 파일의 c_id (or t_id)가 0부터 시작해서 1씩 늘어나는 패턴을 만족하지 않거나 값이 비어 있는 경우
    file.error - 파일 읽기 오류
    resource.timeout - GPU 확보 실패로 응답 시간 초과. 다시 시도 필요
    clops.error - 학습 중 CLOps 오류
    train.unknown - 학습 중 파일 관련 외 오류

    응답 구문

    구문 예시는 다음과 같습니다.

    성공

    호출이 성공한 경우의 구문 예시는 다음과 같습니다.

    {
        "status": {
            "code": "20000",
            "message": "OK"
        },
        "result": {
            "totalPages": "7,",
            "totalElements": "122,",
            "size": "20,",
            "number": "0,",
            "content": [
            {
                "id": "oi55o2ej",
                "name": "230709-202307",
                "model": "HCX-003",
                "method": "LoRA",
                "taskType": "GENERATION",
                "trainEpochs": 4,
                "learningRate": 1.0E-4,
                "status": "FAILED",
                "statusInfo": {
                "label": null,
                "dataRows": null,
                "numOfTokens": null,
                "currStep": null,
                "totalTrainSteps": null,
                "currEpoch": null,
                "totalTrainEpochs": null,
                "estimatedTime": null,
                "trainLoss": null,
                "sendWeightSuccess": null,
                "failureReason": "resource.timeout"
                },
                "createdClientType": "WEB",
                "createdDate": "2023-08-20T20:23:08+0900",
                "updatedDate": "2023-08-21T10:31:40+0900"
                },
                {
                    "id": "oi55o2ej",
                    "name": "230709-202307",
                    "model": "HCX-002",
                    "method": "LoRA",
                    "taskType": "GENERATION",
                    "trainEpochs": 4,
                    "learningRate": 1.0E-4,
                    "status": "FAILED",
                    "statusInfo": {
                    22
                    "label": null,
                    "dataRows": null,
                    "numOfTokens": null,
                    "currStep": null,
                    "totalTrainSteps": null,
                    "currEpoch": null,
                    "totalTrainEpochs": null,
                    "estimatedTime": null,
                    "trainLoss": null,
                    "sendWeightSuccess": null,
                    "failureReason": "resource.timeout",
                    "message": null
                    },
                    "createdClientType": "WEB",
                    "createdDate": "2023-08-21T20:23:08+0900",
                    "updatedDate": "2023-08-22T10:31:40+0900"
                }
            ]
        }
    }
    

    실패

    호출이 실패한 경우의 구문 예시는 다음과 같습니다.