> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/models/ko/model-ids.md).

# 모델 ID

학습된 모든 모델에는 배포하거나, 추론을 실행하거나, Workflow 모델 블록에서 선택할 때 이를 식별하는 모델 ID가 있습니다. 이 페이지에서는 모델 ID의 현재 구조와, 이전(레거시) ID 형식이 일부 상황에서 여전히 지원되는 방식에 대해 설명합니다.

## 모델 ID 구조

모델 ID의 형식은 `{workspace}/{model-slug}`입니다. 첫 번째 부분은 워크스페이스 URL 슬러그입니다. 두 번째 부분인 모델 슬러그는 워크스페이스 내에서 모델을 식별하며, 하이픈으로 연결된 네 부분으로 구성됩니다:

```
{project}-{version}-{architecture}-t{n}
```

* `프로젝트`: 모델이 속한 프로젝트의 URL 슬러그입니다. 예: `construction-safety-xpv3w`.
* `버전`: 모델이 학습된 데이터셋 버전 번호입니다. 예: `12`.
* `아키텍처`: 학습에 사용된 모델 아키텍처입니다. 예: `rfdetr-small`.
* `t{n}`: 해당 버전의 학습 카운터입니다. 버전에서 시작된 첫 번째 학습은 t1, 두 번째는 t2이며, 이런 식으로 이어집니다.

예를 들어, URL 슬러그가 `construction-safety-xpv3w` 인 워크스페이스의 프로젝트에서 버전 3에 대해 두 번째로 진행한 RF-DETR Small 학습은 `my-workspace` 라는 모델 ID를 생성합니다 `my-workspace/construction-safety-xpv3w-3-rfdetr-small-t2`.

모델 슬러그는 학습이 시작될 때 할당되므로, 모델이 아직 학습 중일 때도 어떤 ID를 갖게 될지 확인할 수 있습니다. 학습 카운터 접미사는 절대 재사용되지 않습니다. 학습이 실패하거나 취소되면 해당 번호는 건너뛰고, 그 버전의 다음 학습은 그다음 번호를 받습니다.

하나의 [신경망 아키텍처 탐색](/models/ko/train/neural-architecture-search.md) 학습은 여러 후보 모델을 생성합니다. NAS 후보 모델 ID는 다른 모델 ID와 비슷하지만, 끝에 두 개의 하이픈과 6자 해시가 추가됩니다(예: `my-workspace/construction-safety-xpv3w-3-rfdetr-nas-t1--9589f2`). v2 trainings 엔드포인트에서 NAS 학습은 `modelType` 를 `rfdetr-nas-parent`로 보고하며, 각 후보 모델은 `rfdetr-nas`.

## 모델 ID 찾기

웹 UI, REST API, 또는 Roboflow MCP Server를 통해 학습된 모든 모델의 ID를 확인할 수 있습니다.

{% tabs %}
{% tab title="웹 UI" %}
프로젝트 사이드바에서 "Models"를 클릭하여 [Models 페이지](/models/ko/evaluate/view-trained-models.md)를 엽니다. 각 모델은 "ID:" 레이블 옆에 ID가 표시되며, 옆에는 "Copy Model ID" 버튼이 있습니다. 동일한 ID와 복사 버튼은 모델의 상세 보기와 각 버전 페이지의 모델 표에도 표시됩니다.
{% endtab %}

{% tab title="REST API" %}
프로젝트 모델 목록 조회 [엔드포인트는 프로젝트에서 학습된 모든 모델을 반환합니다. 응답의 각 항목에 있는](https://docs.roboflow.com/platform/workspaces/list-workspaces-and-projects#list-project-models) 는 `url` 필드가 모델 ID입니다:

```
GET https://api.roboflow.com/{workspace}/{project}/models?api_key=YOUR_API_KEY
```

```json
[
  {
    "url": "my-workspace/construction-safety-xpv3w-3-rfdetr-small-t2",
    "version": "3",
    "modelType": "rfdetr-small",
    "train": { "status": "finished" },
    ...
  },
  ...
]
```

특정 버전에서 학습된 모델을 찾으려면 v2 trainings 엔드포인트를 사용하세요. 버전의 trainings를 나열하면 각 학습이 반환되며, 그 학습이 생성한 모델의 ID는 해당 학습의 `modelIds` 필드에 포함됩니다. 레거시 단일 모델 버전의 경우, 학습 `id` 는 다음 형식의 경로입니다 `{workspaceId}/{version}/training/0` (아래에 표시된 해시가 아니라)이며, 대신 버전의 `modelIds` 레거시 ID [를 포함합니다:](#legacy-model-ids) GET <https://api.roboflow.com/{workspace}/{project}/{version}/v2/trainings?api\\_key=YOUR\\_API\\_KEY>

```
"trainings": [
```

```json
{
  "id": "0a1b2c3d4e5f67890abc",
    {
      "versionId": "3",
      "status": "finished",
      "modelIds": ["my-workspace/construction-safety-xpv3w-3-rfdetr-small-t2"],
      "modelType": "rfdetr-small",
      단일 학습을 가져오면 각 모델의 ID를 포함해 모델별 세부 정보가 반환되며, 그 ID는
      ...
    },
    ...
  ]
}
```

모델Id `필드에 있습니다.` 의 `models` 목록에 포함됩니다. `trainingId` 를 생략할 수 있습니다. 다만 버전에 학습이 하나만 있을 때만 가능하며, 버전에 여러 학습이 있으면 이 요청은 409 오류로 실패합니다.

```
GET https://api.roboflow.com/{workspace}/{project}/{version}/v2/trainings/get?api_key=YOUR_API_KEY&trainingId={trainingId}
```

```json
{
  "trainingId": "0a1b2c3d4e5f67890abc",
  "status": "finished",
  "modelIds": ["my-workspace/construction-safety-xpv3w-3-rfdetr-small-t2"],
  "modelType": "rfdetr-small",
  "modelCount": 1,
  "models": [
    {
      "modelId": "my-workspace/construction-safety-xpv3w-3-rfdetr-small-t2",
      "modelType": "rfdetr-small",
      "modelIds": ["my-workspace/construction-safety-xpv3w-3-rfdetr-small-t2"],
      "metrics": { ... }
    }
  ],
  ...
}
```

{% endtab %}

{% tab title="MCP" %}
프로젝트 모델 목록 조회 [Roboflow MCP Server](https://docs.roboflow.com/agents/mcp-server) 는 모델 ID를 반환하는 도구를 제공합니다. `models_list` 는 하나의 프로젝트에서 학습된 모델을 나열합니다(워크스페이스는 연결 자격 증명에서 가져오며, 프로젝트는 `project_id`로 전달됩니다). 또한 각 모델의 ID를 해당 `url` 필드에 반환하며, 버전 또는 NAS 실행으로 선택적으로 필터링할 수 있습니다. `trainings_get` 및 `trainings_list` 는 각 학습이 생성한 모델의 ID를 반환합니다. 에이전트는 이 ID를 `models_infer`.
{% endtab %}
{% endtabs %}

## 레거시 모델 ID

과거에는 Roboflow 데이터셋 버전에 하나의 학습 실행만 있을 수 있었기 때문에, 모델은 다음 형식의 ID로 고유하게 결정되었습니다 `{project}/{version}`.

예를 들어, `construction-site-safety/3` 는 *해당 프로젝트의 버전 3에서 학습된* 모델을 가리켰습니다. 첫 번째 부분은 워크스페이스가 아니라 프로젝트 URL 슬러그이고, 두 번째 부분은 버전 번호입니다. 이는 이전 SDK, 코드 스니펫, Inference 설치에서 사용하는 형식입니다(예: `model_id="construction-site-safety/3"`).

이제 데이터셋 버전에서 [둘 이상의 학습](/models/ko/versions-trainings-and-models.md) 을 실행할 수 있게 되었기 때문에, 이러한 레거시 형식 ID는 더 이상 권장되지 않습니다. 2026년 6월 30일 이후에 시작된 새 학습에서 이러한 ID를 사용하려고 하면, 내부적으로는 새 스타일의 ID로 해석됩니다.

## 레거시 ID가 해석되는 방식

레거시 형식 ID는 별칭을 통해 계속 작동합니다. 버전에서 시작된 첫 번째 학습이 성공적으로 완료되면 Roboflow는 해당 버전의 레거시 `{project}/{version}` ID를 새 모델 ID에 연결합니다. 이전 Inference 설치에서의 가중치 다운로드를 포함해 레거시 ID를 사용하는 요청은 자동으로 해당 모델로 해석됩니다.

별칭은 오직 *첫 번째* 버전의 학습에서만 생성되며, 이후에는 변경되지 않습니다:

* 첫 번째 학습이 성공적으로 완료되면, 같은 버전에서 더 많은 모델을 학습하더라도 레거시 ID는 영구적으로 해당 모델을 가리킵니다. 이후 모델은 각자의 모델 ID로 참조하세요.
* 첫 번째 학습이 실패하거나 취소되면 별칭은 생성되지 않으며, 해당 버전의 이후 학습도 별칭을 생성하지 않습니다.

별칭이 없는 버전도 정확히 하나의 모델만 보유하고 있다면 여전히 레거시 ID로 참조할 수 있습니다. 여러 모델을 보유하고 있고 별칭이 없다면, 레거시 ID를 사용하는 요청은 참조가 모호하기 때문에 실패하며, 모델 고유의 ID를 사용해야 합니다.

{% hint style="info" %}
레거시 ID는 하위 호환성을 위해 존재합니다. 새 통합에서는 전체 모델 ID를 사용하는 것이 좋습니다. 전체 모델 ID는 모호하지 않으며 버전의 모든 모델에서 작동합니다.
{% endhint %}
