> 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/roboflow/roboflow-ko/workflows/deploy-a-workflow.md).

# Workflow 배포

Workflow를 네 가지 방법으로 배포할 수 있습니다:

1. 이미지를 다음으로 보내세요: [Roboflow API](https://inference.roboflow.com/workflows/modes_of_running/#http-api-request) Workflow를 사용하여 처리합니다.
2. 다음을 생성하세요: [Roboflow Dedicated Deployment](/roboflow/roboflow-ko/deploy/dedicated-deployments.md) 전용으로 제공되는 인프라에서.
3. 다음 기능을 사용하여 자신의 하드웨어에서 Workflow를 실행하세요: [Roboflow Inference](https://inference.roboflow.com/install/).
4. 다음을 사용하세요: [Batch Processing](/roboflow/roboflow-ko/deploy/batch-processing.md) 대량의 데이터를 코드 작성 없이 비용 효율적으로 처리합니다.

자신의 하드웨어에서 Workflow를 실행하는 경우, 일반적인 다음의 스트림을 포함해 이미지와 비디오 파일 모두에서 실행할 수 있습니다: **웹캠** 및 전문 **CCTV 카메라**).

온프레미스 배포를 선택하면 Inference를 배포할 수 있는 모든 시스템에서 Workflows를 실행할 수 있습니다. 여기에는 다음이 포함됩니다:

* NVIDIA Jetson
* AWS EC2, GCP Cloud Engine, Azure Virtual Machines
* Raspberry Pi

{% hint style="info" %}
Roboflow Enterprise 고객은 Basler 카메라에서 inference를 실행하는 것과 같은 추가 비디오 스트림 옵션을 이용할 수 있습니다. 제공 항목에 대해 자세히 알아보려면, [Roboflow 영업팀에 문의하세요](https://roboflow.com/sales).
{% endhint %}

### Workflow 배포

workflow를 배포하려면 Workflows editor 왼쪽 상단의 "Deploy" 버튼을 클릭하세요. 모든 배포 옵션은 이 페이지에 문서화되어 있습니다.

Workflows editor의 코드 스니펫에는 Workflows URL과 API key가 미리 입력됩니다.

{% hint style="info" %}
Workflows 사용 한도에 대해 자세히 알아보려면 다음을 참조하세요: [Roboflow pricing page](https://roboflow.com/workflows).
{% endhint %}

#### 이미지 처리

Roboflow API 또는 로컬 Inference server를 사용하여 단일 이미지에서 Workflow를 실행할 수 있습니다.

먼저 Roboflow Inference SDK를 설치하세요:

```python
pip install inference-sdk inference-cli 
```

로컬에서 실행하려면 다음을 따르세요: [공식 Docker 설치 안내](https://docs.docker.com/get-docker/) 기기에서 Docker를 설치하고 Inference server를 시작하세요:

```
inference server start
```

그런 다음 새 Python 파일을 만들고 다음 코드를 추가하세요:

```python
from inference_sdk import InferenceHTTPClient

client = InferenceHTTPClient(
    api_url="https://serverless.roboflow.com",  # 또는 로컬 배포용 "http://127.0.0.1:9001"
    api_key="API_KEY"
)

result = client.run_workflow(
    workspace_name="workspace-name",
    workflow_id="workflow-id",
    images={
        "image": "YOUR_IMAGE.jpg"
    }
)

```

위에서 다음을 바꾸세요: `API_KEY` 를 Roboflow API key로 바꾸세요. 다음을 바꾸세요: `workspace-name` 및 `workflow-id` Roboflow workspace 이름과 Workflow ID로 바꾸세요.

이 값들을 찾으려면 Roboflow Workflow를 열고 "Deploy Workflow"를 클릭하세요. 그런 다음 페이지에 표시되는 코드 스니펫에서 workspace 이름과 workflow ID를 복사하세요.

로컬 실행은 CPU와 NVIDIA CUDA GPU 장치에서 동작합니다. 최상의 성능을 위해서는 NVIDIA Jetson 또는 NVIDIA GPU가 있는 클라우드 서버 같은 GPU 지원 장치에 배포하세요.

#### 비디오 스트림 처리(RTSP, 웹캠)

비디오 스트림의 프레임에서 Workflow를 배포할 수 있습니다. 이는 웹캠이나 RTSP 스트림일 수 있습니다. 또한 비디오 파일에서도 Workflow를 실행할 수 있습니다.

먼저 Inference를 설치하세요:

```
pip install inference  # 또는 GPU 머신에서는 inference-gpu
```

Inference 설치에 몇 분이 걸릴 수 있습니다.

그런 다음 새 Python 파일을 만들고 다음 코드를 추가하세요:

```python
# InferencePipeline 객체 가져오기
from inference import InferencePipeline

def my_sink(result, video_frame):
    print(result) # 각 프레임의 예측으로 원하는 작업을 수행하세요
    

# pipeline 객체 초기화
pipeline = InferencePipeline.init_with_workflow(
    api_key="API_KEY",
    workspace_name="workspace-name",
    workflow_id="workflow-id",
    video_reference=0, # 비디오 경로, RTSP 스트림, 장치 ID(int, 일반적으로 내장 웹캠은 0), 또는 RTSP 스트림 URL
    on_prediction=my_sink
)
pipeline.start() # pipeline 시작
pipeline.join() # pipeline 스레드가 끝날 때까지 대기

```

위에서 다음을 바꾸세요: `API_KEY` 를 Roboflow API key로 바꾸세요. 다음을 바꾸세요: `workspace-name` 및 `workflow-id` Roboflow workspace 이름과 Workflow ID로 바꾸세요.

이 값들을 찾으려면 Roboflow Workflow를 열고 "Deploy Workflow"를 클릭하세요. 그런 다음 페이지에 표시되는 코드 스니펫에서 workspace 이름과 workflow ID를 복사하세요.

위 코드를 실행하면 Workflow가 비디오 또는 비디오 스트림에서 실행됩니다.

#### 데이터 배치 처리

Roboflow Batch Processing 서비스를 사용하면 이미지 및 비디오 파일 디렉터리로 이루어진 전체 데이터 배치를 효율적으로 처리할 수 있습니다. 이 완전 관리형 솔루션은 코딩이나 로컬 연산이 필요하지 않습니다. 데이터와 Workflow를 선택하기만 하면 나머지는 Roboflow가 처리합니다.

Batch Processing과의 UI, CLI, REST API 상호작용을 모두 지원합니다. 아래에서는 CLI 명령을 소개합니다. 다음을 확인하세요: [모든 옵션](https://inference.roboflow.com/workflows/batch_processing/about/#cli).

처리를 실행하려면 Inference CLI를 설치하세요:

```
pip install inference-cli
```

그런 다음 데이터를 수집할 수 있습니다:

```
inference rf-cloud data-staging create-batch-of-images \\
    --images-dir <your-images-dir-path> \\
    --batch-id <your-batch-id>
```

데이터가 로드되면 처리 작업을 시작하세요:

```
inference rf-cloud batch-processing process-images-with-workflow \\
    --workflow-id <workflow-id> \\
    --batch-id <batch-id>
```

작업 진행 상황은 다음 명령으로 표시할 수 있습니다:

```
inference rf-cloud batch-processing show-job-details \\
    --job-id <your-job-id>  # 작업을 생성하면 job-id가 표시됩니다
```

작업이 완료되면 결과를 내보내세요:

```
inference rf-cloud data-staging export-batch \\
    --target-dir <dir-to-export-result> \\
    --batch-id <output-batch-of-a-job>
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.roboflow.com/roboflow/roboflow-ko/workflows/deploy-a-workflow.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
