> 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/deployment/ko/roboflow-cloud/batch-processing/troubleshooting.md).

# 문제 해결

이 페이지에는 배치 처리의 알려진 문제, 제한 사항 및 해결 방법이 나와 있습니다. 여기에 나열되지 않은 문제가 발생하면, 다음을 통해 신고해 주세요 [지원 채널](https://github.com/roboflow/inference/issues).

## 알려진 제한 사항

* 환경 변수와 로컬 스토리지에 대한 액세스가 필요한 일부 Workflow 블록(예: File Sink 및 Environment Secret Store)은 차단되며 실행되지 않습니다.
* 이 서비스는 다음을 정의하는 Workflow에서만 작동합니다 **단일** 입력 이미지 파라미터.

## 기술 세부 정보

* 데이터는 Data Staging에 다음 만료 기간과 함께 저장됩니다 **7일 만료**.
* 각 배치 처리 작업에는 여러 단계가 포함됩니다(일반적으로 `처리` 및 `내보내기`). 각 단계는 출력 배치를 생성합니다. 다음을 사용하는 것을 권장합니다 `내보내기` 단계 출력은 효율적인 전송을 위해 압축되므로.
* 실행 중인 작업은 `처리` 단계에서는 UI와 CLI 모두를 사용해 중단할 수 있습니다.
* 중단되었거나 실패한 작업은 다시 시작할 수 있습니다.
* 서비스는 데이터를 자동으로 샤딩하고 병렬로 처리합니다:
  * 머신 수는 데이터 볼륨에 따라 자동으로 확장됩니다(일부 워크로드에서는 처리량이 시간당 50만\~100만 이미지에 이를 수 있습니다).
  * 각 머신은 데이터 청크를 처리하는 여러 워커를 실행합니다. 이는 구성 가능하며 속도와 비용의 균형을 맞추도록 조정해야 합니다.
* 이미지 작업의 경우, 단일 샤드에서 너무 많은 이미지가 실패하면 해당 샤드는 중단되고 나머지 작업은 계속 진행됩니다. 이 임계값은 작업별로 구성할 수 있습니다(아래의 [샤드별 이미지 실패 허용치](#per-shard-image-failure-tolerance) 참조).

## 작업 시간 초과

### 문제

배치 작업은 다음의 경우 조기에 종료됩니다 **처리 시간 초과 시간** 가 작업의 크기나 복잡성에 비해 너무 낮게 설정되면.

<figure><img src="https://media.roboflow.com/inference/batch-processing/batch-processing-timeout.png" alt=""><figcaption><p>UI의 처리 시간 초과 설정</p></figcaption></figure>

### 세부 사항

시간 초과 설정(UI) 또는 `--max-runtime-seconds` (CLI)는 다음을 정의합니다 **모든 병렬 워커에 걸친 최대 누적 머신 실행 시간**.

* **총 컴퓨팅 시간:** 제한 시간이 2시간이고 작업이 2대의 머신을 생성하면 각 머신은 최대 1시간 동안 실행될 수 있습니다(2대 x 1시간 = 총 2시간).
* **청크별 분할:** 작업은 병렬 처리를 위해 처리 청크로 나뉩니다. 시간 초과는 청크에 분배되므로, 청크가 많은데 시간 초과가 짧으면 청크당 시간이 너무 부족할 수 있습니다.
* **머신 유형이 중요합니다:** 복잡한 Workflow를 CPU에서 실행하면 처리 시간이 크게 늘어납니다. 적절한 경우 GPU를 사용하세요.

### 권장 사항

* 대규모 데이터셋이나 다단계 Workflow의 경우 넉넉한 시간 초과(예: 4\~6시간)로 시작하세요.
* 향후 시간 초과 설정에 반영할 수 있도록 실제 작업 실행 시간을 모니터링하세요.
* 더 빠른 처리를 위해 청크 수를 줄이거나 비디오 프레임 부분 샘플링을 사용하는 것을 고려하세요.

## SAHI를 사용하는 Workflow 실행 시간이 너무 김

### 문제

SAHI를 사용하는 작업은, 특히 고해상도 입력과 인스턴스 세분화를 사용할 때, 예상보다 훨씬 오래 걸릴 수 있습니다.

### 원인 및 권장 사항

**과도한 슬라이스 수:** SAHI는 감지를 위해 이미지를 더 작은 슬라이스로 나눕니다. 기본 설정과 고해상도 입력에서는 이미지당 수십 또는 수백 번의 추론이 발생할 수 있습니다.

* Image Slicer 블록 구성을 확인하세요. Workflow 앞부분의 Resize Image 블록을 사용해 슬라이스 수를 줄이거나 입력을 축소하세요.

**SAHI 대신 더 큰 모델 입력 크기를 고려하세요:** 더 큰 입력 차원으로 모델을 학습하면 SAHI가 전혀 필요 없어질 수 있습니다. 먼저 작은 샘플로 테스트하세요.

**인스턴스 세분화 병목:** SAHI를 인스턴스 세분화와 함께 사용하면 Detections Stitch 블록(특히 NMS 사용 시)이 주요 병목이 될 수 있습니다. 단일 프레임을 스티칭하는 데 수십 초가 걸릴 수 있습니다.

**SAHI가 포함된 비디오 작업:** FPS 부분 샘플링으로 프레임을 건너뛰세요:

* UI에서는 **비디오 FPS 부분 샘플링** 드롭다운을 사용하세요.
* CLI에서는 `--max-video-fps` 플래그를 사용하세요.

<figure><img src="https://media.roboflow.com/inference/batch-processing/limiting-video-fps.png" alt=""><figcaption><p>UI의 FPS 부분 샘플링 설정</p></figcaption></figure>

## 메모리 부족(OOM) 오류

### 문제

Workflow가 사용 가능한 RAM 또는 VRAM보다 더 많이 소비하면 OOM 오류로 인해 작업이 실패합니다.

### 일반적인 원인

* **SAHI + 인스턴스 세분화:** 이 조합은 메모리를 매우 많이 사용합니다. SAHI는 추론 호출 수를 늘리고, 인스턴스 세분화는 큰 출력(마스크, 점수)을 생성하므로 종종 충돌로 이어집니다.
* **머신당 워커 수가 너무 많음:** 여러 워커는 경량 Workflow의 비용과 속도를 최적화하지만, 무거운 Workflow(대형 모델 여러 개, 복잡한 후처리)는 사용 가능한 메모리를 초과하게 됩니다.

### 권장 사항

* 대형 모델, SAHI 또는 고해상도 입력을 사용하는 Workflow에는 머신당 워커 수를 더 적게(예: 1개 또는 2개) 사용하세요.
* 다음을 낮추세요 **머신당 워커 수** 고급 옵션의 값을.
* 모델에 더 높은 메모리 처리량이 필요하면 CPU 대신 GPU로 전환하세요.
* 대규모 배치를 실행하기 전에 작은 데이터셋으로 Workflow를 테스트하세요.
* 입력 해상도를 낮추거나 불필요한 블록을 제거해 Workflow를 단순화하세요.

<figure><img src="https://media.roboflow.com/inference/batch-processing/workers-number-adjustment.png" alt=""><figcaption><p>UI의 머신당 워커 수 설정</p></figcaption></figure>

## 샤드별 이미지 실패 허용치

### 작동 방식

이미지 배치 작업은 병렬로 실행되는 샤드로 분할됩니다. 각 샤드는 처리 중 실패한 이미지 수를 추적합니다. 단일 샤드 내 실패율이 임계값을 초과하면 해당 샤드는 중단됩니다. 작업의 나머지는 영향을 받지 않고 계속 진행됩니다.

기본적으로 플랫폼은 고정된 실패 임계값을 적용합니다. 다음을 설정하여 작업별로 이를 재정의할 수 있습니다 `maxImageFailureRate` 작업 생성 요청 본문에. 값은 다음 사이의 부동소수점 숫자입니다 `0.0` 및 `1.0`:

* `0.0` 은 무허용을 의미합니다(첫 실패 시 샤드를 중단).
* `1.0` 은 이미지가 몇 개 실패하더라도 샤드가 절대 중단되지 않음을 의미합니다.
* 필드를 생략하거나 다음으로 설정하세요 `null` 플랫폼 기본값을 사용하려면.

이 매개변수는 이미지 작업에만 적용됩니다. 비디오 작업은 지원하지 않습니다.

### API를 통한 설정

포함하세요 `maxImageFailureRate` 작업 생성 페이로드에:

```json
{
  "type": "simple-image-processing-v1",
  "maxImageFailureRate": 0.1,
  ...
}
```

실패했거나 중단된 작업을 다시 시작할 때 재시작 매개변수 오버라이드에 포함하면 이 값도 재정의할 수 있습니다.
