Skip to content

3단계 - 라벨링 설정

Raw

프로젝트에서 사용할 라벨링 유형을 선택하고, 분류 클래스 및 속성을 설정하는 단계입니다.

라벨링 유형은 라벨링 방법을 지칭하며, 단독 또는 복합으로 선택하여 라벨링 작업을 진행할 수 있습니다.

어노테이터별 라벨링 유형 목록

Section titled “어노테이터별 라벨링 유형 목록”

각 어노테이터 카테고리별로 사용 가능한 라벨링 유형(API 값)은 다음과 같습니다.

어노테이터사용 가능한 라벨링 유형
이미지annotationGroup, classification, bounding_box, polygon, polyline, keypoint, relation, segmentation
비디오annotationGroup, classification, segmentation, bounding_box
오디오annotationGroup, classification, segmentation
PCD3d_bounding_box, 3d_segmentation
텍스트classification, relation, named_entity
프롬프트classification, prompt, answer

프롬프트 어노테이터 추가 설정

Section titled “프롬프트 어노테이터 추가 설정”

프롬프트 어노테이터를 선택한 경우, LLM(대형 언어모델) 관련 추가 설정이 제공됩니다.

항목설명
LLM API 활성화대형 언어모델 API 사용 여부
LLM 모델 추가Gemini, Mistral, ChatGPT 등 모델 선택
사전 맥락 프롬프트LLM에 제공할 사전 컨텍스트 설정
메타정보 토픽 키메타 데이터에서 토픽으로 사용할 키 입력

클래스는 라벨링할 대상을 카테고리화하는 개념입니다. 선택한 각 라벨링 유형별로 클래스를 정의합니다.

항목설명비고
색상어노테이터에서 표시할 색상시각적 구분용
코드데이터베이스 저장용 명칭영문/숫자만 가능, 변경 불가
이름어노테이터에 노출할 이름작업자에게 표시
기본 여부자동 선택 설정기본 클래스 지정

각 클래스에 대해 속성을 추가하여 라벨링 시 추가 정보를 입력받을 수 있습니다.

항목설명
코드속성 식별용 코드
이름작업자에게 표시할 속성명
필수 여부라벨링 시 필수 입력 여부
위젯 유형입력 방식 선택
위젯설명
단일 선택 (Select box)드롭다운에서 하나 선택
단일 선택 (Radio)라디오 버튼으로 하나 선택
다중 선택여러 개 동시 선택 가능
텍스트자유 텍스트 입력

단일 선택 및 다중 선택 위젯에는 옵션(선택지)을 추가합니다.

항목설명
색상옵션 표시 색상
코드옵션 식별용 코드
이름작업자에게 표시할 옵션명
기본 여부자동 선택 설정
자동차 (클래스)
└── 종류 (속성)
    ├── 승용차 (옵션)
    ├── 승합차 (옵션)
    └── 화물차 (옵션)

어노테이션의 색상, 모양, 라벨 표시 기준이 되는 속성을 대표 속성으로 설정할 수 있습니다.

“다음 단계” 클릭 시 라벨링 설정 데이터를 configuration 객체로 변환하여 서버에 전송합니다.

1. 사용 가능한 라벨링 유형 조회 — GET /projects/categories/

Section titled “1. 사용 가능한 라벨링 유형 조회 — GET /projects/categories/”

페이지 진입 시 어노테이터 카테고리별 사용 가능한 라벨링 유형 목록을 조회합니다.

Request

GET /projects/categories/

Response (200 OK)

{
  "image": {
    "annotation_types": [
      {
        "name": "bounding_box",
        "name_display": "바운딩박스",
        "smart_tools": [...]
      },
      {
        "name": "polygon",
        "name_display": "폴리곤",
        "smart_tools": []
      }
    ]
  },
  "video": { ... },
  "audio": { ... }
}

2. 단계별 데이터 검증 — POST /projects/

Section titled “2. 단계별 데이터 검증 — POST /projects/”

“다음 단계” 클릭 시 라벨링 설정을 phase: 3과 함께 configuration 객체로 전송합니다.

Request

POST /projects/

{
  "phase": 3,
  "configuration": {
    "schema_type": "dm_schema",
    "classification": {
      "bounding_box": {
        "id": "uuid-1234",
        "representativeCodes": ["class"],
        "classification_schema": [
          {
            "id": "cls-001",
            "code": "car",
            "name": "자동차",
            "value": "#FF0000",
            "is_default": true,
            "customFields": {},
            "attributes": [
              {
                "code": "vehicle_type",
                "name": "종류",
                "widget": "select",
                "is_required": true,
                "options": [
                  {
                    "code": "sedan",
                    "name": "승용차",
                    "color": "#FF6B6B",
                    "is_default": true,
                    "customFields": {}
                  },
                  {
                    "code": "suv",
                    "name": "SUV",
                    "color": "#4ECDC4",
                    "is_default": false,
                    "customFields": {}
                  }
                ]
              }
            ]
          }
        ]
      },
      "classification": {
        "id": "uuid-5678",
        "representativeCodes": [],
        "classification_schema": [...]
      }
    }
  }
}
필드타입설명
schema_typestring스키마 유형. "dm_schema" 또는 "json_schema"
classificationobject라벨링 유형별 분류 설정. 키는 라벨링 유형 코드

classification 항목 구조 (라벨링 유형별)

Section titled “classification 항목 구조 (라벨링 유형별)”
필드타입설명
idstring고유 식별자 (UUID)
representativeCodesstring[]대표 속성 코드 목록
classification_schemaarray클래스 목록
필드타입필수설명
idstring필수클래스 고유 식별자
codestring필수클래스 코드 (영문/숫자, 변경 불가)
namestring필수클래스 표시명
valuestring필수클래스 색상 (HEX)
is_defaultboolean필수기본 클래스 여부
customFieldsobject선택커스텀 필드 (shape 등)
attributesarray필수속성 목록
필드타입필수설명
codestring필수속성 코드
namestring필수속성 표시명
widgetstring필수위젯 유형. "select" | "radio" | "multi_select" | "text"
is_requiredboolean필수필수 입력 여부
optionsarray필수옵션 목록 (text 위젯의 경우 빈 배열)
필드타입필수설명
codestring필수옵션 코드
namestring필수옵션 표시명
colorstring필수옵션 색상 (HEX)
is_defaultboolean필수기본 선택 여부
customFieldsobject선택커스텀 필드

프롬프트 어노테이터 추가 필드

Section titled “프롬프트 어노테이터 추가 필드”

프롬프트 카테고리의 경우 configuration에 아래 필드가 추가됩니다.

필드타입설명
gptOptionsstring[]활성화할 LLM 옵션 목록
llmItemsarrayLLM 모델 설정 목록 (Gemini, Mistral, ChatGPT 등)
priorContextPromptstring사전 맥락 프롬프트
topicKeyInMetastring메타정보 토픽 키

Response (201 Created)

검증 성공 시 configuration 데이터가 반환됩니다.

Error Response (400 Bad Request)

{
  "configuration": ["유효하지 않은 설정입니다."]
}

검증 성공 후 이전 단계 데이터와 병합하여 Draft에 누적 저장합니다.

Request

POST /drafts/

{
  "target": "CREATE",
  "data": {
    "phase": 3,
    "category": "image",
    "title": "자동차 객체 검출 프로젝트",
    "access_level": "public",
    "data_collection": 1,
    "configuration": {
      "schema_type": "dm_schema",
      "classification": { ... }
    }
  }
}

라벨링 설정을 완료한 후 “다음 단계” 버튼을 클릭하면 위 API 흐름을 거쳐 작업 설정 단계로 이동합니다.