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

# एक Workflow deploy करें

आप Workflow को चार तरीकों से deploy कर सकते हैं:

1. छवियाँ भेजें [Roboflow API](https://inference.roboflow.com/workflows/modes_of_running/#http-api-request) अपने Workflow का उपयोग करके प्रोसेसिंग के लिए।
2. एक बनाएं [Roboflow Dedicated Deployment](/roboflow/roboflow-hi/deploy/dedicated-deployments.md) आपके उपयोग के लिए विशेष रूप से provision की गई infrastructure पर।
3. अपने स्वयं के hardware पर अपना Workflow चलाने के लिए [Roboflow Inference](https://inference.roboflow.com/install/).
4. का उपयोग करें [Batch Processing](/roboflow/roboflow-hi/deploy/batch-processing.md) बड़ी मात्रा में डेटा को बिना कोड लिखे, किफ़ायती तरीके से प्रोसेस करने के लिए।

यदि आप अपना Workflow अपने स्वयं के hardware पर चलाते हैं, तो आप इसे images और video files दोनों पर चला सकते हैं (जिसमें नियमित **वेबकैम** और पेशेवर **CCTV कैमरे**).

ऑन-प्रिमाइसेस deployment चुनकर, आप किसी भी system पर Workflows चला सकते हैं जहाँ आप Inference deploy कर सकते हैं। इसमें शामिल हैं:

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

{% hint style="info" %}
Roboflow Enterprise ग्राहकों को अतिरिक्त video stream options तक पहुंच मिलती है, जैसे Basler cameras पर inference चलाना। हमारी offerings के बारे में अधिक जानने के लिए, [Roboflow sales team से संपर्क करें](https://roboflow.com/sales).
{% endhint %}

### Deploy a Workflow

एक workflow deploy करने के लिए, Workflows editor के ऊपर बाएँ कोने में "Deploy" button पर click करें। सभी deployment options इस page पर documented हैं।

आपके Workflows editor में code snippets आपके Workflows URL और API key से पहले से भर दिए जाएंगे।

{% hint style="info" %}
Workflows के लिए usage limits के बारे में अधिक जानने के लिए, देखें [Roboflow pricing page](https://roboflow.com/workflows).
{% endhint %}

#### Images Process करें

आप Roboflow API या local Inference server का उपयोग करके single images पर अपना Workflow चला सकते हैं।

सबसे पहले, Roboflow Inference SDK install करें:

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

यदि आप locally चलाते हैं, तो [official Docker installation instructions](https://docs.docker.com/get-docker/) का पालन करें ताकि अपनी machine पर Docker install कर सकें और Inference server शुरू कर सकें:

```
inference server start
```

फिर, एक नई Python file बनाएं और निम्न code जोड़ें:

```python
from inference_sdk import InferenceHTTPClient

client = InferenceHTTPClient(
    api_url="https://serverless.roboflow.com",  # या local deployment के लिए "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 name और Workflow IDs से बदलें।

इन मानों को खोजने के लिए, अपना Roboflow Workflow खोलें और "Deploy Workflow" पर click करें। फिर, page पर दिखाई देने वाले code snippet से अपना workspace name और workflow ID copy करें।

Local execution CPU और NVIDIA CUDA GPU devices पर काम करती है। सर्वोत्तम performance के लिए, NVIDIA Jetson जैसे GPU-enabled device या NVIDIA GPU वाले cloud server पर deploy करें।

#### वीडियो स्ट्रीम प्रोसेस करें (RTSP, Webcam)

आप अपने Workflow को video stream के frames पर deploy कर सकते हैं। यह एक webcam या RTSP stream हो सकता है। आप अपने Workflow को video files पर भी चला सकते हैं।

सबसे पहले, Inference install करें:

```
pip install inference  # या GPU machines के लिए inference-gpu
```

Inference को install होने में कुछ मिनट लग सकते हैं।

फिर, एक नई Python file बनाएं और निम्न code जोड़ें:

```python
# InferencePipeline object import करें
from inference import InferencePipeline

def my_sink(result, video_frame):
    print(result) # प्रत्येक frame की predictions के साथ कुछ करें
    

# एक pipeline object initialize करें
pipeline = InferencePipeline.init_with_workflow(
    api_key="API_KEY",
    workspace_name="workspace-name",
    workflow_id="workflow-id",
    video_reference=0, # video का path, RSTP stream, device id (int, आमतौर पर built-in webcams के लिए 0), या RTSP stream url
    on_prediction=my_sink
)
pipeline.start() # pipeline शुरू करें
pipeline.join() # pipeline thread के समाप्त होने की प्रतीक्षा करें

```

ऊपर, बदलें `API_KEY` को अपने Roboflow API key से बदलें। बदलें `workspace-name` और `workflow-id` को अपने Roboflow workspace name और Workflow IDs से बदलें।

इन मानों को खोजने के लिए, अपना Roboflow Workflow खोलें और "Deploy Workflow" पर click करें। फिर, page पर दिखाई देने वाले code snippet से अपना workspace name और workflow ID copy करें।

जब आप ऊपर दिया गया code चलाते हैं, आपका Workflow आपके video या video stream पर चलेगा।

#### डेटा के batches प्रोसेस करें

आप Roboflow Batch Processing service का उपयोग करके डेटा के पूरे batches—images और video files की directories—को कुशलतापूर्वक प्रोसेस कर सकते हैं। इस पूरी तरह managed solution में किसी coding या local computation की आवश्यकता नहीं होती। बस अपना data और Workflow चुनें, और बाकी Roboflow पर छोड़ दें।

हम Batch Processing के साथ UI, CLI और REST API interactions दोनों का समर्थन करते हैं। नीचे, हम CLI commands प्रस्तुत करते हैं। खोजें [सभी विकल्प](https://inference.roboflow.com/workflows/batch_processing/about/#cli).

processing चलाने के लिए, Inference CLI install करें:

```
pip install inference-cli
```

फिर आप अपना data ingest कर सकते हैं:

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

जब data लोड हो जाए, processing job शुरू करें:

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

job की progress इस प्रकार प्रदर्शित की जा सकती है:

```
inference rf-cloud batch-processing show-job-details \
    --job-id <your-job-id>  # job-id तब प्रदर्शित होगा जब आप job बनाते हैं
```

और जब job पूरा हो जाए, results export करें:

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